new tasks, devnet topup, cli, new model support
This commit is contained in:
@@ -297,6 +297,12 @@ async function revokeKey(key) {
|
||||
await renderAccountPanel();
|
||||
}
|
||||
|
||||
async function topupKey(key) {
|
||||
const r = await apiCall("/v1/account/topup", "POST", { api_key: key });
|
||||
if (!r.ok) alert(r.data.error || "top-up failed");
|
||||
await renderAccountPanel();
|
||||
}
|
||||
|
||||
async function renderAccountPanel() {
|
||||
const r = await apiCall("/v1/account");
|
||||
if (r.status === 404) { // accounts disabled on this tracker
|
||||
@@ -305,7 +311,7 @@ async function renderAccountPanel() {
|
||||
return;
|
||||
}
|
||||
if (!r.ok) { setSession(null); renderAuthForms(); return; }
|
||||
const { account, api_keys, balances, total_balance, usage } = r.data;
|
||||
const { account, api_keys, balances, total_balance, usage, topup_amount } = r.data;
|
||||
const who = account.email || account.wallet || account.account_id;
|
||||
let html =
|
||||
`<div><b>${esc(who)}</b> <span class="pill">${esc(account.role)}</span> ` +
|
||||
@@ -319,6 +325,9 @@ async function renderAccountPanel() {
|
||||
for (const key of api_keys) {
|
||||
html += `<div class="keybox">${esc(key)}` +
|
||||
` <span class="dim">(${usdt(balances[key] ?? 0)} USDT)</span>` +
|
||||
(topup_amount > 0
|
||||
? ` <button class="small" onclick="topupKey('${esc(key)}')">+${usdt(topup_amount)} (devnet)</button>`
|
||||
: "") +
|
||||
` <button class="small" onclick="revokeKey('${esc(key)}')">revoke</button></div>`;
|
||||
}
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user