Files
zn-ai/src-react/lib/gateway-client.ts
duanshuwen b1dea9a5c2 feat: implement task management store with IPC integration
- Added a new task store in `src-react/stores/task.ts` to manage tasks and their statuses.
- Implemented functions for creating, executing, and retrying tasks, along with handling task progress and completion.
- Introduced persistence for tasks using IPC.
- Created utility functions for normalizing room types and building subtasks.
- Added a new CSS file for global styles in `src-react/styles.css`.
- Created runtime types in `src-react/types/runtime.ts` and exported them.
- Updated the main entry points for Vue and React applications to support dynamic framework loading.
- Refactored chat model interfaces and utility functions into `src/shared/chat-model.ts`.
- Updated TypeScript configuration to include paths for React components and types.
- Enhanced Vite configuration to support both Vue and React frameworks.
2026-04-17 07:09:56 +08:00

13 lines
473 B
TypeScript

import { IPC_EVENTS } from './constants';
import { invokeIpc, onIpc } from './host-api';
import type { GatewayEvent } from '../types/runtime';
export async function gatewayRpc<T = unknown>(method: string, params?: unknown): Promise<T> {
return invokeIpc<T>(IPC_EVENTS.GATEWAY_RPC, method, params);
}
export function onGatewayEvent(callback: (event: GatewayEvent) => void): () => void {
return onIpc(IPC_EVENTS.GATEWAY_EVENT, callback as (...args: any[]) => void);
}