Refactor UI with vue3

This commit is contained in:
cuigh
2021-12-06 20:24:22 +08:00
parent afbc618abb
commit 2dd9cd15e1
411 changed files with 22726 additions and 69351 deletions

76
ui/src/api/task.ts Normal file
View File

@@ -0,0 +1,76 @@
import ajax, { Result } from './ajax'
export interface Task {
id: string;
name: string;
version: number;
image: string;
slot: number;
state: string;
serviceId: string;
serviceName: string;
nodeId: string;
containerId?: string;
pid?: number;
exitCode?: number;
message: string;
error: string;
env?: {
name: string;
value: string;
}[];
labels?: {
name: string;
value: string;
}[];
networks?: {
id: string;
name: string;
ips: string[];
}[];
createdAt: string;
updatedAt: string;
}
export interface SearchArgs {
node?: string;
service?: string;
state?: string;
pageIndex: number;
pageSize: number;
}
export interface SearchResult {
items: Task[];
total: number;
}
export interface FindResult {
task: Task;
raw: string;
}
export interface FetchLogsArgs {
id: string;
lines: number;
timestamps: boolean;
}
export class TaskApi {
find(id: string) {
return ajax.get<FindResult>('/task/find', { id })
}
search(args: SearchArgs) {
return ajax.get<SearchResult>('/task/search', args)
}
fetchLogs(args: FetchLogsArgs) {
return ajax.get<{
stdout: string;
stderr: string;
}>('/task/fetch-logs', args)
}
}
export default new TaskApi