From 5b1fd7e5397eb72a6f710a3d9c183f2c5dbf3562 Mon Sep 17 00:00:00 2001 From: Frank Date: Wed, 8 Oct 2025 18:59:41 -0400 Subject: wip: zen --- packages/console/app/src/context/auth.ts | 1 + packages/console/app/src/routes/workspace/[id].tsx | 4 +- .../app/src/routes/workspace/key-section.tsx | 5 -- .../app/src/routes/workspace/member-section.tsx | 88 +++++++++++----------- 4 files changed, 47 insertions(+), 51 deletions(-) (limited to 'packages/console/app') diff --git a/packages/console/app/src/context/auth.ts b/packages/console/app/src/context/auth.ts index 14f275565..c177049c3 100644 --- a/packages/console/app/src/context/auth.ts +++ b/packages/console/app/src/context/auth.ts @@ -74,6 +74,7 @@ export const getActor = async (workspace?: string): Promise => { userID: user.id, workspaceID: user.workspaceID, accountID: user.accountID, + role: user.role, }, } } diff --git a/packages/console/app/src/routes/workspace/[id].tsx b/packages/console/app/src/routes/workspace/[id].tsx index a44ddd927..15aeb57a0 100644 --- a/packages/console/app/src/routes/workspace/[id].tsx +++ b/packages/console/app/src/routes/workspace/[id].tsx @@ -48,10 +48,12 @@ export default function () {
+ + + - diff --git a/packages/console/app/src/routes/workspace/key-section.tsx b/packages/console/app/src/routes/workspace/key-section.tsx index 1c2316db7..3b7e399aa 100644 --- a/packages/console/app/src/routes/workspace/key-section.tsx +++ b/packages/console/app/src/routes/workspace/key-section.tsx @@ -7,11 +7,6 @@ import { createStore } from "solid-js/store" import { formatDateUTC, formatDateForTable } from "./common" import styles from "./key-section.module.css" import { Actor } from "@opencode-ai/console-core/actor.js" -import { and, Database, eq, isNull, sql } from "@opencode-ai/console-core/drizzle/index.js" -import { KeyTable } from "@opencode-ai/console-core/schema/key.sql.js" -import { UserTable } from "@opencode-ai/console-core/schema/user.sql.js" -import { AccountTable } from "@opencode-ai/console-core/schema/account.sql.js" -import { User } from "@opencode-ai/console-core/user.js" const removeKey = action(async (form: FormData) => { "use server" diff --git a/packages/console/app/src/routes/workspace/member-section.tsx b/packages/console/app/src/routes/workspace/member-section.tsx index 6774bb48e..b13e8e5ed 100644 --- a/packages/console/app/src/routes/workspace/member-section.tsx +++ b/packages/console/app/src/routes/workspace/member-section.tsx @@ -10,10 +10,10 @@ import { User } from "@opencode-ai/console-core/user.js" const listMembers = query(async (workspaceID: string) => { "use server" return withActor(async () => { - const actor = Actor.assert("user") return { members: await User.list(), - currentUserID: actor.properties.userID, + actorID: Actor.userID(), + actorRole: Actor.userRole(), } }, workspaceID) }, "member.list") @@ -158,10 +158,11 @@ export function MemberCreateForm() { ) } -function MemberRow(props: { member: any; workspaceID: string; currentUserID: string | null }) { +function MemberRow(props: { member: any; workspaceID: string; actorID: string; actorRole: string }) { const [editing, setEditing] = createSignal(false) const submission = useSubmission(updateMember) - const isCurrentUser = () => props.currentUserID === props.member.id + const isCurrentUser = () => props.actorID === props.member.id + const isAdmin = () => props.actorRole === "admin" createEffect(() => { if (!submission.pending && submission.result && !submission.result.error) { @@ -200,19 +201,19 @@ function MemberRow(props: { member: any; workspaceID: string; currentUserID: str {props.member.accountEmail ?? props.member.email} {props.member.role} {getUsageDisplay()} - }> - invited - + {props.member.timeSeen ? "" : "invited"} - - -
- - - -
+ + + +
+ + + +
+
@@ -293,37 +294,34 @@ export function MemberSection() {

Members

-

Manage your members for accessing opencode services.

- + + +
- -

Invite a member to your workspace

-
- } - > - - - - - - - - - - - - - {(member) => ( - - )} - - -
EmailRoleUsage
- + + + + + + + + + + + + + {(member) => ( + + )} + + +
EmailRoleUsage
) -- cgit v1.2.3