diff options
| author | Dax Raad <[email protected]> | 2025-08-20 16:52:43 -0400 |
|---|---|---|
| committer | Dax Raad <[email protected]> | 2025-08-20 17:01:18 -0400 |
| commit | 522bed6b7dabd09328b3c8aae90b06ab06344623 (patch) | |
| tree | 905dca3e2b3fb4e765d03f2ec78e285f19a31155 /cloud/app/src/routes | |
| parent | dda672284c69ad399029316a63677cf49cbc54f3 (diff) | |
| download | opencode-522bed6b7dabd09328b3c8aae90b06ab06344623.tar.gz opencode-522bed6b7dabd09328b3c8aae90b06ab06344623.zip | |
ignore: cloud stuff
Diffstat (limited to 'cloud/app/src/routes')
| -rw-r--r-- | cloud/app/src/routes/[workspaceID].tsx | 15 | ||||
| -rw-r--r-- | cloud/app/src/routes/auth/callback.ts | 5 | ||||
| -rw-r--r-- | cloud/app/src/routes/index.tsx | 18 |
3 files changed, 33 insertions, 5 deletions
diff --git a/cloud/app/src/routes/[workspaceID].tsx b/cloud/app/src/routes/[workspaceID].tsx new file mode 100644 index 000000000..706a64323 --- /dev/null +++ b/cloud/app/src/routes/[workspaceID].tsx @@ -0,0 +1,15 @@ +import { createAsync, query } from "@solidjs/router" +import { getActor, withActor } from "~/context/auth" + +const getPosts = query(async () => { + "use server" + return withActor(() => { + return "ok" + }) +}, "posts") + + +export default function () { + const actor = createAsync(async () => getActor()) + return <div>{JSON.stringify(actor())}</div> +} diff --git a/cloud/app/src/routes/auth/callback.ts b/cloud/app/src/routes/auth/callback.ts index a561c70d0..22dcb2b6d 100644 --- a/cloud/app/src/routes/auth/callback.ts +++ b/cloud/app/src/routes/auth/callback.ts @@ -5,11 +5,6 @@ export async function GET(input: APIEvent) { const url = new URL(input.request.url) const code = url.searchParams.get("code") if (!code) throw new Error("No code found") - const redirectURI = `${url.origin}${url.pathname}` - console.log({ - redirectURI, - code, - }) const result = await AuthClient.exchange(code, `${url.origin}${url.pathname}`) if (result.err) { throw new Error(result.err.message) diff --git a/cloud/app/src/routes/index.tsx b/cloud/app/src/routes/index.tsx index da4e23364..057ddb49e 100644 --- a/cloud/app/src/routes/index.tsx +++ b/cloud/app/src/routes/index.tsx @@ -6,6 +6,9 @@ import IMG_SPLASH from "../asset/screenshot-splash.webp" import IMG_VSCODE from "../asset/screenshot-vscode.webp" import IMG_GITHUB from "../asset/screenshot-github.webp" import { IconCopy, IconCheck } from "../component/icon" +import { createAsync, query, redirect, RouteDefinition } from "@solidjs/router" +import { getActor, withActor } from "~/context/auth" +import { Account } from "@opencode/cloud-core/account.js" function CopyStatus() { return ( @@ -16,7 +19,22 @@ function CopyStatus() { ) } +const isLoggedIn = query(async () => { + "use server" + const actor = await getActor() + if (actor.type === "account") { + const workspaces = await withActor(() => Account.workspaces()) + throw redirect("/" + workspaces[0].id) + } + return +}, "isLoggedIn") + + + export default function Home() { + createAsync(() => isLoggedIn(), { + deferStream: true, + }) onMount(() => { const commands = document.querySelectorAll("[data-copy]") for (const button of commands) { |
