From 48e01cfee793a9cfc4d17794abf808f71a35c888 Mon Sep 17 00:00:00 2001 From: Dax Raad Date: Sat, 30 Aug 2025 01:36:25 -0400 Subject: [PATCH] ignore: sync --- .../src/routes/{workspace => }/workspace.css | 5 ++++- cloud/app/src/routes/workspace.tsx | 22 ++++++++++++++++--- .../routes/workspace/{index.css => [id].css} | 0 cloud/app/src/routes/workspace/[id].tsx | 6 ++--- 4 files changed, 26 insertions(+), 7 deletions(-) rename cloud/app/src/routes/{workspace => }/workspace.css (95%) rename cloud/app/src/routes/workspace/{index.css => [id].css} (100%) diff --git a/cloud/app/src/routes/workspace/workspace.css b/cloud/app/src/routes/workspace.css similarity index 95% rename from cloud/app/src/routes/workspace/workspace.css rename to cloud/app/src/routes/workspace.css index 3390fbea..e18b410e 100644 --- a/cloud/app/src/routes/workspace/workspace.css +++ b/cloud/app/src/routes/workspace.css @@ -52,7 +52,10 @@ color: var(--color-text-muted); } - a { + a, + button { + border: none; + padding: 0; color: var(--color-text); text-decoration: underline; text-underline-offset: var(--space-0-75); diff --git a/cloud/app/src/routes/workspace.tsx b/cloud/app/src/routes/workspace.tsx index 864fab4d..920276e8 100644 --- a/cloud/app/src/routes/workspace.tsx +++ b/cloud/app/src/routes/workspace.tsx @@ -1,6 +1,20 @@ +import { useAuthSession } from "~/context/auth.session" import { IconLogo } from "../component/icon" -import "./workspace/workspace.css" -import { RouteSectionProps } from "@solidjs/router" +import "./workspace.css" +import { action, redirect, RouteSectionProps } from "@solidjs/router" + +const logout = action(async () => { + "use server" + const auth = await useAuthSession() + const current = auth.data.current + if (current) + await auth.update((val) => { + delete val.account[current] + return val + }) + + return redirect("/") +}) export default function WorkspaceLayout(props: RouteSectionProps) { return ( @@ -13,7 +27,9 @@ export default function WorkspaceLayout(props: RouteSectionProps) {
name@example.com - Logout +
+ +
{props.children}
diff --git a/cloud/app/src/routes/workspace/index.css b/cloud/app/src/routes/workspace/[id].css similarity index 100% rename from cloud/app/src/routes/workspace/index.css rename to cloud/app/src/routes/workspace/[id].css diff --git a/cloud/app/src/routes/workspace/[id].tsx b/cloud/app/src/routes/workspace/[id].tsx index 81013dc9..41612886 100644 --- a/cloud/app/src/routes/workspace/[id].tsx +++ b/cloud/app/src/routes/workspace/[id].tsx @@ -1,11 +1,11 @@ import { Billing } from "@opencode/cloud-core/billing.js" import { Key } from "@opencode/cloud-core/key.js" -import { action, createAsync, revalidate, query, useAction, useSubmission, json } from "@solidjs/router" -import { createEffect, createSignal, For, onMount, Show } from "solid-js" +import { action, createAsync, query, useAction, useSubmission, json } from "@solidjs/router" +import { createSignal, For, onMount, Show } from "solid-js" import { getActor } from "~/context/auth" import { withActor } from "~/context/auth.withActor" import { IconCopy, IconCheck } from "~/component/icon" -import "./index.css" +import "./[id].css" import { User } from "@opencode/cloud-core/user.js" import { Actor } from "@opencode/cloud-core/actor.js"