feat(chat): add local-first conversation workspace
This commit is contained in:
+2
-2
@@ -17,7 +17,7 @@
|
||||
<a class="brand" href="/">xiteng.site / account</a>
|
||||
<div class="nav-links">
|
||||
<a id="account-admin-link" href="/admin" hidden>系统管理</a>
|
||||
<a href="https://chat.xiteng.site">Chat</a>
|
||||
<a href="/chat/">Chat</a>
|
||||
<a href="/">公开主页</a>
|
||||
</div>
|
||||
</nav>
|
||||
@@ -80,7 +80,7 @@
|
||||
<div><p class="section-kicker">BUILT-IN + CUSTOM</p><h2>Provider Registry</h2></div>
|
||||
<button id="account-refresh" class="admin-action" type="button">刷新</button>
|
||||
</div>
|
||||
<div class="admin-notice">只需填写 URL 与 API Key 即可先行探测;测试不会保存 Provider 或凭据。Backend Key 保存到 Key Vault;Frontend Key 必须跳转到 Chat 后保存在 <code>chat.xiteng.site</code> 的浏览器存储中。</div>
|
||||
<div class="admin-notice">只需填写 URL 与 API Key 即可先行探测;测试不会保存 Provider 或凭据。Backend Key 保存到 Key Vault;Frontend Key 必须跳转到 Chat 后保存在 <code>xiteng.site/chat</code> 的浏览器存储中。</div>
|
||||
<form id="account-provider-form" class="admin-form provider-editor-form">
|
||||
<div class="provider-probe-fields">
|
||||
<label>Provider URL<input name="baseUrl" type="url" required placeholder="https://api.example.com/v1"></label>
|
||||
|
||||
+2
-2
@@ -485,7 +485,7 @@ function renderProvider(provider) {
|
||||
})));
|
||||
if (provider.connection.type === "frontend") {
|
||||
actions.append(actionButton(provider.auth.type === "none" ? "在 Chat 中配置端点" : "在 Chat 中配置本地 Key(需 CORS / Relay)", () => {
|
||||
window.location.href = `https://chat.xiteng.site/?configure=${encodeURIComponent(provider.id)}`;
|
||||
window.location.href = `/chat/?configure=${encodeURIComponent(provider.id)}`;
|
||||
}));
|
||||
}
|
||||
if (!provider.builtin) {
|
||||
@@ -712,7 +712,7 @@ document.getElementById("account-provider-form").addEventListener("submit", asyn
|
||||
});
|
||||
}
|
||||
} else if (connectionType === "frontend") {
|
||||
window.location.href = `https://chat.xiteng.site/?configure=${encodeURIComponent(providerId)}`;
|
||||
window.location.href = `/chat/?configure=${encodeURIComponent(providerId)}`;
|
||||
return;
|
||||
}
|
||||
await loadVault();
|
||||
|
||||
Reference in New Issue
Block a user