diff --git a/src/web/keys.tsx b/src/web/keys.tsx index 8f21577..355957a 100644 --- a/src/web/keys.tsx +++ b/src/web/keys.tsx @@ -2,6 +2,7 @@ import { useState, useEffect } from "react"; import { createRoot } from "react-dom/client"; import { renderNavbar } from "./navbar"; import { authClient } from "../lib/auth-client"; +import './lockdown' renderNavbar("usage"); @@ -21,9 +22,9 @@ function KeysList() { if (!r.ok) throw new Error(`HTTP ${r.status}`); return r.json(); }) - .then((data) => {setChannels(Array.isArray(data) ? data : []);setChannelsPending(false)}) + .then((data) => { setChannels(Array.isArray(data) ? data : []); setChannelsPending(false) }) .catch((e) => setError(String(e))); - fetch('api/api-keys').then((r) => r.json()).then((data) => {setKeys(Array.isArray(data) ? data : []);setKeysPending(false)}).catch((e) => setError(String(e))); + fetch('api/api-keys').then((r) => r.json()).then((data) => { setKeys(Array.isArray(data) ? data : []); setKeysPending(false) }).catch((e) => setError(String(e))); } }, [session?.user?.slackId]); @@ -65,12 +66,12 @@ function KeysList() { return (
- {error &&

Error: {error}

} + {error &&

Error: {error}

} {createdKey && ( -
+

Key created!

Copy this key now — it won't be shown again:

- {createdKey} + {createdKey}
)}
@@ -83,27 +84,40 @@ function KeysList() {
- +

your keys

- {keysPending ? "loading keys..." : null} - {keys.map((k) => ( -
-{k.name} ind_{k.keyPrefix}... {k.revokedBy && `Revoked by ${revokedBy}`} -
-))} + {(k.channels != null && k.channels.length > 0) ? ( + <> + scoped channels: ({k.channels.length}) +
    + {k.channels.map((c) => ( + +
  • {c}
  • + ) + + )} +
+ + ) : null} +
+ ))}
); @@ -111,7 +125,7 @@ function KeysList() { createRoot(document.getElementById("app")!).render(
-

indigestion api keys

+

integrate with indigest

for now, all keys are read-only