feat: add Vite host and Gitea CI for project57 embed
CI Pipeline / check-commit (push) Successful in 9s
CI Pipeline / build (push) Has been skipped
CI Pipeline / deploy-only (push) Has been skipped
CI Pipeline / deploy (push) Has been skipped

This commit is contained in:
mdszxy committed 2026-10-05 15:27:42 +08:00
commit 076e603c93
12 files changed
+901

No files matched your search

+66
View File
@@ -0,0 +1,66 @@
const A_ORIGIN = (import.meta.env.VITE_A_ORIGIN || "http://localhost:3000").replace(
/\/$/,
""
);
const errorEl = document.getElementById("aurora-error");
function showError(message: string) {
if (!errorEl) return;
errorEl.style.display = "block";
errorEl.textContent = message;
}
function loadScript(src: string): Promise<void> {
return new Promise((resolve, reject) => {
const script = document.createElement("script");
script.src = src;
script.async = true;
script.onload = () => resolve();
script.onerror = () => reject(new Error(`无法加载 ${src}`));
document.head.appendChild(script);
});
}
async function boot() {
try {
await loadScript(`${A_ORIGIN}/embed/aurora.js`);
} catch {
showError(
`无法加载 A 站脚本:${A_ORIGIN}/embed/aurora.js。请先在 project57 执行 pnpm build:embed 并启动 A 站,或修改 .env 中的 VITE_A_ORIGIN。`
);
return;
}
const api = window.AuroraSite;
if (!api?.mount) {
showError("A 站脚本已加载,但未找到 AuroraSite.mount。");
return;
}
api.mount("#aurora-root", {
assetBase: A_ORIGIN,
apiBase: A_ORIGIN,
cssUrl: `${A_ORIGIN}/embed/aurora.css`,
history: "hash",
});
}
boot();
declare global {
interface Window {
AuroraSite?: {
mount: (
target: string | Element,
options?: {
assetBase?: string;
apiBase?: string;
cssUrl?: string;
history?: "hash" | "browser";
basename?: string;
}
) => { unmount: () => void };
};
}
}