@alauda-fe/common
Version:
Alauda frontend team common codes.
74 lines (73 loc) • 4.01 kB
TypeScript
import { MonacoLanguageService } from '@alauda/code-editor';
import { OnDestroy, AfterViewInit } from '@angular/core';
import { BehaviorSubject, Observable } from 'rxjs';
import { KubernetesSchemaService, YamlUtilService, Arrayable, KubernetesResource, OpenAPIV3SchemaObject } from '../../core/public-api';
import { EditorInstanceProvider } from '../managed-fields-folder.util';
import * as i0 from "@angular/core";
export declare class ResourceYamlDisplayComponent<T extends KubernetesResource> implements OnDestroy, AfterViewInit, EditorInstanceProvider {
readonly yamlUtil: YamlUtilService;
readonly schemaService: KubernetesSchemaService;
private readonly monacoLanguageService;
private destroy$;
concise$$: BehaviorSubject<boolean>;
reduce$$: BehaviorSubject<boolean>;
showSidebar$$: BehaviorSubject<boolean>;
showDebugPanel$$: BehaviorSubject<boolean>;
modelUri: string;
private yamlSchemaService;
private monacoEditor;
private registeredSchemas;
codeEditorRef: {
editor: import('monaco-editor/esm/vs/editor/editor.api').editor.IStandaloneCodeEditor;
};
hasWrapper: boolean;
showDebugInfo: boolean;
conciseEnable: boolean;
manageFieldActionEnable: boolean;
sidebarEnable: boolean;
schemaEnable: boolean;
exampleEnable: boolean;
autoFoldManagedFields: boolean;
schema: OpenAPIV3SchemaObject;
resource: Arrayable<T>;
readonly resource$: Observable<Arrayable<T>>;
readonly schema$: Observable<OpenAPIV3SchemaObject>;
minimap: boolean;
yamlReadMinimapOptions: import("../code-editor-configs").IEditorConstructionOptions;
yamlReadOptions: import("../code-editor-configs").IEditorConstructionOptions;
hasFolded: boolean;
/**
* 自动获取的 schema,当没有手动提供 schema 时使用
*/
autoSchema$: Observable<OpenAPIV3SchemaObject>;
/**
* 最终使用的 schema,优先使用手动提供的,否则使用自动获取的
*/
finalSchema$: Observable<OpenAPIV3SchemaObject>;
constructor(yamlUtil: YamlUtilService, schemaService: KubernetesSchemaService, monacoLanguageService: MonacoLanguageService);
yaml$: Observable<string>;
get editorOptions(): import("../code-editor-configs").IEditorConstructionOptions;
viewActions: import("@alauda/code-editor").CodeEditorActionsConfig;
conciseChange(value: boolean): void;
toggleSidebar(): void;
toggleDebugInfo(): void;
getCurrentResource(): T | null;
getCurrentSchema(): OpenAPIV3SchemaObject | null;
selfFoldManagedFields(): void;
/**
* 设置 YAML schema 以提供 hover 提示和自动完成
*/
setYamlSchema(resource: T, schema: OpenAPIV3SchemaObject): void;
ngAfterViewInit(): void;
/**
* 获取 Monaco Editor 实例
*/
getEditorInstance(): import('monaco-editor/esm/vs/editor/editor.api').editor.IStandaloneCodeEditor | null;
/**
* 自动折叠 managedFields 字段
*/
foldManagedFields(): void;
ngOnDestroy(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<ResourceYamlDisplayComponent<any>, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<ResourceYamlDisplayComponent<any>, "acl-resource-yaml-display", never, { "hasWrapper": { "alias": "hasWrapper"; "required": false; }; "showDebugInfo": { "alias": "showDebugInfo"; "required": false; }; "conciseEnable": { "alias": "conciseEnable"; "required": false; }; "manageFieldActionEnable": { "alias": "manageFieldActionEnable"; "required": false; }; "sidebarEnable": { "alias": "sidebarEnable"; "required": false; }; "schemaEnable": { "alias": "schemaEnable"; "required": false; }; "exampleEnable": { "alias": "exampleEnable"; "required": false; }; "autoFoldManagedFields": { "alias": "autoFoldManagedFields"; "required": false; }; "schema": { "alias": "schema"; "required": false; }; "resource": { "alias": "resource"; "required": false; }; "minimap": { "alias": "minimap"; "required": false; }; }, {}, never, never, true, never>;
}