68 lines
1.7 KiB
TypeScript
68 lines
1.7 KiB
TypeScript
import { DeesElement, type TemplateResult } from '@design.estate/dees-element';
|
|
declare global {
|
|
interface HTMLElementTagNameMap {
|
|
'sz-service-create-view': SzServiceCreateView;
|
|
}
|
|
}
|
|
export interface IRegistry {
|
|
id: string;
|
|
name: string;
|
|
url: string;
|
|
}
|
|
export interface IPortMapping {
|
|
hostPort: string;
|
|
containerPort: string;
|
|
protocol: 'tcp' | 'udp';
|
|
}
|
|
export interface IEnvVar {
|
|
key: string;
|
|
value: string;
|
|
}
|
|
export interface IVolumeMount {
|
|
hostPath: string;
|
|
containerPath: string;
|
|
readOnly: boolean;
|
|
}
|
|
export interface IServiceConfig {
|
|
name: string;
|
|
image: string;
|
|
ports: IPortMapping[];
|
|
envVars: IEnvVar[];
|
|
volumes: IVolumeMount[];
|
|
cpuLimit: string;
|
|
memoryLimit: string;
|
|
restartPolicy: 'always' | 'on-failure' | 'never';
|
|
networkMode: string;
|
|
}
|
|
export declare class SzServiceCreateView extends DeesElement {
|
|
static demo: () => TemplateResult<1>;
|
|
accessor registries: IRegistry[];
|
|
accessor loading: boolean;
|
|
private accessor serviceName;
|
|
private accessor imageUrl;
|
|
private accessor selectedRegistry;
|
|
private accessor ports;
|
|
private accessor envVars;
|
|
private accessor volumes;
|
|
private accessor cpuLimit;
|
|
private accessor memoryLimit;
|
|
private accessor restartPolicy;
|
|
private accessor networkMode;
|
|
private accessor showAdvanced;
|
|
static styles: import("@design.estate/dees-element").CSSResult[];
|
|
render(): TemplateResult;
|
|
private isValid;
|
|
private addPort;
|
|
private removePort;
|
|
private updatePort;
|
|
private addEnvVar;
|
|
private removeEnvVar;
|
|
private updateEnvVar;
|
|
private addVolume;
|
|
private removeVolume;
|
|
private updateVolume;
|
|
private handleCancel;
|
|
private handleCreate;
|
|
reset(): void;
|
|
}
|