mirror of
https://github.com/anomalyco/opencode.git
synced 2026-09-07 13:54:38 +00:00
refactor(desktop): consume plugin-owned browser contracts
This commit is contained in:
parent
eb242163fc
commit
b1448ea08c
12 changed files with 13 additions and 9 deletions
2
bun.lock
2
bun.lock
|
|
@ -63,6 +63,7 @@
|
|||
"@ibm/plex": "6.4.1",
|
||||
"@kobalte/core": "catalog:",
|
||||
"@opencode-ai/client": "workspace:*",
|
||||
"@opencode-ai/plugin-browser": "workspace:*",
|
||||
"@opencode-ai/schema": "workspace:*",
|
||||
"@opencode-ai/session-ui": "workspace:*",
|
||||
"@opencode-ai/ui": "workspace:*",
|
||||
|
|
@ -425,6 +426,7 @@
|
|||
"@lydell/node-pty": "catalog:",
|
||||
"@opencode-ai/app": "workspace:*",
|
||||
"@opencode-ai/client": "workspace:*",
|
||||
"@opencode-ai/plugin-browser": "workspace:*",
|
||||
"@opencode-ai/schema": "workspace:*",
|
||||
"@opencode-ai/ui": "workspace:*",
|
||||
"@sentry/solid": "catalog:",
|
||||
|
|
|
|||
|
|
@ -65,6 +65,7 @@
|
|||
"@kobalte/core": "catalog:",
|
||||
"@opencode-ai/client": "workspace:*",
|
||||
"@opencode-ai/schema": "workspace:*",
|
||||
"@opencode-ai/plugin-browser": "workspace:*",
|
||||
"@opencode-ai/session-ui": "workspace:*",
|
||||
"@opencode-ai/ui": "workspace:*",
|
||||
"@opencode-ai/util": "workspace:*",
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
import type { Browser } from "@opencode-ai/schema/browser"
|
||||
import type { Browser } from "@opencode-ai/plugin-browser/rpc"
|
||||
|
||||
export type BrowserPaneEndpoint = Readonly<{ url: string; username?: string; password?: string }>
|
||||
export type BrowserPaneTarget = Readonly<{ sessionID: string; endpoint: BrowserPaneEndpoint }>
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import { batch, createEffect, createMemo, on, onCleanup } from "solid-js"
|
||||
import type { Browser } from "@opencode-ai/schema/browser"
|
||||
import type { Browser } from "@opencode-ai/plugin-browser/rpc"
|
||||
import { createStore, reconcile } from "solid-js/store"
|
||||
import { useLanguage } from "@/runtime/i18n/language"
|
||||
import type { BrowserPaneCommand, BrowserPaneRegistration, BrowserPaneState } from "@/runtime/platform/browser-pane"
|
||||
|
|
|
|||
|
|
@ -39,6 +39,7 @@
|
|||
"@opencode-ai/app": "workspace:*",
|
||||
"@opencode-ai/client": "workspace:*",
|
||||
"@opencode-ai/schema": "workspace:*",
|
||||
"@opencode-ai/plugin-browser": "workspace:*",
|
||||
"@opencode-ai/ui": "workspace:*",
|
||||
"@sentry/solid": "catalog:",
|
||||
"@sentry/vite-plugin": "catalog:",
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
import { Browser } from "@opencode-ai/schema/browser"
|
||||
import { Browser } from "@opencode-ai/plugin-browser/rpc"
|
||||
import electron, { type BrowserWindow, type WebContents } from "electron"
|
||||
import type { Protocol } from "devtools-protocol"
|
||||
import { Schema } from "effect"
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import type { BrowserPaneCommand, BrowserPaneLayout, BrowserPaneTarget } from "@opencode-ai/app/desktop"
|
||||
import { NodeHttpClient } from "@effect/platform-node"
|
||||
import { Browser } from "@opencode-ai/schema/browser"
|
||||
import { Browser } from "@opencode-ai/plugin-browser/rpc"
|
||||
import { OpenCode } from "@opencode-ai/client/effect"
|
||||
import { SessionID } from "@opencode-ai/schema/session-id"
|
||||
import type { BrowserWindow } from "electron"
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
import { Browser } from "@opencode-ai/schema/browser"
|
||||
import { Browser } from "@opencode-ai/plugin-browser/rpc"
|
||||
import type { Protocol } from "devtools-protocol"
|
||||
import type { Cdp } from "./cdp"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
import { Browser } from "@opencode-ai/schema/browser"
|
||||
import { Browser } from "@opencode-ai/plugin-browser/rpc"
|
||||
import { mkdir, readFile, stat, writeFile, rm } from "node:fs/promises"
|
||||
import { mkdirSync } from "node:fs"
|
||||
import { tmpdir } from "node:os"
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import type { WebContents } from "electron"
|
||||
import { Browser } from "@opencode-ai/schema/browser"
|
||||
import { Browser } from "@opencode-ai/plugin-browser/rpc"
|
||||
import { gzipSync, gunzipSync } from "node:zlib"
|
||||
import { readFile } from "node:fs/promises"
|
||||
import { Schema } from "effect"
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
import { Browser } from "@opencode-ai/schema/browser"
|
||||
import { Browser } from "@opencode-ai/plugin-browser/rpc"
|
||||
import { Schema } from "effect"
|
||||
import { Rpc } from "effect/unstable/rpc"
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ import { createServer } from "node:http"
|
|||
import { once } from "node:events"
|
||||
import path from "node:path"
|
||||
import { app, BrowserWindow, nativeImage } from "electron"
|
||||
import { Browser } from "@opencode-ai/schema/browser"
|
||||
import { Browser } from "@opencode-ai/plugin-browser/rpc"
|
||||
import { OpenCode } from "@opencode-ai/client"
|
||||
import { Effect, Fiber, Schema, Stream } from "effect"
|
||||
import { createBrowserPane } from "../../src/main/browser-pane"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue