58 lines
1.5 KiB
TypeScript
58 lines
1.5 KiB
TypeScript
import { DeesElement, type TemplateResult } from '@design.estate/dees-element';
|
|
import './sz-stat-card.js';
|
|
declare global {
|
|
interface HTMLElementTagNameMap {
|
|
'sz-service-detail-view': SzServiceDetailView;
|
|
}
|
|
}
|
|
export interface IServiceDetail {
|
|
name: string;
|
|
status: 'running' | 'stopped' | 'starting' | 'error';
|
|
image: string;
|
|
port: number;
|
|
domain: string | null;
|
|
containerId: string;
|
|
created: string;
|
|
updated: string;
|
|
registry: string;
|
|
repository: string;
|
|
tag: string;
|
|
}
|
|
export interface IServiceStats {
|
|
cpu: number;
|
|
memory: string;
|
|
memoryLimit: string;
|
|
networkIn: string;
|
|
networkOut: string;
|
|
}
|
|
export interface IServiceBackup {
|
|
id: string;
|
|
createdAt: string;
|
|
size: string;
|
|
type: string;
|
|
}
|
|
export interface ILogEntry {
|
|
timestamp: string;
|
|
message: string;
|
|
level?: 'info' | 'warn' | 'error';
|
|
}
|
|
export declare class SzServiceDetailView extends DeesElement {
|
|
static demo: () => TemplateResult<1>;
|
|
accessor service: IServiceDetail;
|
|
accessor stats: IServiceStats;
|
|
accessor backups: IServiceBackup[];
|
|
accessor logs: ILogEntry[];
|
|
accessor streaming: boolean;
|
|
static styles: import("@design.estate/dees-element").CSSResult[];
|
|
render(): TemplateResult;
|
|
private handleBack;
|
|
private handleEdit;
|
|
private handleAction;
|
|
private toggleStreaming;
|
|
private handleClearLogs;
|
|
private handleCreateBackup;
|
|
private handleDownloadBackup;
|
|
private handleRestoreBackup;
|
|
private handleDeleteBackup;
|
|
}
|