@alauda-fe/dynamic-plugin-shared 0.0.4-alpha.8 → 0.0.4-alpha.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import * as i1 from '@alauda/ui';
|
|
2
2
|
import { rgbColor, ThemeService, coerceAttrBoolean, FormItemControlDirective, observeResizeOn, MessageService, NotificationService, DIALOG_DATA, DialogModule, ButtonModule, InputModule, IconModule, FormModule, handlePixel, isTemplateRef, ThemePickerPipe, TooltipModule, TooltipType, ButtonComponent, IconComponent, TagComponent, TooltipDirective, DateNavRange, InputGroupComponent, InputSuffixDirective, InputComponent, DateRangePickerPanelComponent, TagType, TagModule, TooltipComponent, BaseTooltip, TooltipTrigger, INPUT_GROUP_MODULE, SelectModule, FORM_MODULE, DropdownModule, CheckboxModule, CardComponent, TOOLTIP_MODULE, CheckboxComponent, BackTopComponent, SortDirective, SortHeaderComponent, PaginatorComponent, TABLE_MODULE, DROPDOWN_MODULE, DialogRef, DIALOG_MODULE, CARD_MODULE, CHECKBOX_MODULE, TabsModule } from '@alauda/ui';
|
|
3
|
-
import { last, cloneDeep, has, unset, get, isBoolean, sortBy, set, trim, isFunction, range, debounce, uniq, identity, first, isString, isEmpty, isObjectLike
|
|
3
|
+
import { last, cloneDeep, has, unset, get, isBoolean, sortBy, set, trim, isFunction, range, debounce, uniq, identity, first, isString, isEmpty, isObjectLike } from 'lodash-es';
|
|
4
4
|
import * as i2$1 from '@alauda-fe/dynamic-plugin-sdk';
|
|
5
|
-
import { parseBase64Type, isBlank, publishRef, TOKEN_BASE_DOMAIN, stringify as stringify$1, isEqual, TimeService, TranslateService, isZhLang, FALLBACK_LANGUAGE, TranslatePipe, ObservableInput, FeatureGateService, FieldNotAvailablePipe, ValueHook, LoadingMaskComponent, PurePipe, StandardTimePipe, RelativeTimePipe, skipError, CURR_ESCAPE_DEACTIVATE_GUARD, ESCAPE_DEACTIVATE_GUARD, parseAll, FIELD_NOT_AVAILABLE_PLACEHOLDER, noop, SafePipe, WatchEvent, K8sUtilService, NAMESPACE as NAMESPACE$1, isFieldNotAvailable, K8S_UTIL_PIPES_MODULE, ResourceSelectorPopupService, ProjectService, ConfigurableField, API_GATEWAY as API_GATEWAY$1, ClusterListComponent, K8sApiService, TRANSLATE_MODULE } from '@alauda-fe/dynamic-plugin-sdk';
|
|
5
|
+
import { parseBase64Type, isBlank, publishRef, TOKEN_BASE_DOMAIN, stringify as stringify$1, isEqual, TimeService, TranslateService, isZhLang, FALLBACK_LANGUAGE, TranslatePipe, ObservableInput, FeatureGateService, FieldNotAvailablePipe, ValueHook, LoadingMaskComponent, PurePipe, StandardTimePipe, RelativeTimePipe, skipError, CURR_ESCAPE_DEACTIVATE_GUARD, ESCAPE_DEACTIVATE_GUARD, parseAll, FIELD_NOT_AVAILABLE_PLACEHOLDER, noop, SafePipe, WatchEvent, K8sUtilService, NAMESPACE as NAMESPACE$1, isFieldNotAvailable, K8S_UTIL_PIPES_MODULE, ResourceSelectorPopupService, ProjectService, ConfigurableField, API_GATEWAY as API_GATEWAY$1, ClusterListComponent, K8sApiService, TRANSLATE_MODULE, KubernetesSchemaService } from '@alauda-fe/dynamic-plugin-sdk';
|
|
6
6
|
import { Observable, finalize, map, startWith, catchError, of, isObservable, switchMap, animationFrameScheduler, fromEvent, auditTime, Subject, takeUntil, distinctUntilChanged, combineLatest, filter, debounceTime, take, merge, pairwise, tap, BehaviorSubject, from, timer, ReplaySubject, delay, withLatestFrom, scan, takeWhile, concat, exhaustMap, EMPTY as EMPTY$1, interval, NEVER, switchScan, shareReplay, mapTo } from 'rxjs';
|
|
7
7
|
import * as i2$2 from '@angular/router';
|
|
8
8
|
import { ActivatedRoute, Router, RouterLink } from '@angular/router';
|
|
@@ -13,15 +13,12 @@ import * as i0 from '@angular/core';
|
|
|
13
13
|
import { inject, Directive, NgZone, Injectable, IterableDiffers, isDevMode, Pipe, ChangeDetectorRef, Input, ViewContainerRef, TemplateRef, ɵstringify as _stringify, ElementRef, Injector, HostBinding, ChangeDetectionStrategy, Component, EventEmitter, Output, HostListener, Inject, Host, booleanAttribute, forwardRef, ContentChild, Optional, ViewEncapsulation, ViewChild, ApplicationRef, ViewChildren, ContentChildren, InjectionToken, input, NgModule, computed } from '@angular/core';
|
|
14
14
|
import parser from 'cron-parser';
|
|
15
15
|
import dayjs from 'dayjs';
|
|
16
|
-
import timezone from 'dayjs/plugin/timezone';
|
|
17
|
-
import utc from 'dayjs/plugin/utc';
|
|
18
16
|
import { marked } from 'marked';
|
|
19
17
|
import cronstrue from 'cronstrue';
|
|
20
18
|
import 'cronstrue/locales/zh_CN';
|
|
21
19
|
import 'cronstrue/locales/en';
|
|
22
20
|
import * as i1$1 from '@angular/common';
|
|
23
21
|
import { DecimalPipe, NgTemplateOutlet, AsyncPipe, NgClass, NgStyle, CommonModule, Location, KeyValuePipe } from '@angular/common';
|
|
24
|
-
import duration from 'dayjs/plugin/duration';
|
|
25
22
|
import { __decorate, __metadata } from 'tslib';
|
|
26
23
|
import * as i2 from '@angular/forms';
|
|
27
24
|
import { ControlContainer, NgControl, Validators, NG_VALIDATORS, DefaultValueAccessor, NG_VALUE_ACCESSOR, FormsModule, ReactiveFormsModule, NG_ASYNC_VALIDATORS, MaxLengthValidator, MinLengthValidator, NgForm, FormGroupDirective, FormBuilder, FormGroup, FormArray } from '@angular/forms';
|
|
@@ -31,14 +28,11 @@ import * as i1$2 from '@angular/cdk/overlay';
|
|
|
31
28
|
import { ScrollDispatcher } from '@angular/cdk/overlay';
|
|
32
29
|
import { decode, encode } from 'ab64';
|
|
33
30
|
import { DomPortalOutlet, ComponentPortal } from '@angular/cdk/portal';
|
|
31
|
+
import { yamlWriteOptions, createActions, MonacoEditorConfig, viewActions, readonlyOptions, CodeEditorComponent, yamlReadOptions, MonacoLanguageService, yamlWriteMinimapOptions, updateActions } from '@alauda/code-editor';
|
|
34
32
|
import { DomSanitizer } from '@angular/platform-browser';
|
|
35
33
|
import { takeUntilDestroyed, toObservable, toSignal } from '@angular/core/rxjs-interop';
|
|
36
34
|
import { BaseResourceFormComponent } from 'ng-resource-form-util';
|
|
37
|
-
import { MonacoEditorConfig } from 'ng-monaco-editor';
|
|
38
35
|
import { HttpClient } from '@angular/common/http';
|
|
39
|
-
import * as i3 from '@alauda/code-editor';
|
|
40
|
-
import { CodeEditorModule, MonacoLanguageService } from '@alauda/code-editor';
|
|
41
|
-
import { yamlDefaults } from 'monaco-yaml';
|
|
42
36
|
|
|
43
37
|
/**
|
|
44
38
|
* @packageDocumentation
|
|
@@ -163,6 +157,7 @@ const AccessMode = {
|
|
|
163
157
|
RWO: 'ReadWriteOnce',
|
|
164
158
|
ROX: 'ReadOnlyMany',
|
|
165
159
|
RWX: 'ReadWriteMany',
|
|
160
|
+
RWOP: 'ReadWriteOncePod',
|
|
166
161
|
};
|
|
167
162
|
const AccessModes = [AccessMode.RWO, AccessMode.ROX, AccessMode.RWX];
|
|
168
163
|
var VolumeTypeEnum;
|
|
@@ -2915,8 +2910,6 @@ function fullStrategyCheck(keys, controls, _, mapFn, matchesFn, initData) {
|
|
|
2915
2910
|
return toRemoveError;
|
|
2916
2911
|
}
|
|
2917
2912
|
|
|
2918
|
-
dayjs.extend(utc);
|
|
2919
|
-
dayjs.extend(timezone);
|
|
2920
2913
|
class CrontabNextPipe {
|
|
2921
2914
|
constructor() {
|
|
2922
2915
|
this.time = inject(TimeService);
|
|
@@ -3136,7 +3129,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
|
|
|
3136
3129
|
}]
|
|
3137
3130
|
}] });
|
|
3138
3131
|
|
|
3139
|
-
dayjs.extend(duration);
|
|
3140
3132
|
class DurationPipe {
|
|
3141
3133
|
constructor() {
|
|
3142
3134
|
this.translate = inject(TranslateService);
|
|
@@ -6625,82 +6617,6 @@ function genControlDepsMap(context, rules, destroy$) {
|
|
|
6625
6617
|
});
|
|
6626
6618
|
}
|
|
6627
6619
|
|
|
6628
|
-
/**
|
|
6629
|
-
* @packageDocumentation
|
|
6630
|
-
* @module code
|
|
6631
|
-
*/
|
|
6632
|
-
const commonActions = {
|
|
6633
|
-
copy: true,
|
|
6634
|
-
find: true,
|
|
6635
|
-
export: true,
|
|
6636
|
-
};
|
|
6637
|
-
const createActions = {
|
|
6638
|
-
diffMode: false,
|
|
6639
|
-
clear: true,
|
|
6640
|
-
recover: false,
|
|
6641
|
-
import: true,
|
|
6642
|
-
...commonActions,
|
|
6643
|
-
};
|
|
6644
|
-
const viewActions = {
|
|
6645
|
-
diffMode: false,
|
|
6646
|
-
clear: false,
|
|
6647
|
-
recover: false,
|
|
6648
|
-
import: false,
|
|
6649
|
-
...commonActions,
|
|
6650
|
-
};
|
|
6651
|
-
const updateActions = {
|
|
6652
|
-
diffMode: true, // if true, you should also set 'originalValue' attribute, eg: <aui-code-editor [originalValue]="originalFile"></aui-code-editor>
|
|
6653
|
-
clear: true,
|
|
6654
|
-
recover: true,
|
|
6655
|
-
import: true,
|
|
6656
|
-
...commonActions,
|
|
6657
|
-
};
|
|
6658
|
-
const logsActions = {
|
|
6659
|
-
...viewActions,
|
|
6660
|
-
theme: true,
|
|
6661
|
-
};
|
|
6662
|
-
const commonOptions = {
|
|
6663
|
-
folding: true,
|
|
6664
|
-
minimap: { enabled: false },
|
|
6665
|
-
wordWrap: 'on',
|
|
6666
|
-
tabSize: 2,
|
|
6667
|
-
scrollbar: {
|
|
6668
|
-
alwaysConsumeMouseWheel: false,
|
|
6669
|
-
},
|
|
6670
|
-
};
|
|
6671
|
-
const readonlyOptions = {
|
|
6672
|
-
...commonOptions,
|
|
6673
|
-
readOnly: true,
|
|
6674
|
-
};
|
|
6675
|
-
const yamlReadOptions = {
|
|
6676
|
-
language: 'yaml',
|
|
6677
|
-
...readonlyOptions,
|
|
6678
|
-
};
|
|
6679
|
-
const yamlWriteOptions = {
|
|
6680
|
-
language: 'yaml',
|
|
6681
|
-
...commonOptions,
|
|
6682
|
-
};
|
|
6683
|
-
const textWriteOptions = {
|
|
6684
|
-
language: 'text',
|
|
6685
|
-
...commonOptions,
|
|
6686
|
-
};
|
|
6687
|
-
const yamlWriteMinimapOptions = {
|
|
6688
|
-
language: 'yaml',
|
|
6689
|
-
...commonOptions,
|
|
6690
|
-
minimap: { enabled: true },
|
|
6691
|
-
};
|
|
6692
|
-
const yamlReadMinimapOptions = {
|
|
6693
|
-
language: 'yaml',
|
|
6694
|
-
...readonlyOptions,
|
|
6695
|
-
minimap: { enabled: true },
|
|
6696
|
-
};
|
|
6697
|
-
// for logs
|
|
6698
|
-
const logsReadOptions = {
|
|
6699
|
-
wordWrap: 'on',
|
|
6700
|
-
readOnly: true,
|
|
6701
|
-
renderLineHighlight: 'none',
|
|
6702
|
-
};
|
|
6703
|
-
|
|
6704
6620
|
class InterceptDeactivateService {
|
|
6705
6621
|
constructor(location, router, dialog, translate) {
|
|
6706
6622
|
this.location = location;
|
|
@@ -9387,22 +9303,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
|
|
|
9387
9303
|
args: ['multiSearch', { static: true }]
|
|
9388
9304
|
}] } });
|
|
9389
9305
|
|
|
9390
|
-
const removeSuffix = (str) => str.replace('-resize', '');
|
|
9391
|
-
/** 如果cursor存在类似 n-resize、ne-resize,都代表是top 方向 */
|
|
9392
|
-
const isT = (cursor) => removeSuffix(cursor).includes('n');
|
|
9393
|
-
/** 是否是right */
|
|
9394
|
-
const isR = (cursor) => removeSuffix(cursor).includes('e');
|
|
9395
|
-
/** 是否是bottom */
|
|
9396
|
-
const isB = (cursor) => removeSuffix(cursor).includes('s');
|
|
9397
|
-
/** 是否是left */
|
|
9398
|
-
const isL = (cursor) => removeSuffix(cursor).includes('w');
|
|
9399
|
-
const toPx = (num) => num + 'px';
|
|
9400
|
-
const toPercent = (num, base = 1) => num * base + '%';
|
|
9401
|
-
const toNumber = (str) => {
|
|
9402
|
-
const p = parseFloat(str);
|
|
9403
|
-
return isNaN(p) ? 0 : p;
|
|
9404
|
-
};
|
|
9405
|
-
|
|
9406
9306
|
/**
|
|
9407
9307
|
* To judge whether the parent element
|
|
9408
9308
|
*/
|
|
@@ -9425,6 +9325,22 @@ function coerceElement(elementOrRef) {
|
|
|
9425
9325
|
: elementOrRef;
|
|
9426
9326
|
}
|
|
9427
9327
|
|
|
9328
|
+
const removeSuffix = (str) => str.replace('-resize', '');
|
|
9329
|
+
/** 如果cursor存在类似 n-resize、ne-resize,都代表是top 方向 */
|
|
9330
|
+
const isT = (cursor) => removeSuffix(cursor).includes('n');
|
|
9331
|
+
/** 是否是right */
|
|
9332
|
+
const isR = (cursor) => removeSuffix(cursor).includes('e');
|
|
9333
|
+
/** 是否是bottom */
|
|
9334
|
+
const isB = (cursor) => removeSuffix(cursor).includes('s');
|
|
9335
|
+
/** 是否是left */
|
|
9336
|
+
const isL = (cursor) => removeSuffix(cursor).includes('w');
|
|
9337
|
+
const toPx = (num) => num + 'px';
|
|
9338
|
+
const toPercent = (num, base = 1) => num * base + '%';
|
|
9339
|
+
const toNumber = (str) => {
|
|
9340
|
+
const p = parseFloat(str);
|
|
9341
|
+
return isNaN(p) ? 0 : p;
|
|
9342
|
+
};
|
|
9343
|
+
|
|
9428
9344
|
const MUTABLE_BASIC_OPTIONS = {
|
|
9429
9345
|
directions: [true, true, true, true],
|
|
9430
9346
|
resizeThreshold: 5,
|
|
@@ -12352,113 +12268,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
|
|
|
12352
12268
|
type: Input
|
|
12353
12269
|
}], kind: [{ type: i0.Input, args: [{ isSignal: true, alias: "kind", required: false }] }], apiVersion: [{ type: i0.Input, args: [{ isSignal: true, alias: "apiVersion", required: false }] }], resource: [{ type: i0.Input, args: [{ isSignal: true, alias: "resource", required: false }] }] } });
|
|
12354
12270
|
|
|
12355
|
-
class KubernetesSchemaService {
|
|
12356
|
-
constructor() {
|
|
12357
|
-
this.http = inject(HttpClient);
|
|
12358
|
-
this.initialized = false;
|
|
12359
|
-
this.schemaCache = new Map();
|
|
12360
|
-
this.schemaCache$$ = new BehaviorSubject(new Map());
|
|
12361
|
-
this.getDefinitionKey = memoize((k8sResourceDefinition, definitions) => {
|
|
12362
|
-
return findKey(definitions, (def) => {
|
|
12363
|
-
return some(def['x-kubernetes-group-version-kind'], ({ group, version, kind }) => {
|
|
12364
|
-
return ((k8sResourceDefinition?.apiGroup ?? '') === (group || '') &&
|
|
12365
|
-
k8sResourceDefinition?.apiVersion === version &&
|
|
12366
|
-
k8sResourceDefinition?.kind === kind);
|
|
12367
|
-
});
|
|
12368
|
-
});
|
|
12369
|
-
}, k8sResourceDefinition => {
|
|
12370
|
-
return [
|
|
12371
|
-
k8sResourceDefinition.apiGroup || 'core',
|
|
12372
|
-
k8sResourceDefinition.apiVersion,
|
|
12373
|
-
k8sResourceDefinition.kind,
|
|
12374
|
-
].join('~');
|
|
12375
|
-
});
|
|
12376
|
-
}
|
|
12377
|
-
// 延迟初始化方法
|
|
12378
|
-
ensureInitialized() {
|
|
12379
|
-
if (!this.initialized) {
|
|
12380
|
-
this.clearCache();
|
|
12381
|
-
this.initialized = true;
|
|
12382
|
-
}
|
|
12383
|
-
}
|
|
12384
|
-
/**
|
|
12385
|
-
* 获取当前集群的 OpenAPI schema
|
|
12386
|
-
*/
|
|
12387
|
-
getOpenAPISchema(cluster) {
|
|
12388
|
-
this.ensureInitialized();
|
|
12389
|
-
const cached = this.schemaCache.get(cluster);
|
|
12390
|
-
if (cached) {
|
|
12391
|
-
return of(cached);
|
|
12392
|
-
}
|
|
12393
|
-
return this.fetchOpenAPISchema(cluster).pipe(tap(schema => {
|
|
12394
|
-
if (schema) {
|
|
12395
|
-
this.schemaCache.set(cluster, schema);
|
|
12396
|
-
this.schemaCache$$.next(new Map(this.schemaCache));
|
|
12397
|
-
}
|
|
12398
|
-
}), catchError(error => {
|
|
12399
|
-
console.error(`Failed to fetch OpenAPI schema for cluster ${cluster}:`, error);
|
|
12400
|
-
return of(null);
|
|
12401
|
-
}), shareReplay(1));
|
|
12402
|
-
}
|
|
12403
|
-
/**
|
|
12404
|
-
* 根据 Kubernetes 资源类型获取对应的 schema
|
|
12405
|
-
*/
|
|
12406
|
-
getResourceSchema(apiVersion, kind, cluster) {
|
|
12407
|
-
return this.getOpenAPISchema(cluster).pipe(switchMap(openApiDoc => {
|
|
12408
|
-
if (!openApiDoc?.definitions) {
|
|
12409
|
-
return of(null);
|
|
12410
|
-
}
|
|
12411
|
-
const parts = apiVersion.split('/');
|
|
12412
|
-
const group = parts.length === 1 ? '' : parts[0];
|
|
12413
|
-
const version = parts.length === 1 ? parts[0] : parts[1];
|
|
12414
|
-
const definitionKey = this.getDefinitionKey({
|
|
12415
|
-
apiGroup: group,
|
|
12416
|
-
apiVersion: version,
|
|
12417
|
-
kind,
|
|
12418
|
-
}, openApiDoc.definitions);
|
|
12419
|
-
const schema = openApiDoc.definitions[definitionKey];
|
|
12420
|
-
return of(schema || null);
|
|
12421
|
-
}));
|
|
12422
|
-
}
|
|
12423
|
-
/**
|
|
12424
|
-
* 获取所有可用的资源定义
|
|
12425
|
-
*/
|
|
12426
|
-
getAllResourceDefinitions(cluster) {
|
|
12427
|
-
return this.getOpenAPISchema(cluster).pipe(switchMap(openApiDoc => {
|
|
12428
|
-
return of(openApiDoc?.definitions || null);
|
|
12429
|
-
}));
|
|
12430
|
-
}
|
|
12431
|
-
/**
|
|
12432
|
-
* 清理缓存
|
|
12433
|
-
*/
|
|
12434
|
-
clearCache() {
|
|
12435
|
-
this.schemaCache.clear();
|
|
12436
|
-
this.schemaCache$$.next(new Map());
|
|
12437
|
-
}
|
|
12438
|
-
/**
|
|
12439
|
-
* 获取缓存状态
|
|
12440
|
-
*/
|
|
12441
|
-
getCacheStatus() {
|
|
12442
|
-
return this.schemaCache$$.asObservable();
|
|
12443
|
-
}
|
|
12444
|
-
/**
|
|
12445
|
-
* 从 Kubernetes API 获取 OpenAPI schema
|
|
12446
|
-
*/
|
|
12447
|
-
fetchOpenAPISchema(cluster) {
|
|
12448
|
-
const url = `${API_GATEWAY$1}/kubernetes/${cluster}/openapi/v2`;
|
|
12449
|
-
return this.http.get(url).pipe(debounceTime(500), catchError(error => {
|
|
12450
|
-
console.error(`Failed to fetch OpenAPI schema for cluster ${cluster}:`, error);
|
|
12451
|
-
return of(null);
|
|
12452
|
-
}));
|
|
12453
|
-
}
|
|
12454
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: KubernetesSchemaService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
12455
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: KubernetesSchemaService, providedIn: 'root' }); }
|
|
12456
|
-
}
|
|
12457
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: KubernetesSchemaService, decorators: [{
|
|
12458
|
-
type: Injectable,
|
|
12459
|
-
args: [{ providedIn: 'root' }]
|
|
12460
|
-
}] });
|
|
12461
|
-
|
|
12462
12271
|
/**
|
|
12463
12272
|
* @packageDocumentation
|
|
12464
12273
|
* @module k8s-shared
|
|
@@ -12479,13 +12288,24 @@ class CodeDisplayDialogComponent {
|
|
|
12479
12288
|
};
|
|
12480
12289
|
}
|
|
12481
12290
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: CodeDisplayDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
12482
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: CodeDisplayDialogComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<aui-dialog-header [divider]=\"false\">\n <div [class.ellipsis-dialog-header]=\"data.ellipsis\">\n <span [class.text-ellipsis]=\"data.ellipsis\">\n {{ data.title || ('view_yaml' | translate) }}\n </span>\n @if (data.extra) {\n <span class=\"extra\">{{ data.extra }}</span>\n }\n </div>\n</aui-dialog-header>\n<aui-dialog-content>\n <aui-code-editor\n style=\"display: block; height: 65vh\"\n [ngModel]=\"data.code || ''\"\n [options]=\"codeEditorOptions\"\n [actionsConfig]=\"editorActions\"\n ></aui-code-editor>\n</aui-dialog-content>\n", dependencies: [{ kind: "component", type: i1.DialogHeaderComponent, selector: "aui-dialog-header", inputs: ["divider", "closeable", "result"] }, { kind: "component", type: i1.DialogContentComponent, selector: "aui-dialog-content" }, { kind: "
|
|
12291
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: CodeDisplayDialogComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<aui-dialog-header [divider]=\"false\">\n <div [class.ellipsis-dialog-header]=\"data.ellipsis\">\n <span [class.text-ellipsis]=\"data.ellipsis\">\n {{ data.title || ('view_yaml' | translate) }}\n </span>\n @if (data.extra) {\n <span class=\"extra\">{{ data.extra }}</span>\n }\n </div>\n</aui-dialog-header>\n<aui-dialog-content>\n <aui-code-editor\n style=\"display: block; height: 65vh\"\n [ngModel]=\"data.code || ''\"\n [options]=\"codeEditorOptions\"\n [actionsConfig]=\"editorActions\"\n ></aui-code-editor>\n</aui-dialog-content>\n", dependencies: [{ kind: "component", type: i1.DialogHeaderComponent, selector: "aui-dialog-header", inputs: ["divider", "closeable", "result"] }, { kind: "component", type: i1.DialogContentComponent, selector: "aui-dialog-content" }, { kind: "component", type: CodeEditorComponent, selector: "aui-code-editor", inputs: ["options", "plain", "showLanguageLabel", "value", "originalValue", "actionsConfig", "previewMode", "diffMode", "modelUri"], outputs: ["editorChange", "editorBlur"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
12483
12292
|
}
|
|
12484
12293
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: CodeDisplayDialogComponent, decorators: [{
|
|
12485
12294
|
type: Component,
|
|
12486
|
-
args: [{ preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [DIALOG_MODULE,
|
|
12295
|
+
args: [{ preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [DIALOG_MODULE, CodeEditorComponent, FormsModule, TranslatePipe], template: "<aui-dialog-header [divider]=\"false\">\n <div [class.ellipsis-dialog-header]=\"data.ellipsis\">\n <span [class.text-ellipsis]=\"data.ellipsis\">\n {{ data.title || ('view_yaml' | translate) }}\n </span>\n @if (data.extra) {\n <span class=\"extra\">{{ data.extra }}</span>\n }\n </div>\n</aui-dialog-header>\n<aui-dialog-content>\n <aui-code-editor\n style=\"display: block; height: 65vh\"\n [ngModel]=\"data.code || ''\"\n [options]=\"codeEditorOptions\"\n [actionsConfig]=\"editorActions\"\n ></aui-code-editor>\n</aui-dialog-content>\n" }]
|
|
12487
12296
|
}], ctorParameters: () => [] });
|
|
12488
12297
|
|
|
12298
|
+
/**
|
|
12299
|
+
* @packageDocumentation
|
|
12300
|
+
* @module code
|
|
12301
|
+
*/
|
|
12302
|
+
// for logs
|
|
12303
|
+
const logsReadOptions = {
|
|
12304
|
+
wordWrap: 'on',
|
|
12305
|
+
readOnly: true,
|
|
12306
|
+
renderLineHighlight: 'none',
|
|
12307
|
+
};
|
|
12308
|
+
|
|
12489
12309
|
class ResourceYamlDisplayComponent {
|
|
12490
12310
|
constructor() {
|
|
12491
12311
|
this.concise$$ = new BehaviorSubject(false);
|
|
@@ -12509,7 +12329,7 @@ class ResourceYamlDisplayComponent {
|
|
|
12509
12329
|
}
|
|
12510
12330
|
}
|
|
12511
12331
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: ResourceYamlDisplayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
12512
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: ResourceYamlDisplayComponent, isStandalone: true, selector: "acl-resource-yaml-display", inputs: { hasWrapper: "hasWrapper", conciseEnable: "conciseEnable", manageFieldActionEnable: "manageFieldActionEnable", resource: "resource" }, ngImport: i0, template: "@if (hasWrapper) {\n <aui-card>\n <ng-container *ngTemplateOutlet=\"content\" />\n </aui-card>\n} @else {\n <aui-code-editor\n name=\"yaml\"\n [ngModel]=\"yaml$ | async\"\n [options]=\"editorOptions\"\n [actionsConfig]=\"viewActions\"\n >\n <ng-container auiCodeEditorToolbarLeft>\n @if (conciseEnable) {\n <aui-checkbox\n class=\"aui-code-editor-toolbar__control-button\"\n [ngModel]=\"concise$$ | async\"\n (ngModelChange)=\"conciseChange($event)\"\n >\n {{ 'preview_concise_yaml' | translate }}\n </aui-checkbox>\n }\n @if (manageFieldActionEnable) {\n <aui-checkbox\n [hidden]=\"concise$$ | async\"\n class=\"aui-code-editor-toolbar__control-button\"\n [ngModel]=\"reduce$$ | async\"\n (ngModelChange)=\"reduce$$.next($event)\"\n >\n {{ 'hide_manage_fields_field' | translate }}\n </aui-checkbox>\n }\n </ng-container>\n </aui-code-editor>\n}\n<ng-template #content>\n <aui-code-editor\n name=\"yaml\"\n [ngModel]=\"yaml$ | async\"\n [options]=\"editorOptions\"\n [actionsConfig]=\"viewActions\"\n >\n <ng-container auiCodeEditorToolbarLeft>\n @if (conciseEnable) {\n <aui-checkbox\n class=\"aui-code-editor-toolbar__control-button\"\n [ngModel]=\"concise$$ | async\"\n (ngModelChange)=\"conciseChange($event)\"\n >\n {{ 'preview_concise_yaml' | translate }}\n </aui-checkbox>\n }\n @if (manageFieldActionEnable) {\n <aui-checkbox\n [hidden]=\"concise$$ | async\"\n class=\"aui-code-editor-toolbar__control-button\"\n [ngModel]=\"reduce$$ | async\"\n (ngModelChange)=\"reduce$$.next($event)\"\n >\n {{ 'hide_manage_fields_field' | translate }}\n </aui-checkbox>\n }\n </ng-container>\n </aui-code-editor>\n</ng-template>\n", styles: [":host(:not(.dialog-content)) ::ng-deep .aui-code-editor{min-height:100%}:host(:not(.dialog-content)){display:block;height:calc(100vh - (var(--acl-page-header-height) + 44px) - 147px)}:host(:not(.dialog-content))>.aui-card{height:100%}:host(:not(.dialog-content))>.aui-card .aui-card__content,:host(:not(.dialog-content))>.aui-card aui-code-editor,:host(:not(.dialog-content))>.aui-card .aui-code-editor{height:100%;min-height:100%}:host{display:block}:host ::ng-deep aui-card,:host ::ng-deep .aui-card,:host ::ng-deep .aui-card__content{height:100%}:host ::ng-deep .aui-checkbox{margin-right:0}:host aui-code-editor{height:100%}\n"], dependencies: [{ kind: "component", type: i1.CardComponent, selector: "aui-card", inputs: ["divider"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1.CheckboxComponent, selector: "aui-checkbox", inputs: ["name", "type", "label", "indeterminate"] }, { kind: "
|
|
12332
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: ResourceYamlDisplayComponent, isStandalone: true, selector: "acl-resource-yaml-display", inputs: { hasWrapper: "hasWrapper", conciseEnable: "conciseEnable", manageFieldActionEnable: "manageFieldActionEnable", resource: "resource" }, ngImport: i0, template: "@if (hasWrapper) {\n <aui-card>\n <ng-container *ngTemplateOutlet=\"content\" />\n </aui-card>\n} @else {\n <aui-code-editor\n name=\"yaml\"\n [ngModel]=\"yaml$ | async\"\n [options]=\"editorOptions\"\n [actionsConfig]=\"viewActions\"\n >\n <ng-container auiCodeEditorToolbarLeft>\n @if (conciseEnable) {\n <aui-checkbox\n class=\"aui-code-editor-toolbar__control-button\"\n [ngModel]=\"concise$$ | async\"\n (ngModelChange)=\"conciseChange($event)\"\n >\n {{ 'preview_concise_yaml' | translate }}\n </aui-checkbox>\n }\n @if (manageFieldActionEnable) {\n <aui-checkbox\n [hidden]=\"concise$$ | async\"\n class=\"aui-code-editor-toolbar__control-button\"\n [ngModel]=\"reduce$$ | async\"\n (ngModelChange)=\"reduce$$.next($event)\"\n >\n {{ 'hide_manage_fields_field' | translate }}\n </aui-checkbox>\n }\n </ng-container>\n </aui-code-editor>\n}\n<ng-template #content>\n <aui-code-editor\n name=\"yaml\"\n [ngModel]=\"yaml$ | async\"\n [options]=\"editorOptions\"\n [actionsConfig]=\"viewActions\"\n >\n <ng-container auiCodeEditorToolbarLeft>\n @if (conciseEnable) {\n <aui-checkbox\n class=\"aui-code-editor-toolbar__control-button\"\n [ngModel]=\"concise$$ | async\"\n (ngModelChange)=\"conciseChange($event)\"\n >\n {{ 'preview_concise_yaml' | translate }}\n </aui-checkbox>\n }\n @if (manageFieldActionEnable) {\n <aui-checkbox\n [hidden]=\"concise$$ | async\"\n class=\"aui-code-editor-toolbar__control-button\"\n [ngModel]=\"reduce$$ | async\"\n (ngModelChange)=\"reduce$$.next($event)\"\n >\n {{ 'hide_manage_fields_field' | translate }}\n </aui-checkbox>\n }\n </ng-container>\n </aui-code-editor>\n</ng-template>\n", styles: [":host(:not(.dialog-content)) ::ng-deep .aui-code-editor{min-height:100%}:host(:not(.dialog-content)){display:block;height:calc(100vh - (var(--acl-page-header-height) + 44px) - 147px)}:host(:not(.dialog-content))>.aui-card{height:100%}:host(:not(.dialog-content))>.aui-card .aui-card__content,:host(:not(.dialog-content))>.aui-card aui-code-editor,:host(:not(.dialog-content))>.aui-card .aui-code-editor{height:100%;min-height:100%}:host{display:block}:host ::ng-deep aui-card,:host ::ng-deep .aui-card,:host ::ng-deep .aui-card__content{height:100%}:host ::ng-deep .aui-checkbox{margin-right:0}:host aui-code-editor{height:100%}\n"], dependencies: [{ kind: "component", type: i1.CardComponent, selector: "aui-card", inputs: ["divider"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1.CheckboxComponent, selector: "aui-checkbox", inputs: ["name", "type", "label", "indeterminate"] }, { kind: "component", type: CodeEditorComponent, selector: "aui-code-editor", inputs: ["options", "plain", "showLanguageLabel", "value", "originalValue", "actionsConfig", "previewMode", "diffMode", "modelUri"], outputs: ["editorChange", "editorBlur"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
12513
12333
|
}
|
|
12514
12334
|
__decorate([
|
|
12515
12335
|
ObservableInput(),
|
|
@@ -12521,7 +12341,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
|
|
|
12521
12341
|
CARD_MODULE,
|
|
12522
12342
|
FormsModule,
|
|
12523
12343
|
CHECKBOX_MODULE,
|
|
12524
|
-
|
|
12344
|
+
CodeEditorComponent,
|
|
12525
12345
|
TranslatePipe,
|
|
12526
12346
|
AsyncPipe,
|
|
12527
12347
|
NgTemplateOutlet,
|
|
@@ -12536,10 +12356,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
|
|
|
12536
12356
|
type: Input
|
|
12537
12357
|
}], resource$: [] } });
|
|
12538
12358
|
|
|
12539
|
-
/**
|
|
12540
|
-
* @packageDocumentation
|
|
12541
|
-
* @module code
|
|
12542
|
-
*/
|
|
12543
12359
|
class K8sYamlDisplayDialogComponent {
|
|
12544
12360
|
constructor() {
|
|
12545
12361
|
this.data = inject(DIALOG_DATA);
|
|
@@ -13386,7 +13202,7 @@ class ResourceYamlEditorComponent {
|
|
|
13386
13202
|
this.showDebugPanel$$ = new BehaviorSubject(true);
|
|
13387
13203
|
this.monacoEditor = null;
|
|
13388
13204
|
this.registeredSchemas = new Set();
|
|
13389
|
-
this.
|
|
13205
|
+
this.pendingSchemas = new Set();
|
|
13390
13206
|
this.schemaService = inject(KubernetesSchemaService);
|
|
13391
13207
|
this.monacoLanguageService = inject(MonacoLanguageService);
|
|
13392
13208
|
this.hasWrapper = true;
|
|
@@ -13417,8 +13233,7 @@ class ResourceYamlEditorComponent {
|
|
|
13417
13233
|
* 最终使用的 schema,优先使用手动提供的,否则使用自动获取的
|
|
13418
13234
|
*/
|
|
13419
13235
|
this.finalSchema$ = combineLatest([this.schema$, this.autoSchema$]).pipe(map(([manualSchema, autoSchema]) => manualSchema || autoSchema), distinctUntilChanged(), shareReplay(1));
|
|
13420
|
-
this.yamlSchemaService =
|
|
13421
|
-
this.monacoLanguageService.getLanguageSchemaService(['yaml', 'yamlDefaults'], yamlDefaults);
|
|
13236
|
+
this.yamlSchemaService = this.monacoLanguageService.getYamlSchemaService();
|
|
13422
13237
|
// 自动设置 schema
|
|
13423
13238
|
combineLatest([this.resource$, this.finalSchema$])
|
|
13424
13239
|
.pipe(takeUntil(this.destroy$))
|
|
@@ -13534,24 +13349,35 @@ class ResourceYamlEditorComponent {
|
|
|
13534
13349
|
this.modelUri = `${schemaKey}.yaml`;
|
|
13535
13350
|
this.selfFoldManagedFields();
|
|
13536
13351
|
// 检查是否已经注册过相同的 schema,避免重复注册
|
|
13537
|
-
if (this.registeredSchemas.has(schemaKey)
|
|
13352
|
+
if (this.registeredSchemas.has(schemaKey) ||
|
|
13353
|
+
this.pendingSchemas.has(schemaKey)) {
|
|
13538
13354
|
return;
|
|
13539
13355
|
}
|
|
13540
|
-
|
|
13541
|
-
|
|
13542
|
-
|
|
13543
|
-
|
|
13544
|
-
|
|
13545
|
-
|
|
13546
|
-
|
|
13547
|
-
|
|
13548
|
-
|
|
13549
|
-
|
|
13550
|
-
|
|
13551
|
-
|
|
13552
|
-
schema
|
|
13356
|
+
this.pendingSchemas.add(schemaKey);
|
|
13357
|
+
const registerSchema = (schemaToRegister) => {
|
|
13358
|
+
this.yamlSchemaService.addSchema({
|
|
13359
|
+
uri: `k8s://${schemaKey}.schema.json`,
|
|
13360
|
+
fileMatch: [this.modelUri],
|
|
13361
|
+
schema: schemaToRegister,
|
|
13362
|
+
});
|
|
13363
|
+
this.registeredSchemas.add(schemaKey);
|
|
13364
|
+
this.pendingSchemas.delete(schemaKey);
|
|
13365
|
+
};
|
|
13366
|
+
const schemaDefinitions = schema?.definitions;
|
|
13367
|
+
if (schemaDefinitions && Object.keys(schemaDefinitions).length > 0) {
|
|
13368
|
+
registerSchema(schema);
|
|
13369
|
+
return;
|
|
13370
|
+
}
|
|
13371
|
+
this.schemaService
|
|
13372
|
+
.getAllResourceDefinitionsCached(this.clusterName)
|
|
13373
|
+
.pipe(take(1), takeUntil(this.destroy$))
|
|
13374
|
+
.subscribe(definitions => {
|
|
13375
|
+
const fullSchema = {
|
|
13376
|
+
...schema,
|
|
13377
|
+
definitions: definitions || schemaDefinitions || {},
|
|
13378
|
+
};
|
|
13379
|
+
registerSchema(fullSchema);
|
|
13553
13380
|
});
|
|
13554
|
-
this.registeredSchemas.add(schemaKey);
|
|
13555
13381
|
}
|
|
13556
13382
|
/**
|
|
13557
13383
|
* 获取 Monaco 编辑器实例
|
|
@@ -13582,7 +13408,7 @@ class ResourceYamlEditorComponent {
|
|
|
13582
13408
|
useExisting: forwardRef(() => ResourceYamlEditorComponent),
|
|
13583
13409
|
multi: true,
|
|
13584
13410
|
},
|
|
13585
|
-
], viewQueries: [{ propertyName: "codeEditorRef", first: true, predicate: ["codeEditor"], descendants: true }], ngImport: i0, template: "@if (hasWrapper) {\n <aui-card>\n <ng-container *ngTemplateOutlet=\"content\" />\n </aui-card>\n} @else {\n <div\n class=\"yaml-editor-container\"\n [class.with-sidebar]=\"showSidebar$$ | async\"\n >\n <div class=\"yaml-editor-section\">\n <aui-code-editor\n #codeEditor\n name=\"yaml\"\n [originalValue]=\"originalValue\"\n [(ngModel)]=\"value\"\n [options]=\"options\"\n [actionsConfig]=\"actionsConfig\"\n [modelUri]=\"modelUri\"\n >\n <ng-container auiCodeEditorToolbarRightSide>\n <!-- Schema \u6309\u94AE\uFF1A\u5F53\u542F\u7528\u4FA7\u8FB9\u680F\u65F6\u663E\u793A -->\n @if (sidebarEnable && !!(resource$ | async)) {\n <button\n [hidden]=\"!!codeEditor.fullscreenDialog\"\n class=\"aui-code-editor-toolbar__control-button\"\n type=\"button\"\n [disabled]=\"!(finalSchema$ | async) && !exampleEnable\"\n (click)=\"toggleSidebar()\"\n [auiTooltip]=\"\n ((showSidebar$$ | async) ? 'hide_sidebar' : 'view_sidebar')\n | translate\n \"\n >\n <aui-icon\n [icon]=\"\n (showSidebar$$ | async)\n ? 'prod:expand_sidebar'\n : 'prod:collapse_sidebar'\n \"\n ></aui-icon>\n </button>\n }\n </ng-container>\n </aui-code-editor>\n </div>\n @if ((showSidebar$$ | async) && (resource$ | async)) {\n <div class=\"yaml-sidebar-section\">\n <acl-resource-yaml-sidebar\n [resource]=\"getCurrentResource()\"\n [schema]=\"finalSchema$ | async\"\n [schemaEnable]=\"schemaEnable\"\n [exampleEnable]=\"exampleEnable\"\n [extraExamples]=\"extraExamples\"\n (close)=\"toggleSidebar()\"\n (tryYaml)=\"onTryYaml($event)\"\n ></acl-resource-yaml-sidebar>\n </div>\n }\n </div>\n}\n<ng-template #content>\n <div\n class=\"yaml-editor-container\"\n [class.with-sidebar]=\"showSidebar$$ | async\"\n >\n <div class=\"yaml-editor-section\">\n <aui-code-editor\n #codeEditor\n name=\"yaml\"\n [originalValue]=\"originalValue\"\n [(ngModel)]=\"value\"\n [options]=\"options\"\n [actionsConfig]=\"actionsConfig\"\n [modelUri]=\"modelUri\"\n >\n <ng-container auiCodeEditorToolbarRightSide>\n <!-- Schema \u6309\u94AE\uFF1A\u5F53\u542F\u7528\u4FA7\u8FB9\u680F\u65F6\u663E\u793A -->\n @if (sidebarEnable && !!(resource$ | async)) {\n <button\n [hidden]=\"!!codeEditor.fullscreenDialog\"\n class=\"aui-code-editor-toolbar__control-button\"\n type=\"button\"\n [disabled]=\"!(finalSchema$ | async) && !exampleEnable\"\n (click)=\"toggleSidebar()\"\n [auiTooltip]=\"\n ((showSidebar$$ | async) ? 'hide_sidebar' : 'view_sidebar')\n | translate\n \"\n >\n <aui-icon\n [icon]=\"\n (showSidebar$$ | async)\n ? 'prod:expand_sidebar'\n : 'prod:collapse_sidebar'\n \"\n ></aui-icon>\n </button>\n }\n </ng-container>\n </aui-code-editor>\n </div>\n @if ((showSidebar$$ | async) && (resource$ | async)) {\n <div class=\"yaml-sidebar-section\">\n <acl-resource-yaml-sidebar\n [resource]=\"getCurrentResource()\"\n [schema]=\"finalSchema$ | async\"\n [schemaEnable]=\"schemaEnable\"\n [exampleEnable]=\"exampleEnable\"\n [extraExamples]=\"extraExamples\"\n (close)=\"toggleSidebar()\"\n (tryYaml)=\"onTryYaml($event)\"\n ></acl-resource-yaml-sidebar>\n </div>\n }\n </div>\n</ng-template>\n", styles: [":host(:not(.dialog-content)) ::ng-deep .aui-code-editor{min-height:100%}:host(:not(.dialog-content)){display:block;height:calc(100vh - (var(--acl-page-header-height) + 44px) - 147px)}:host(:not(.dialog-content))>.aui-card{height:100%}:host(:not(.dialog-content))>.aui-card .aui-card__content,:host(:not(.dialog-content))>.aui-card aui-code-editor,:host(:not(.dialog-content))>.aui-card .aui-code-editor{height:100%;min-height:100%}:host{display:block}:host ::ng-deep aui-card,:host ::ng-deep .aui-card,:host ::ng-deep .aui-card__content{height:100%}:host ::ng-deep .aui-checkbox{margin-right:0}:host aui-code-editor{height:100%}.yaml-editor-container{display:flex;height:100%}.yaml-editor-container.with-sidebar .yaml-editor-section{flex:2;min-width:0}.yaml-editor-container.with-sidebar .yaml-sidebar-section{flex:1 0 0%}.yaml-editor-container:not(.with-sidebar) .yaml-editor-section{flex:1}.yaml-editor-section{display:flex;flex-direction:column;height:100%}.yaml-editor-section aui-code-editor{flex:1;height:100%}.yaml-sidebar-section{display:flex;flex-direction:column;height:100%}.yaml-sidebar-section acl-resource-yaml-sidebar{flex:1;height:100%}.yaml-debug-section{position:absolute;top:0;right:0;width:350px;height:100%;background:var(--aui-color-bg-container);border-left:1px solid var(--aui-color-border-default);z-index:1000;overflow-y:auto}.debug-panel{padding:16px;font-size:12px}.debug-panel h4{margin:0 0 12px;font-size:14px;color:var(--aui-color-text-primary)}.debug-panel .debug-item{margin-bottom:16px}.debug-panel .debug-item strong{color:var(--aui-color-text-primary);display:block;margin-bottom:4px}.debug-panel .debug-item ul{margin:0;padding-left:16px}.debug-panel .debug-item ul li{margin-bottom:2px;color:var(--aui-color-text-secondary)}.debug-panel .debug-actions{border-top:1px solid var(--aui-color-border-default);padding-top:12px;text-align:right}@media (width <= 1200px){.yaml-editor-container.with-sidebar .yaml-sidebar-section{width:350px}}@media (width <= 992px){.yaml-editor-container.with-sidebar{flex-direction:column}.yaml-editor-container.with-sidebar .yaml-editor-section{flex:1;min-height:50%}.yaml-editor-container.with-sidebar .yaml-sidebar-section{width:100%;height:50%;border-top:1px solid var(--aui-color-border, #e0e0e0);border-left:none}}\n"], dependencies: [{ kind: "component", type: i1.CardComponent, selector: "aui-card", inputs: ["divider"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "
|
|
13411
|
+
], viewQueries: [{ propertyName: "codeEditorRef", first: true, predicate: ["codeEditor"], descendants: true }], ngImport: i0, template: "@if (hasWrapper) {\n <aui-card>\n <ng-container *ngTemplateOutlet=\"content\" />\n </aui-card>\n} @else {\n <div\n class=\"yaml-editor-container\"\n [class.with-sidebar]=\"showSidebar$$ | async\"\n >\n <div class=\"yaml-editor-section\">\n <aui-code-editor\n #codeEditor\n name=\"yaml\"\n [originalValue]=\"originalValue\"\n [(ngModel)]=\"value\"\n [options]=\"options\"\n [actionsConfig]=\"actionsConfig\"\n [modelUri]=\"modelUri\"\n >\n <ng-container auiCodeEditorToolbarRightSide>\n <!-- Schema \u6309\u94AE\uFF1A\u5F53\u542F\u7528\u4FA7\u8FB9\u680F\u65F6\u663E\u793A -->\n @if (sidebarEnable && !!(resource$ | async)) {\n <button\n [hidden]=\"!!codeEditor.fullscreenDialog\"\n class=\"aui-code-editor-toolbar__control-button\"\n type=\"button\"\n [disabled]=\"!(finalSchema$ | async) && !exampleEnable\"\n (click)=\"toggleSidebar()\"\n [auiTooltip]=\"\n ((showSidebar$$ | async) ? 'hide_sidebar' : 'view_sidebar')\n | translate\n \"\n >\n <aui-icon\n [icon]=\"\n (showSidebar$$ | async)\n ? 'prod:expand_sidebar'\n : 'prod:collapse_sidebar'\n \"\n ></aui-icon>\n </button>\n }\n </ng-container>\n </aui-code-editor>\n </div>\n @if ((showSidebar$$ | async) && (resource$ | async)) {\n <div class=\"yaml-sidebar-section\">\n <acl-resource-yaml-sidebar\n [resource]=\"getCurrentResource()\"\n [schema]=\"finalSchema$ | async\"\n [schemaEnable]=\"schemaEnable\"\n [exampleEnable]=\"exampleEnable\"\n [extraExamples]=\"extraExamples\"\n (close)=\"toggleSidebar()\"\n (tryYaml)=\"onTryYaml($event)\"\n ></acl-resource-yaml-sidebar>\n </div>\n }\n </div>\n}\n<ng-template #content>\n <div\n class=\"yaml-editor-container\"\n [class.with-sidebar]=\"showSidebar$$ | async\"\n >\n <div class=\"yaml-editor-section\">\n <aui-code-editor\n #codeEditor\n name=\"yaml\"\n [originalValue]=\"originalValue\"\n [(ngModel)]=\"value\"\n [options]=\"options\"\n [actionsConfig]=\"actionsConfig\"\n [modelUri]=\"modelUri\"\n >\n <ng-container auiCodeEditorToolbarRightSide>\n <!-- Schema \u6309\u94AE\uFF1A\u5F53\u542F\u7528\u4FA7\u8FB9\u680F\u65F6\u663E\u793A -->\n @if (sidebarEnable && !!(resource$ | async)) {\n <button\n [hidden]=\"!!codeEditor.fullscreenDialog\"\n class=\"aui-code-editor-toolbar__control-button\"\n type=\"button\"\n [disabled]=\"!(finalSchema$ | async) && !exampleEnable\"\n (click)=\"toggleSidebar()\"\n [auiTooltip]=\"\n ((showSidebar$$ | async) ? 'hide_sidebar' : 'view_sidebar')\n | translate\n \"\n >\n <aui-icon\n [icon]=\"\n (showSidebar$$ | async)\n ? 'prod:expand_sidebar'\n : 'prod:collapse_sidebar'\n \"\n ></aui-icon>\n </button>\n }\n </ng-container>\n </aui-code-editor>\n </div>\n @if ((showSidebar$$ | async) && (resource$ | async)) {\n <div class=\"yaml-sidebar-section\">\n <acl-resource-yaml-sidebar\n [resource]=\"getCurrentResource()\"\n [schema]=\"finalSchema$ | async\"\n [schemaEnable]=\"schemaEnable\"\n [exampleEnable]=\"exampleEnable\"\n [extraExamples]=\"extraExamples\"\n (close)=\"toggleSidebar()\"\n (tryYaml)=\"onTryYaml($event)\"\n ></acl-resource-yaml-sidebar>\n </div>\n }\n </div>\n</ng-template>\n", styles: [":host(:not(.dialog-content)) ::ng-deep .aui-code-editor{min-height:100%}:host(:not(.dialog-content)){display:block;height:calc(100vh - (var(--acl-page-header-height) + 44px) - 147px)}:host(:not(.dialog-content))>.aui-card{height:100%}:host(:not(.dialog-content))>.aui-card .aui-card__content,:host(:not(.dialog-content))>.aui-card aui-code-editor,:host(:not(.dialog-content))>.aui-card .aui-code-editor{height:100%;min-height:100%}:host{display:block}:host ::ng-deep aui-card,:host ::ng-deep .aui-card,:host ::ng-deep .aui-card__content{height:100%}:host ::ng-deep .aui-checkbox{margin-right:0}:host aui-code-editor{height:100%}.yaml-editor-container{display:flex;height:100%}.yaml-editor-container.with-sidebar .yaml-editor-section{flex:2;min-width:0}.yaml-editor-container.with-sidebar .yaml-sidebar-section{flex:1 0 0%}.yaml-editor-container:not(.with-sidebar) .yaml-editor-section{flex:1}.yaml-editor-section{display:flex;flex-direction:column;height:100%}.yaml-editor-section aui-code-editor{flex:1;height:100%}.yaml-sidebar-section{display:flex;flex-direction:column;height:100%}.yaml-sidebar-section acl-resource-yaml-sidebar{flex:1;height:100%}.yaml-debug-section{position:absolute;top:0;right:0;width:350px;height:100%;background:var(--aui-color-bg-container);border-left:1px solid var(--aui-color-border-default);z-index:1000;overflow-y:auto}.debug-panel{padding:16px;font-size:12px}.debug-panel h4{margin:0 0 12px;font-size:14px;color:var(--aui-color-text-primary)}.debug-panel .debug-item{margin-bottom:16px}.debug-panel .debug-item strong{color:var(--aui-color-text-primary);display:block;margin-bottom:4px}.debug-panel .debug-item ul{margin:0;padding-left:16px}.debug-panel .debug-item ul li{margin-bottom:2px;color:var(--aui-color-text-secondary)}.debug-panel .debug-actions{border-top:1px solid var(--aui-color-border-default);padding-top:12px;text-align:right}@media (width <= 1200px){.yaml-editor-container.with-sidebar .yaml-sidebar-section{width:350px}}@media (width <= 992px){.yaml-editor-container.with-sidebar{flex-direction:column}.yaml-editor-container.with-sidebar .yaml-editor-section{flex:1;min-height:50%}.yaml-editor-container.with-sidebar .yaml-sidebar-section{width:100%;height:50%;border-top:1px solid var(--aui-color-border, #e0e0e0);border-left:none}}\n"], dependencies: [{ kind: "component", type: i1.CardComponent, selector: "aui-card", inputs: ["divider"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: CodeEditorComponent, selector: "aui-code-editor", inputs: ["options", "plain", "showLanguageLabel", "value", "originalValue", "actionsConfig", "previewMode", "diffMode", "modelUri"], outputs: ["editorChange", "editorBlur"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ResourceYamlSidebarComponent, selector: "acl-resource-yaml-sidebar", inputs: ["resource", "schema", "schemaEnable", "exampleEnable", "extraExamples"], outputs: ["close", "tryYaml"] }, { kind: "ngmodule", type: IconModule }, { kind: "component", type: i1.IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i1.TooltipDirective, selector: "[auiTooltip]", inputs: ["auiTooltip", "auiTooltipContext", "auiTooltipClass", "auiTooltipType", "auiTooltipPosition", "auiTooltipTrigger", "auiTooltipDisabled", "auiTooltipHideOnClick", "auiTooltipAnimType"], outputs: ["auiTooltipVisibleChange"], exportAs: ["auiTooltip"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
13586
13412
|
}
|
|
13587
13413
|
__decorate([
|
|
13588
13414
|
ObservableInput(),
|
|
@@ -13599,7 +13425,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
|
|
|
13599
13425
|
FormsModule,
|
|
13600
13426
|
CHECKBOX_MODULE,
|
|
13601
13427
|
ButtonModule,
|
|
13602
|
-
|
|
13428
|
+
CodeEditorComponent,
|
|
13603
13429
|
AsyncPipe,
|
|
13604
13430
|
NgTemplateOutlet,
|
|
13605
13431
|
ResourceYamlSidebarComponent,
|
|
@@ -14005,5 +13831,5 @@ const ASYNC_DATA_MODULE = [
|
|
|
14005
13831
|
* Generated bundle index. Do not edit.
|
|
14006
13832
|
*/
|
|
14007
13833
|
|
|
14008
|
-
export { ACTION, AIT_API_GROUP, ALL, ALL_VALUE, ANNOTATIONS, API_GATEWAY, ARGOCD_GROUP, ARRAY_FORM_TABLE_MODULE, ARRAY_TABLE_FORM_ERROR_BG, ASSIGN_ALL, ASYNC_DATA_MODULE, AccessMode, AccessModes, AclTableVirtualComponent, AclTableVirtualHeaderDefDirective, AclTableVirtualModule, AclTableVirtualPlaceholderDefDirective, AclTableVirtualRowDefDirective, AlaudaDeployStatus, AlaudaRunningStatus, ArrayFormTableComponent, ArrayFormTableFooterDirective, ArrayFormTableHeaderDirective, ArrayFormTableRowControlDirective, ArrayFormTableRowDirective, ArrayFormTableRowErrorDirective, ArrayFormTableRowSeparatorDirective, ArrayFormTableZeroStateDirective, AsyncDataLoader, AsyncFunctionValidatorDirective, AuiCodeEditorHelperDirective, BASE_TIMEZONE, BaseFormContainer, BaseNestedFormControl, BaseNestedFormControlPure, BaseStringMapFormComponent, Bracket, CHART_PICKER_TIME_RANGES, CLUSTER, COMMON_RESOURCE_DEFINITIONS, CORE_UNITS, CORE_UNIT_REG, CREATE, CREATED_AT, CREATION_TIMESTAMP, CREATOR, CRON_ENABLE_7_FOR_SUNDAY, CRON_FORMAT_ERROR, CRON_MIN_INTERVAL_ERROR, CRYPTO_HEADER_KEY, CRYPTO_KEY, CRYPTO_RANDOM_HEADER_KEY, CRYPTO_TYPE, CUSTOM, CUSTOMIZED, CUSTOM_RANGE, CalcPipe, CardSectionComponent, ClickOutsideDirective, CloudHelmRequestStateEnum, CodeDisplayDialogComponent, CoerceNumberDirective, ConfirmDeleteComponent, ConfirmDeleteContentDirective, ConfirmDeleteLabelDirective, ConfirmDeleteTipDirective, ControlValueTraceDirective, CronHumanReadablePipe, CronWeekDays, CrontabNextPipe, CurrentTimeComponent, DATE_FORMAT, DATE_TIME_FORMAT, DEFAULT_CODE_EDITOR_OPTIONS, DEFAULT_CONTAINER_ANNOTATION, DEFAULT_OPERATOR, DEFAULT_OPTIONS, DEFAULT_REASON, DELIMITER, DESCRIPTION, DISPLAY_NAME, DNS1123SubdomainValidator, DOMAIN_PATTERN, DOMAIN_PATTERN_BASE, DOT, DOWNGRADE_WATCH_ENABLED, DOWNGRADE_WATCH_POLLING, DUPLICATE_ERROR_KEY, DUPLICATION_JUSTIFY_STRATEGY, DataSource, DateRangePickerComponent, DeclareDirective, DefaultStatusColorMapper, DefaultStatusIconMapper, DeleteType, DeletingTagComponent, DisabledContainerComponent, DisabledDirective, DragHandleDirective, DurationPipe, E2eAttributeBindingDirective, EFFECT_DIRECTIVE_MODULE, EMAIL_PATTERN, EMPTY, ERRORS_MAPPER_MODULE, ESCAPE_DEACTIVATE_CHECK, ErrorStateComponent, ErrorsMapperComponent, ErrorsMapperDirective, FALSE, FIELDSET_GROUP_COMPONENTS, FeatureGateDirective, FieldSetColumnComponent, FieldSetColumnGroupComponent, FieldSetGroupComponent, FieldSetItemActionDirective, FieldSetItemComponent, FileResultType, FoldableBlockComponent, FoldableItemInTableComponent, FormItemMarginEffectDirective, FunctionValidatorDirective, GLOBAL_CLUSTER, GenericStatusColor, GenericStatusIcon, GuardStatus, HTTP_ADDRESS_PATTERN, HTTP_DUAL_IP_OR_DOMAIN_PATTERN, HTTP_IP_OR_DOMAIN_PATTERN, HYPHEN, HelmRequestPhaseEnum, HelpDocDirective, HelpDocUrlPipe, HelpDocumentComponent, HelpDocumentService, IMAGE_TAG_PATTERN, INT_PATTERN, INT_ZERO_PATTERN, IPV4_IPV6_ADDRESS_HOSTNAME_PORT_PATTERN, IPV6_ADDRESS_HOSTNAME_PATTERN, IPV6_ADDRESS_HOSTNAME_PORT_PATTERN, IPV6_PATTERN_BASE, IP_ADDRESS_HOSTNAME_PATTERN, IP_ADDRESS_HOSTNAME_PATTERN_EXTEND, IP_ADDRESS_HOSTNAME_PORT_PATTERN, IP_ADDRESS_PATTERN, IP_ADDRESS_PORT_PATTERN, IP_ADDRESS_SUBNET_PATTERN, IP_PATTERN, IP_PATTERN_BASE, IP_V4_OR_V6_PATTERN, IP_V6_ADDRESS_PATTERN, IP_V6_PATTERN, InterceptDeactivateDirective, InterceptDeactivateGuard, InterceptDeactivateService, JobStatusColorMapper, JobStatusEnum, JobStatusIconMapper, K8SResourceList, K8SResourceListFooterComponent, K8SResourcePagedList, K8S_APP_API_GROUP, K8S_CORE_API_GROUP, K8S_RESOURCE_LABEL_KEY_NAME_PATTERN, K8S_RESOURCE_LABEL_KEY_PREFIX_PATTERN, K8S_RESOURCE_LABEL_VALUE_PATTERN, K8S_RESOURCE_LIST_MODULE, K8S_RESOURCE_NAME_START_WITH_CHARS_ONLY, K8S_RESOURCE_TRANSLATE_KEY, K8sListFooterLoadingErrorDirective, K8sListFooterNoDataDirective, K8sResourceAction, K8sResourceMarkComponent, K8sResourceTranslateKeyPipe, K8sSharedUtilService, K8sYamlDisplayDialogComponent, KNOWN_COLUMNS, KeyValueFormTableComponent, KeyValueTableComponent,
|
|
13834
|
+
export { ACTION, AIT_API_GROUP, ALL, ALL_VALUE, ANNOTATIONS, API_GATEWAY, ARGOCD_GROUP, ARRAY_FORM_TABLE_MODULE, ARRAY_TABLE_FORM_ERROR_BG, ASSIGN_ALL, ASYNC_DATA_MODULE, AccessMode, AccessModes, AclTableVirtualComponent, AclTableVirtualHeaderDefDirective, AclTableVirtualModule, AclTableVirtualPlaceholderDefDirective, AclTableVirtualRowDefDirective, AlaudaDeployStatus, AlaudaRunningStatus, ArrayFormTableComponent, ArrayFormTableFooterDirective, ArrayFormTableHeaderDirective, ArrayFormTableRowControlDirective, ArrayFormTableRowDirective, ArrayFormTableRowErrorDirective, ArrayFormTableRowSeparatorDirective, ArrayFormTableZeroStateDirective, AsyncDataLoader, AsyncFunctionValidatorDirective, AuiCodeEditorHelperDirective, BASE_TIMEZONE, BUILT_IN_YAML_EXAMPLES, BaseFormContainer, BaseNestedFormControl, BaseNestedFormControlPure, BaseStringMapFormComponent, Bracket, CHART_PICKER_TIME_RANGES, CLUSTER, COMMON_RESOURCE_DEFINITIONS, CORE_UNITS, CORE_UNIT_REG, CREATE, CREATED_AT, CREATION_TIMESTAMP, CREATOR, CRON_ENABLE_7_FOR_SUNDAY, CRON_FORMAT_ERROR, CRON_MIN_INTERVAL_ERROR, CRYPTO_HEADER_KEY, CRYPTO_KEY, CRYPTO_RANDOM_HEADER_KEY, CRYPTO_TYPE, CUSTOM, CUSTOMIZED, CUSTOM_RANGE, CalcPipe, CardSectionComponent, ClickOutsideDirective, CloudHelmRequestStateEnum, CodeDisplayDialogComponent, CoerceNumberDirective, ConfirmDeleteComponent, ConfirmDeleteContentDirective, ConfirmDeleteLabelDirective, ConfirmDeleteTipDirective, ControlValueTraceDirective, CronHumanReadablePipe, CronWeekDays, CrontabNextPipe, CurrentTimeComponent, DATE_FORMAT, DATE_TIME_FORMAT, DEFAULT_CODE_EDITOR_OPTIONS, DEFAULT_CONTAINER_ANNOTATION, DEFAULT_OPERATOR, DEFAULT_OPTIONS, DEFAULT_REASON, DELIMITER, DESCRIPTION, DISPLAY_NAME, DNS1123SubdomainValidator, DOMAIN_PATTERN, DOMAIN_PATTERN_BASE, DOT, DOWNGRADE_WATCH_ENABLED, DOWNGRADE_WATCH_POLLING, DUPLICATE_ERROR_KEY, DUPLICATION_JUSTIFY_STRATEGY, DataSource, DateRangePickerComponent, DeclareDirective, DefaultStatusColorMapper, DefaultStatusIconMapper, DeleteType, DeletingTagComponent, DisabledContainerComponent, DisabledDirective, DragHandleDirective, DurationPipe, E2eAttributeBindingDirective, EFFECT_DIRECTIVE_MODULE, EMAIL_PATTERN, EMPTY, ERRORS_MAPPER_MODULE, ESCAPE_DEACTIVATE_CHECK, ErrorStateComponent, ErrorsMapperComponent, ErrorsMapperDirective, FALSE, FIELDSET_GROUP_COMPONENTS, FeatureGateDirective, FieldSetColumnComponent, FieldSetColumnGroupComponent, FieldSetGroupComponent, FieldSetItemActionDirective, FieldSetItemComponent, FileResultType, FoldableBlockComponent, FoldableItemInTableComponent, FormItemMarginEffectDirective, FunctionValidatorDirective, GLOBAL_CLUSTER, GenericStatusColor, GenericStatusIcon, GuardStatus, HTTP_ADDRESS_PATTERN, HTTP_DUAL_IP_OR_DOMAIN_PATTERN, HTTP_IP_OR_DOMAIN_PATTERN, HYPHEN, HelmRequestPhaseEnum, HelpDocDirective, HelpDocUrlPipe, HelpDocumentComponent, HelpDocumentService, IMAGE_TAG_PATTERN, INT_PATTERN, INT_ZERO_PATTERN, IPV4_IPV6_ADDRESS_HOSTNAME_PORT_PATTERN, IPV6_ADDRESS_HOSTNAME_PATTERN, IPV6_ADDRESS_HOSTNAME_PORT_PATTERN, IPV6_PATTERN_BASE, IP_ADDRESS_HOSTNAME_PATTERN, IP_ADDRESS_HOSTNAME_PATTERN_EXTEND, IP_ADDRESS_HOSTNAME_PORT_PATTERN, IP_ADDRESS_PATTERN, IP_ADDRESS_PORT_PATTERN, IP_ADDRESS_SUBNET_PATTERN, IP_PATTERN, IP_PATTERN_BASE, IP_V4_OR_V6_PATTERN, IP_V6_ADDRESS_PATTERN, IP_V6_PATTERN, InterceptDeactivateDirective, InterceptDeactivateGuard, InterceptDeactivateService, JobStatusColorMapper, JobStatusEnum, JobStatusIconMapper, K8SResourceList, K8SResourceListFooterComponent, K8SResourcePagedList, K8S_APP_API_GROUP, K8S_CORE_API_GROUP, K8S_RESOURCE_LABEL_KEY_NAME_PATTERN, K8S_RESOURCE_LABEL_KEY_PREFIX_PATTERN, K8S_RESOURCE_LABEL_VALUE_PATTERN, K8S_RESOURCE_LIST_MODULE, K8S_RESOURCE_NAME_START_WITH_CHARS_ONLY, K8S_RESOURCE_TRANSLATE_KEY, K8sListFooterLoadingErrorDirective, K8sListFooterNoDataDirective, K8sResourceAction, K8sResourceMarkComponent, K8sResourceTranslateKeyPipe, K8sSharedUtilService, K8sYamlDisplayDialogComponent, KNOWN_COLUMNS, KeyValueFormTableComponent, KeyValueTableComponent, LABELS, LINK, LOCAL_STORAGE_KEY_THEME_MODE, ListDisplayComponent, ListenResizeDirective, LoadAction, LocaleTransformPipe, MACHINE_API_GROUP, METADATA, MUTABLE_BASIC_OPTIONS, MUTABLE_MODULE, MarkedPipe, MaxLengthValidatorDirective, MaxValidatorDirective, MinLengthValidatorDirective, MinValidatorDirective, MinimumFormatPipe, MosaicComponent, MosaicLeftDirective, MosaicRightDirective, MultiSearchActionInputComponent, MultiSearchAdvanced, MultiSearchBasic, MultiSearchComponent, MutableDirective, NAME, NAMESPACE, NOTIFICATION_SERVER_NAME, NOTIFY_DURATION_HEADER, NOTIFY_ON_ERROR_HEADER, NOTIFY_ON_ERROR_HEADERS, NOT_NOTIFY_ON_ERROR_HEADERS, NUMBER_PATTERN, NamespaceBadgeComponent, NotBeValidatorDirective, OAM_GROUP, OnResizeChangeService, OneOfValidatorDirective, OverviewBannerComponent, PACKAGE_RUNTIME_VALUE, PAGE_GUARD_MODULE, PLATFORM_OPS_MODE, PORT_PATTERN, POSITIVE_INT_PATTERN, POSITIVE_NUMBER_PATTERN, PREFIX_LABEL_CLASS, PROJECT, PUBLIC_NAMESPACE, PageGuardComponent, PageGuardContentDirective, PageGuardDescriptionDirective, PageGuardImageDirective, PageGuardOperationDirective, PageStateComponent, ParseJsonTranslatePipe, PasswordInputComponent, PluginClusterSelectorComponent, PodStatusColorMapper, PodStatusComponent, PodStatusEnum, PodStatusIconMapper, PreventClipboardDirective, PreventDirective, PreventHandler, ProductKey, REASON_MAP, RESOURCE_MAC_TYPES, RESOURCE_REQUIREMENT_KEYS, ReadonlyFieldDirective, Reason, RelativeTimeComponent, RequestPool, ResizeDirective, ResourceLabelComponent, ResourceMultiSelectComponent, ResourceYamlDisplayComponent, ResourceYamlEditorComponent, SERVICE_PORT_BASE_PROTOCOLS, SERVICE_PORT_PROTOCOLS, SERVICE_SESSION_AFFINITIES, SERVICE_TYPES, SLASH, SPACE, SPEC, STATUS, STRATEGY_JUDGE_MAPPER, STRONG_PASSWORD_SPECIAL_CHARS, ScrollBorderObserverDirective, ScrollToFirstInvalidDirective, ScrollToFirstInvalidMarkerDirective, SearchItemComponent, SearchItemLabelDirective, SearchPanelComponent, SecretType, SelectPrefixLabelDirective, SpanComponent, StatusIconComponent, StopDirective, StringArrayFormTableComponent, StrongPasswordDirective, StrongPasswordTooltipComponent, TEMPLATE_OPTIONS, TIMEZONES, TIME_FORMAT, TOKEN_HELP_DOC_DATA, TRUE, TableCellDefDirective, TableComponent, TableCustomColumnsComponent, TableHeaderCellDefDirective, TableUtilService, TagsLabelComponent, TaintEffect, TerminatingTagComponent, TestTagComponent, TextEllipsisComponent, TextTooltipDirective, TextWithUrlComponent, ThemeTransformPipe, TimezoneDisplayPipe, TolerationOperator, TrimDirective, UNDERSCORE, UNITS, UNIT_REG, UPDATE, UPDATED_AT, UPDATED__AT, UpdateDescriptionDialogComponent, UpdateDisplayNameDialogComponent, UpdateKeyValueDialogComponent, UploadFileComponent, UserSecurityPolicyRule, UserState, VOLUME_SNAPSHOT_GROUP, ValidateRowDuplicateService, ValidatorsDirective, VolumeMode, VolumeModes, VolumeTypeEnum, WEEK_DAYS, WILDCARD, WORKSPACE_PARAMS, WorkloadKind, WorkloadStatusColorMapper, WorkloadStatusEnum, WorkloadStatusIconComponent, WorkloadStatusIconMapper, YamlUtilService, ZeroStateComponent, addUnitCoreM, addUnitGi, addUnitMi, appendImageHeader, atobWithFallback, buildImageAddress, buildUrl, checkValueExit, clearWindowsXtermTools, compareMinorVersion, compareVersion, copyValue, createNestedFormControl, cronValidator, cronValidatorBasic, dataTransfer, dateValueOf, defaultFilter, defaultSorter, emptyObjectRemoveRuleFactory, errorColor, extractListParamsFromRoute, extractPagedListParams, extractWorkspace, extractWorkspaceFromRoute, filterEmptyValue, filterTrees, findPath, firstPath, formatCPU, formatMemory, formatNumber, genControlDepsMap, getAppropriateMemory, getBaseHref, getCpu, getCronWeekDayNumbers, getDisabledState, getDisabledState$, getHelpDocUrl, getHostname, getJobStatus, getK8sResourceAnnotationErrorMapper, getK8sResourceAnnotationErrorMapper$, getK8sResourceLabelErrorMapper, getK8sResourceLabelErrorMapper$, getMemory, getPickerTimeRanges, getPodAggregatedStatus, getPodIPs, getPodStatus, getPrivateIP, getPrivateIPv4, getPrivateIPv6, getRelativePath, getResourceLimitAsyncValidatorFn, getResourceLimitValidatorFn, getResourceValue, getResourceViewModel, getToPath, getValidVersion, getWorkloadStatus, initGreaterValidator, isAbsoluteUrl, isB, isCronFieldCountCorrect, isCronWeekDayCorrect, isCronWeekDaysContinuous, isErrorMessage, isJsonObjectString, isK8sResource, isL, isR, isSelectAll, isT, isValidRID, isValidWorkspace, k8sResourceAnnotationKeyValidator, k8sResourceAnnotationValidator, k8sResourceLabelKeyValidator, k8sResourceLabelValidator, k8sResourceLabelValueValidator, loadEnv, logsReadOptions, mapTrees, matchExpressionsToString, matchLabelsToString, maxParallelByHttpVersion, noShowRowError, normalizeParams, numToStr, parseDaemonSetStatus, parseDeploymentStatus, parseImageAddress, parseRID, parseStatefulSetStatus, parseToWorkloadStatus, parseUrlInText, parseValidImageName, parseValueAndUnit, parseVersion, parseWorkspace, prefixFilterRuleFactory, primaryColor, queryListParams, randomPassword, reduceTrees, removeDirtyFieldsBeforeUpdate, resourceUnits, rowBackgroundColorFn, safeAssign, scrollIntoView, setNode, setupErrorMapper, shortNum, sortByCreationTimestamp, stringToMatchLabels, stringifyRID, stringifyWorkspace, successColor, tableSort, tableSortAdvance, tagRenderDefault, toLowerFirstLetter, toNumber, toPercent, toPx, toUnitGi, toUnitI, toUnitMi, toUnitNum, toUnitNumM, trackByName, trackByUid, transferResource, versionRegex, warnColor, withLoadState, workspaceToPath, yamlFilterField };
|
|
14009
13835
|
//# sourceMappingURL=alauda-fe-dynamic-plugin-shared.mjs.map
|