Explorar el Código

feat(tui): add plugin route api

Dax Raad hace 1 mes
padre
commit
ec07ee56f4
Se han modificado 1 ficheros con 18 adiciones y 1 borrados
  1. 18 1
      packages/plugin/src/v2/tui/context.ts

+ 18 - 1
packages/plugin/src/v2/tui/context.ts

@@ -19,6 +19,7 @@ import type {
   ShellInfo,
   ShellInfo,
   SkillInfo,
   SkillInfo,
 } from "@opencode-ai/client"
 } from "@opencode-ai/client"
+import type { JSX } from "@opentui/solid"
 
 
 interface LocationCollection<Value> {
 interface LocationCollection<Value> {
   list(location?: LocationRef): Value[] | undefined
   list(location?: LocationRef): Value[] | undefined
@@ -85,7 +86,23 @@ export interface Data {
   }
   }
 }
 }
 
 
-export interface UI {}
+export interface RouteDefinition {
+  readonly name: string
+  readonly render: (input: { readonly params: any }) => JSX.Element
+}
+
+export interface Route {
+  register(definition: RouteDefinition): () => void
+  navigate(input: { readonly name: string; readonly params?: any }): void
+  current(): {
+    readonly name: string
+    readonly params: any
+  }
+}
+
+export interface UI {
+  readonly route: Route
+}
 
 
 export interface Context {
 export interface Context {
   readonly options: Record<string, any>
   readonly options: Record<string, any>