init studio admin frontend

This commit is contained in:
2026-07-01 17:34:15 +09:00
commit c50bd2b941
64 changed files with 22452 additions and 0 deletions
+88
View File
@@ -0,0 +1,88 @@
import type { ApiApp, ApiAppComponent } from './runtime';
export type ComponentType = 'ELECTRON' | 'CONTAINER' | 'STATIC_WEB' | 'DATABASE' | 'MIGRATION';
export type JobStatus = 'PENDING' | 'RUNNING' | 'SUCCEEDED' | 'FAILED' | 'CANCELED';
export type AppWithComponents = ApiApp & {
description?: string | null;
createdAt?: string;
updatedAt?: string;
components?: ApiAppComponent[];
};
export type SourceComponent = ApiAppComponent & {
app: ApiApp;
buildJobs?: BuildJob[];
};
export type BuildJob = {
id: string;
componentId: string;
branch: string;
commitSha?: string | null;
artifact?: string | null;
image?: string | null;
status: JobStatus;
logs?: string | null;
startedAt?: string | null;
finishedAt?: string | null;
createdAt: string;
component: ApiAppComponent & { app: ApiApp };
};
export type AppRelease = {
id: string;
appId: string;
version: string;
branch: string;
commitSha?: string | null;
artifact?: string | null;
imageTags?: unknown;
status: JobStatus;
createdAt: string;
updatedAt?: string;
app: ApiApp;
};
export type DeploymentJob = {
id: string;
appId: string;
releaseId?: string | null;
environment: string;
namespace: string;
status: JobStatus;
requestedBy?: string | null;
logs?: string | null;
startedAt?: string | null;
finishedAt?: string | null;
createdAt: string;
app: ApiApp;
release?: AppRelease | null;
};
export type RuntimeControlJob = {
id: string;
namespace: string;
kind: string;
name: string;
action: string;
status: JobStatus;
requestedBy?: string | null;
request?: Record<string, unknown> | null;
result?: Record<string, unknown> | null;
logs?: string | null;
startedAt?: string | null;
finishedAt?: string | null;
createdAt: string;
};
export type GiteaRepo = {
id?: number;
name: string;
full_name: string;
html_url?: string;
clone_url?: string;
ssh_url?: string;
private?: boolean;
owner?: { login: string };
};