@ai-table/grid 0.0.38 → 0.0.39
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.
- package/components/cell-editors/text/text-editor.component.d.ts +1 -0
- package/components/cell-editors/text/text-editor.component.d.ts.map +1 -1
- package/components/field-setting/field-setting.component.d.ts +12 -8
- package/components/field-setting/field-setting.component.d.ts.map +1 -1
- package/core/constants/field.d.ts +4 -0
- package/core/constants/field.d.ts.map +1 -1
- package/core/utils/field.d.ts.map +1 -1
- package/esm2022/components/cell-editors/text/text-editor.component.mjs +6 -3
- package/esm2022/components/field-setting/field-setting.component.mjs +48 -28
- package/esm2022/core/constants/field.mjs +20 -22
- package/esm2022/core/utils/field.mjs +8 -4
- package/esm2022/pipes/grid.pipe.mjs +9 -11
- package/esm2022/renderer/drawers/cell-drawer.mjs +13 -6
- package/fesm2022/ai-table-grid.mjs +92 -65
- package/fesm2022/ai-table-grid.mjs.map +1 -1
- package/package.json +1 -1
- package/pipes/grid.pipe.d.ts +5 -5
- package/pipes/grid.pipe.d.ts.map +1 -1
- package/renderer/drawers/cell-drawer.d.ts +1 -0
- package/renderer/drawers/cell-drawer.d.ts.map +1 -1
@@ -4,6 +4,7 @@ import * as i0 from "@angular/core";
|
|
4
4
|
export declare class TextCellEditorComponent extends AbstractEditCellEditor<string> implements AfterViewInit {
|
5
5
|
private render2;
|
6
6
|
private maxHeight;
|
7
|
+
private minHeight;
|
7
8
|
constructor();
|
8
9
|
ngAfterViewInit(): void;
|
9
10
|
updateStyle(): void;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"text-editor.component.d.ts","sourceRoot":"","sources":["../../../../../packages/grid/src/components/cell-editors/text/text-editor.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAyD,MAAM,eAAe,CAAC;AAIrG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;;AAE3E,qBAqBa,uBAAwB,SAAQ,sBAAsB,CAAC,MAAM,CAAE,YAAW,aAAa;IAChG,OAAO,CAAC,OAAO,CAAqB;
|
1
|
+
{"version":3,"file":"text-editor.component.d.ts","sourceRoot":"","sources":["../../../../../packages/grid/src/components/cell-editors/text/text-editor.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAyD,MAAM,eAAe,CAAC;AAIrG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;;AAE3E,qBAqBa,uBAAwB,SAAQ,sBAAsB,CAAC,MAAM,CAAE,YAAW,aAAa;IAChG,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,SAAS,CAAO;IAExB,OAAO,CAAC,SAAS,CAAM;;IAMvB,eAAe;IAMf,WAAW;IAaX,WAAW;IAIX,WAAW;yCAjCF,uBAAuB;2CAAvB,uBAAuB;CAqCnC"}
|
@@ -1,26 +1,30 @@
|
|
1
|
-
import { TemplateRef } from '@angular/core';
|
1
|
+
import { OnInit, TemplateRef } from '@angular/core';
|
2
2
|
import { ThyFormValidatorConfig } from 'ngx-tethys/form';
|
3
3
|
import { ThyPopoverRef } from 'ngx-tethys/popover';
|
4
|
-
import { AITable, AITableField, AITableFieldOption, SetFieldOptions } from '../../core';
|
4
|
+
import { AITable, AITableField, AITableFieldOption, SetFieldOptions, AITableFieldType } from '../../core';
|
5
5
|
import * as i0 from "@angular/core";
|
6
|
-
export declare class AITableFieldSetting {
|
6
|
+
export declare class AITableFieldSetting implements OnInit {
|
7
7
|
aiEditField: import("@angular/core").ModelSignal<AITableField>;
|
8
|
-
aiTable: AITable
|
9
|
-
aiExternalTemplate: TemplateRef<any> | null
|
10
|
-
isUpdate: boolean
|
8
|
+
aiTable: import("@angular/core").InputSignal<AITable>;
|
9
|
+
aiExternalTemplate: import("@angular/core").InputSignal<TemplateRef<any> | null>;
|
10
|
+
isUpdate: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
|
11
11
|
addField: import("@angular/core").OutputEmitterRef<AITableField>;
|
12
12
|
setField: import("@angular/core").OutputEmitterRef<SetFieldOptions<unknown>>;
|
13
13
|
selectedFieldOption: import("@angular/core").Signal<AITableFieldOption>;
|
14
14
|
fieldMaxLength: number;
|
15
15
|
validatorConfig: ThyFormValidatorConfig;
|
16
16
|
fieldOptions: AITableFieldOption[];
|
17
|
+
aITableFieldType: typeof AITableFieldType;
|
18
|
+
isMultipleMember: boolean;
|
17
19
|
protected thyPopoverRef: ThyPopoverRef<any, any, any>;
|
20
|
+
ngOnInit(): void;
|
18
21
|
checkUniqueName: (fieldName: string) => import("rxjs").Observable<boolean>;
|
19
22
|
selectFieldType(field: AITableFieldOption): void;
|
20
23
|
editFieldProperty(): void;
|
24
|
+
multipleMemberChange(): void;
|
25
|
+
fieldTypeClick(e: Event): void;
|
21
26
|
cancel(): void;
|
22
27
|
static ɵfac: i0.ɵɵFactoryDeclaration<AITableFieldSetting, never>;
|
23
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AITableFieldSetting, "ai-table-field-setting", never, { "aiEditField": { "alias": "aiEditField"; "required": true; "isSignal": true; }; "aiTable": { "alias": "aiTable"; "required": true; }; "aiExternalTemplate": { "alias": "aiExternalTemplate"; "required": false; }; "isUpdate": { "alias": "isUpdate"; "required": false; }; }, { "aiEditField": "aiEditFieldChange"; "addField": "addField"; "setField": "setField"; }, never, never, true, never>;
|
24
|
-
static ngAcceptInputType_isUpdate: unknown;
|
28
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AITableFieldSetting, "ai-table-field-setting", never, { "aiEditField": { "alias": "aiEditField"; "required": true; "isSignal": true; }; "aiTable": { "alias": "aiTable"; "required": true; "isSignal": true; }; "aiExternalTemplate": { "alias": "aiExternalTemplate"; "required": false; "isSignal": true; }; "isUpdate": { "alias": "isUpdate"; "required": false; "isSignal": true; }; }, { "aiEditField": "aiEditFieldChange"; "addField": "addField"; "setField": "setField"; }, never, never, true, never>;
|
25
29
|
}
|
26
30
|
//# sourceMappingURL=field-setting.component.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"field-setting.component.d.ts","sourceRoot":"","sources":["../../../../packages/grid/src/components/field-setting/field-setting.component.ts"],"names":[],"mappings":"AACA,OAAO,
|
1
|
+
{"version":3,"file":"field-setting.component.d.ts","sourceRoot":"","sources":["../../../../packages/grid/src/components/field-setting/field-setting.component.ts"],"names":[],"mappings":"AACA,OAAO,EAGH,MAAM,EACN,WAAW,EAOd,MAAM,eAAe,CAAC;AAWvB,OAAO,EAAiB,sBAAsB,EAA2B,MAAM,iBAAiB,CAAC;AAIjG,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD,OAAO,EACH,OAAO,EACP,YAAY,EACZ,kBAAkB,EAIlB,eAAe,EACf,gBAAgB,EAEnB,MAAM,YAAY,CAAC;;AAIpB,qBAqCa,mBAAoB,YAAW,MAAM;IAC9C,WAAW,oDAAkC;IAE7C,OAAO,+CAA6B;IAEpC,kBAAkB,+DAAwC;IAE1D,QAAQ,qEAAmE;IAE3E,QAAQ,yDAA0B;IAElC,QAAQ,qEAA6B;IAErC,mBAAmB,qDAEhB;IAEH,cAAc,SAAM;IAEpB,eAAe,EAAE,sBAAsB,CAOrC;IAEF,YAAY,uBAA6B;IAEzC,gBAAgB,0BAAoB;IAEpC,gBAAgB,UAAS;IAEzB,SAAS,CAAC,aAAa,+BAA8C;IAErE,QAAQ,IAAI,IAAI;IAKhB,eAAe,cAAe,MAAM,wCAOlC;IAEF,eAAe,CAAC,KAAK,EAAE,kBAAkB;IAYzC,iBAAiB;IAYjB,oBAAoB;IAUpB,cAAc,CAAC,CAAC,EAAE,KAAK;IAKvB,MAAM;yCAzFG,mBAAmB;2CAAnB,mBAAmB;CA4F/B"}
|
@@ -1,3 +1,7 @@
|
|
1
1
|
import { AITableFieldOption } from '../types';
|
2
|
+
export declare const AI_TABLE_FIELD_MINI_WIDTH = 140;
|
3
|
+
export declare const AI_TABLE_FIELD_MIN_WIDTH = 160;
|
4
|
+
export declare const AI_TABLE_FIELD_MIDDLE_WIDTH = 200;
|
5
|
+
export declare const AI_TABLE_FIELD_MAX_WIDTH = 300;
|
2
6
|
export declare const FieldOptions: AITableFieldOption[];
|
3
7
|
//# sourceMappingURL=field.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../../../packages/grid/src/core/constants/field.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAoB,MAAM,UAAU,CAAC;AAEhE,eAAO,MAAM,YAAY,EAAE,kBAAkB,
|
1
|
+
{"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../../../packages/grid/src/core/constants/field.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAoB,MAAM,UAAU,CAAC;AAEhE,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAC7C,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAC5C,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAC/C,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAE5C,eAAO,MAAM,YAAY,EAAE,kBAAkB,EAwF5C,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../../../packages/grid/src/core/utils/field.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,gBAAgB,
|
1
|
+
{"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../../../packages/grid/src/core/utils/field.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,gBAAgB,EAA8B,MAAM,UAAU,CAAC;AAGnH,eAAO,MAAM,YAAY,UAAW,YAAY,YAK/C,CAAC;AAEF,eAAO,MAAM,aAAa,UAAW,YAAY,YAIhD,CAAC;AAEF,eAAO,MAAM,aAAa,UAAW,YAAY,YAEhD,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,YAAY,uBAQvD;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,kBAAkB,UASjF;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,kCAMjE;AAED,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,kBAAkB,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAOxG;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,GAAE,gBAAwC;;;;EAGlG"}
|
@@ -10,6 +10,7 @@ export class TextCellEditorComponent extends AbstractEditCellEditor {
|
|
10
10
|
super();
|
11
11
|
this.render2 = inject(Renderer2);
|
12
12
|
this.maxHeight = 148;
|
13
|
+
this.minHeight = 24;
|
13
14
|
}
|
14
15
|
ngAfterViewInit() {
|
15
16
|
setTimeout(() => {
|
@@ -19,9 +20,11 @@ export class TextCellEditorComponent extends AbstractEditCellEditor {
|
|
19
20
|
updateStyle() {
|
20
21
|
const textarea = this.elementRef.nativeElement.querySelector('textarea');
|
21
22
|
if (textarea) {
|
22
|
-
|
23
|
+
this.render2.setStyle(textarea, 'height', 'auto');
|
24
|
+
const scrollHeight = textarea.scrollHeight;
|
25
|
+
const newHeight = Math.max(this.minHeight, Math.min(scrollHeight, this.maxHeight)) + 4;
|
23
26
|
this.render2.setStyle(textarea, 'max-height', `${this.maxHeight}px`);
|
24
|
-
this.render2.setStyle(textarea, 'height', `${
|
27
|
+
this.render2.setStyle(textarea, 'height', `${newHeight}px`);
|
25
28
|
this.render2.setStyle(textarea, 'resize', 'none');
|
26
29
|
}
|
27
30
|
}
|
@@ -70,4 +73,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
70
73
|
}
|
71
74
|
}]
|
72
75
|
}], ctorParameters: () => [] });
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvY29tcG9uZW50cy9jZWxsLWVkaXRvcnMvdGV4dC90ZXh0LWVkaXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDckQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDN0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7OztBQXVCM0UsTUFBTSxPQUFPLHVCQUF3QixTQUFRLHNCQUE4QjtJQU12RTtRQUNJLEtBQUssRUFBRSxDQUFDO1FBTkosWUFBTyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM1QixjQUFTLEdBQUcsR0FBRyxDQUFDO1FBRWhCLGNBQVMsR0FBRyxFQUFFLENBQUM7SUFJdkIsQ0FBQztJQUVELGVBQWU7UUFDWCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVc7UUFDUCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDekUsSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUNYLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDbEQsTUFBTSxZQUFZLEdBQUcsUUFBUSxDQUFDLFlBQVksQ0FBQztZQUMzQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBRXZGLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxZQUFZLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsQ0FBQztZQUNyRSxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLEdBQUcsU0FBUyxJQUFJLENBQUMsQ0FBQztZQUM1RCxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3RELENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsV0FBVztRQUNQLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNmLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN4QixDQUFDOytHQXBDUSx1QkFBdUI7bUdBQXZCLHVCQUF1QixpSkFuQnRCOzs7Ozs7Ozs7OztLQVdULDJEQUdTLFdBQVcsK21CQUFFLHFCQUFxQixrSUFBRSxpQkFBaUIsK0lBQUUsaUJBQWlCOzs0RkFLekUsdUJBQXVCO2tCQXJCbkMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixRQUFRLEVBQUU7Ozs7Ozs7Ozs7O0tBV1Q7b0JBQ0QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxPQUFPLEVBQUUsQ0FBQyxXQUFXLEVBQUUscUJBQXFCLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLENBQUM7b0JBQ25GLElBQUksRUFBRTt3QkFDRixLQUFLLEVBQUUsa0JBQWtCO3FCQUM1QjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGluamVjdCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRoeUlucHV0RGlyZWN0aXZlIH0gZnJvbSAnbmd4LXRldGh5cy9pbnB1dCc7XG5pbXBvcnQgeyBUaHlBdXRvZm9jdXNEaXJlY3RpdmUsIFRoeUVudGVyRGlyZWN0aXZlIH0gZnJvbSAnbmd4LXRldGh5cy9zaGFyZWQnO1xuaW1wb3J0IHsgQWJzdHJhY3RFZGl0Q2VsbEVkaXRvciB9IGZyb20gJy4uL2Fic3RyYWN0LWNlbGwtZWRpdG9yLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGV4dC1jZWxsLWVkaXRvcicsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPHRleHRhcmVhXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIlwiXG4gICAgICAgICAgICByb3dzPVwiMVwiXG4gICAgICAgICAgICB0aHlJbnB1dFxuICAgICAgICAgICAgW3RoeUF1dG9mb2N1c109XCJ0cnVlXCJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwibW9kZWxWYWx1ZVwiXG4gICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZUNoYW5nZSgpXCJcbiAgICAgICAgICAgICh0aHlFbnRlcik9XCJ1cGRhdGVWYWx1ZSgpXCJcbiAgICAgICAgICAgIChibHVyKT1cInVwZGF0ZVZhbHVlKClcIlxuICAgICAgICA+PC90ZXh0YXJlYT5cbiAgICBgLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaW1wb3J0czogW0Zvcm1zTW9kdWxlLCBUaHlBdXRvZm9jdXNEaXJlY3RpdmUsIFRoeUlucHV0RGlyZWN0aXZlLCBUaHlFbnRlckRpcmVjdGl2ZV0sXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3RleHQtY2VsbC1lZGl0b3InXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBUZXh0Q2VsbEVkaXRvckNvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0RWRpdENlbGxFZGl0b3I8c3RyaW5nPiBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICAgIHByaXZhdGUgcmVuZGVyMiA9IGluamVjdChSZW5kZXJlcjIpO1xuICAgIHByaXZhdGUgbWF4SGVpZ2h0ID0gMTQ4O1xuXG4gICAgcHJpdmF0ZSBtaW5IZWlnaHQgPSAyNDtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVN0eWxlKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHVwZGF0ZVN0eWxlKCkge1xuICAgICAgICBjb25zdCB0ZXh0YXJlYSA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ3RleHRhcmVhJyk7XG4gICAgICAgIGlmICh0ZXh0YXJlYSkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXIyLnNldFN0eWxlKHRleHRhcmVhLCAnaGVpZ2h0JywgJ2F1dG8nKTtcbiAgICAgICAgICAgIGNvbnN0IHNjcm9sbEhlaWdodCA9IHRleHRhcmVhLnNjcm9sbEhlaWdodDtcbiAgICAgICAgICAgIGNvbnN0IG5ld0hlaWdodCA9IE1hdGgubWF4KHRoaXMubWluSGVpZ2h0LCBNYXRoLm1pbihzY3JvbGxIZWlnaHQsIHRoaXMubWF4SGVpZ2h0KSkgKyA0O1xuXG4gICAgICAgICAgICB0aGlzLnJlbmRlcjIuc2V0U3R5bGUodGV4dGFyZWEsICdtYXgtaGVpZ2h0JywgYCR7dGhpcy5tYXhIZWlnaHR9cHhgKTtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyMi5zZXRTdHlsZSh0ZXh0YXJlYSwgJ2hlaWdodCcsIGAke25ld0hlaWdodH1weGApO1xuICAgICAgICAgICAgdGhpcy5yZW5kZXIyLnNldFN0eWxlKHRleHRhcmVhLCAncmVzaXplJywgJ25vbmUnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHZhbHVlQ2hhbmdlKCkge1xuICAgICAgICB0aGlzLnVwZGF0ZVN0eWxlKCk7XG4gICAgfVxuXG4gICAgdXBkYXRlVmFsdWUoKSB7XG4gICAgICAgIHN1cGVyLnVwZGF0ZSgpO1xuICAgICAgICB0aGlzLmNsb3NlUG9wb3ZlcigpO1xuICAgIH1cbn1cbiJdfQ==
|
@@ -1,24 +1,27 @@
|
|
1
|
-
import { NgClass,
|
2
|
-
import { ChangeDetectionStrategy, Component,
|
1
|
+
import { NgClass, NgTemplateOutlet } from '@angular/common';
|
2
|
+
import { ChangeDetectionStrategy, Component, booleanAttribute, computed, inject, input, model, output } from '@angular/core';
|
3
3
|
import { FormsModule } from '@angular/forms';
|
4
4
|
import { ThyButton } from 'ngx-tethys/button';
|
5
|
-
import { ThyDropdownDirective, ThyDropdownMenuComponent, ThyDropdownMenuItemDirective, ThyDropdownMenuItemNameDirective } from 'ngx-tethys/dropdown';
|
5
|
+
import { ThyDropdownDirective, ThyDropdownMenuComponent, ThyDropdownMenuItemDirective, ThyDropdownMenuItemExtendIconDirective, ThyDropdownMenuItemIconDirective, ThyDropdownMenuItemNameDirective } from 'ngx-tethys/dropdown';
|
6
6
|
import { ThyFormModule, ThyUniqueCheckValidator } from 'ngx-tethys/form';
|
7
7
|
import { ThyIcon } from 'ngx-tethys/icon';
|
8
8
|
import { ThyInputCount, ThyInputDirective, ThyInputGroup } from 'ngx-tethys/input';
|
9
|
-
import {
|
9
|
+
import { ThySwitch } from 'ngx-tethys/switch';
|
10
10
|
import { ThyPopoverRef } from 'ngx-tethys/popover';
|
11
11
|
import { ThyAutofocusDirective } from 'ngx-tethys/shared';
|
12
12
|
import { of } from 'rxjs';
|
13
|
-
import { FieldOptions, createDefaultFieldName, getFieldOptionByField } from '../../core';
|
14
|
-
import {
|
13
|
+
import { FieldOptions, createDefaultFieldName, getFieldOptionByField, AITableFieldType } from '../../core';
|
14
|
+
import { AITableFieldIsSameOptionPipe } from '../../pipes';
|
15
|
+
import * as _ from 'lodash';
|
15
16
|
import * as i0 from "@angular/core";
|
16
17
|
import * as i1 from "@angular/forms";
|
17
18
|
import * as i2 from "ngx-tethys/form";
|
18
19
|
export class AITableFieldSetting {
|
19
20
|
constructor() {
|
20
21
|
this.aiEditField = model.required();
|
21
|
-
this.
|
22
|
+
this.aiTable = input.required();
|
23
|
+
this.aiExternalTemplate = input(null);
|
24
|
+
this.isUpdate = input(false, { transform: booleanAttribute });
|
22
25
|
this.addField = output();
|
23
26
|
this.setField = output();
|
24
27
|
this.selectedFieldOption = computed(() => {
|
@@ -33,23 +36,34 @@ export class AITableFieldSetting {
|
|
33
36
|
}
|
34
37
|
}
|
35
38
|
};
|
36
|
-
this.fieldOptions = FieldOptions;
|
39
|
+
this.fieldOptions = _.cloneDeep(FieldOptions);
|
40
|
+
this.aITableFieldType = AITableFieldType;
|
41
|
+
this.isMultipleMember = false;
|
37
42
|
this.thyPopoverRef = inject((ThyPopoverRef));
|
38
43
|
this.checkUniqueName = (fieldName) => {
|
39
44
|
fieldName = fieldName?.trim();
|
40
|
-
return of(!!this.aiTable
|
45
|
+
return of(!!this.aiTable()
|
46
|
+
.fields()
|
47
|
+
?.find((field) => field.name === fieldName && this.aiEditField()?._id !== field._id));
|
41
48
|
};
|
42
49
|
}
|
50
|
+
ngOnInit() {
|
51
|
+
this.isMultipleMember =
|
52
|
+
this.aiEditField().type === AITableFieldType.member && !!this.aiEditField().settings?.is_multiple;
|
53
|
+
}
|
43
54
|
selectFieldType(field) {
|
44
55
|
this.aiEditField.update((item) => {
|
45
56
|
const width = item.width ?? field.width;
|
46
57
|
const settings = field.settings || {};
|
47
|
-
const name = createDefaultFieldName(this.aiTable, field);
|
48
|
-
return { ...item, ...field, width, name,
|
58
|
+
const name = createDefaultFieldName(this.aiTable(), field);
|
59
|
+
return { ...item, ...field, width, name, settings };
|
49
60
|
});
|
61
|
+
setTimeout(() => {
|
62
|
+
this.thyPopoverRef.updatePosition();
|
63
|
+
}, 0);
|
50
64
|
}
|
51
65
|
editFieldProperty() {
|
52
|
-
if (this.isUpdate) {
|
66
|
+
if (this.isUpdate()) {
|
53
67
|
this.setField.emit({
|
54
68
|
field: this.aiEditField(),
|
55
69
|
path: [this.aiEditField()._id]
|
@@ -60,16 +74,28 @@ export class AITableFieldSetting {
|
|
60
74
|
}
|
61
75
|
this.thyPopoverRef.close();
|
62
76
|
}
|
77
|
+
multipleMemberChange() {
|
78
|
+
this.aiEditField.set({
|
79
|
+
...this.aiEditField(),
|
80
|
+
settings: {
|
81
|
+
...(this.aiEditField().settings || {}),
|
82
|
+
is_multiple: this.isMultipleMember
|
83
|
+
}
|
84
|
+
});
|
85
|
+
}
|
86
|
+
fieldTypeClick(e) {
|
87
|
+
e.preventDefault();
|
88
|
+
e.stopPropagation();
|
89
|
+
}
|
63
90
|
cancel() {
|
64
91
|
this.thyPopoverRef.close();
|
65
92
|
}
|
66
93
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableFieldSetting, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
67
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: AITableFieldSetting, isStandalone: true, selector: "ai-table-field-setting", inputs: { aiEditField: { classPropertyName: "aiEditField", publicName: "aiEditField", isSignal: true, isRequired: true, transformFunction: null }, aiTable: { classPropertyName: "aiTable", publicName: "aiTable", isSignal:
|
94
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: AITableFieldSetting, isStandalone: true, selector: "ai-table-field-setting", inputs: { aiEditField: { classPropertyName: "aiEditField", publicName: "aiEditField", isSignal: true, isRequired: true, transformFunction: null }, aiTable: { classPropertyName: "aiTable", publicName: "aiTable", isSignal: true, isRequired: true, transformFunction: null }, aiExternalTemplate: { classPropertyName: "aiExternalTemplate", publicName: "aiExternalTemplate", isSignal: true, isRequired: false, transformFunction: null }, isUpdate: { classPropertyName: "isUpdate", publicName: "isUpdate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { aiEditField: "aiEditFieldChange", addField: "addField", setField: "setField" }, host: { classAttribute: "field-setting d-block pl-5 pr-5 pb-5 pt-4" }, ngImport: i0, template: "<form thyForm name=\"createPropertyForm\" [thyFormValidatorConfig]=\"validatorConfig\" thyLayout=\"vertical\">\n <thy-form-group thyLabelRequired thyLabelText=\"\u8868\u683C\u5217\u540D\">\n <thy-input-group>\n <input\n thyInput\n [thyAutofocus]=\"true\"\n name=\"fieldName\"\n [maxlength]=\"fieldMaxLength\"\n [(ngModel)]=\"aiEditField().name\"\n required\n placeholder=\"\u8F93\u5165\u5217\u540D\u79F0\"\n [thyUniqueCheck]=\"checkUniqueName\"\n />\n <ng-template #suffix>\n <thy-input-count></thy-input-count>\n </ng-template>\n </thy-input-group>\n </thy-form-group>\n <thy-form-group thyLabelText=\"\u5217\u7C7B\u578B\">\n <div class=\"thy-dropdown-menu py-0\">\n <div class=\"ml-n5 mr-n5\">\n <span\n thyDropdownMenuItem\n [thyDropdown]=\"menu\"\n [thyDisabled]=\"isUpdate()\"\n thyTrigger=\"hover\"\n thyPlacement=\"right\"\n (click)=\"fieldTypeClick($event)\"\n >\n <thy-icon thyDropdownMenuItemIcon [thyIconName]=\"selectedFieldOption().icon\"></thy-icon>\n <span thyDropdownMenuItemName>{{ selectedFieldOption().name }}</span>\n <thy-icon thyDropdownMenuItemExtendIcon thyIconName=\"angle-right\" class=\"text-desc\"></thy-icon>\n </span>\n </div>\n </div>\n\n @if (selectedFieldOption().type === aITableFieldType.member) {\n <div class=\"d-flex justify-content-between mt-3\">\n \u5141\u8BB8\u9009\u62E9\u591A\u4E2A\u6210\u5458\n <thy-switch\n name=\"isMultipleMember\"\n [thyDisabled]=\"isUpdate()\"\n [(ngModel)]=\"isMultipleMember\"\n (ngModelChange)=\"multipleMemberChange()\"\n thySize=\"sm\"\n ></thy-switch>\n </div>\n }\n </thy-form-group>\n @if (aiExternalTemplate()) {\n <ng-container *ngTemplateOutlet=\"aiExternalTemplate()\"></ng-container>\n }\n <thy-form-group-footer thyAlign=\"right\">\n <button thyButton=\"link-secondary\" (click)=\"cancel()\" thySize=\"sm\">\u53D6\u6D88</button>\n <button thyButton=\"primary\" (thyFormSubmit)=\"editFieldProperty()\" thySize=\"sm\">\u786E\u5B9A</button>\n </thy-form-group-footer>\n</form>\n\n<thy-dropdown-menu #menu>\n @for (item of fieldOptions; track $index) {\n <a\n thyDropdownMenuItem\n href=\"javascript:;\"\n [ngClass]=\"{\n active: (item | fieldIsSameOption: aiEditField())\n }\"\n (click)=\"selectFieldType(item)\"\n >\n <thy-icon [thyIconName]=\"item.icon!\"></thy-icon>\n <span thyDropdownMenuItemName>{{ item.name }}</span>\n </a>\n }\n</thy-dropdown-menu>\n", styles: [":host{width:350px}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "component", type: ThyInputGroup, selector: "thy-input-group", inputs: ["thyAppendText", "thyAppendTextTranslateKey", "thyPrependText", "thyPrependTextTranslateKey", "thySize"] }, { kind: "component", type: ThyInputCount, selector: "thy-input-count", inputs: ["thyInput"] }, { kind: "directive", type: ThyInputDirective, selector: "input[thyInput], select[thyInput], textarea[thyInput]", inputs: ["thySize"], exportAs: ["thyInput"] }, { kind: "directive", type: ThyUniqueCheckValidator, selector: "[thyUniqueCheck]", inputs: ["thyUniqueCheck"] }, { kind: "component", type: ThyDropdownMenuComponent, selector: "thy-dropdown-menu", inputs: ["thyWidth", "thyImmediateRender"] }, { kind: "directive", type: ThyDropdownDirective, selector: "[thyDropdown]", inputs: ["thyDropdownMenu", "thyDropdown", "thyTrigger", "thyShowDelay", "thyHideDelay", "thyActiveClass", "thyPopoverOptions", "thyPlacement", "thyMenuInsideClosable", "thyPanelClass"], outputs: ["thyActiveChange"] }, { kind: "directive", type: ThyDropdownMenuItemDirective, selector: "[thyDropdownMenuItem]", inputs: ["thyType", "thyDisabled"] }, { kind: "directive", type: ThyDropdownMenuItemIconDirective, selector: "[thyDropdownMenuItemIcon]" }, { kind: "directive", type: ThyDropdownMenuItemNameDirective, selector: "[thyDropdownMenuItemName]" }, { kind: "directive", type: ThyDropdownMenuItemExtendIconDirective, selector: "[thyDropdownMenuItemExtendIcon]" }, { kind: "component", type: ThyButton, selector: "thy-button,[thy-button],[thyButton]", inputs: ["thyButton", "thyType", "thyLoading", "thyLoadingText", "thySize", "thyIcon", "thyBlock"] }, { kind: "component", type: ThySwitch, selector: "thy-switch", inputs: ["thyType", "thySize", "thyDisabled", "thyLoading"], outputs: ["thyChange"] }, { kind: "ngmodule", type: ThyFormModule }, { kind: "directive", type: i2.ThyFormDirective, selector: "[thyForm],[thy-form]", inputs: ["thyLayout", "thyEnterKeyMode", "thyFormValidatorConfig"], exportAs: ["thyForm"] }, { kind: "component", type: i2.ThyFormGroup, selector: "thy-form-group", inputs: ["thyLabelText", "thyLabelTextTranslateKey", "thyLabelRequired", "thyLabelPaddingTopClear", "thyFeedbackIcon", "thyTipsMode", "thyTips", "thyTipsTranslateKey", "thyRowFill"] }, { kind: "directive", type: i2.ThyFormSubmitDirective, selector: "[thyFormSubmit],[thy-form-submit]", outputs: ["thyFormSubmit"] }, { kind: "component", type: i2.ThyFormGroupFooter, selector: "thy-form-group-footer", inputs: ["thyAlign"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: ThyAutofocusDirective, selector: "input[thyAutofocus],textarea[thyAutofocus]", inputs: ["thyAutofocus", "thyAutoSelect"] }, { kind: "pipe", type: AITableFieldIsSameOptionPipe, name: "fieldIsSameOption" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
68
95
|
}
|
69
96
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableFieldSetting, decorators: [{
|
70
97
|
type: Component,
|
71
98
|
args: [{ selector: 'ai-table-field-setting', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
72
|
-
NgIf,
|
73
99
|
NgClass,
|
74
100
|
FormsModule,
|
75
101
|
ThyIcon,
|
@@ -77,26 +103,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
77
103
|
ThyInputCount,
|
78
104
|
ThyInputDirective,
|
79
105
|
ThyUniqueCheckValidator,
|
80
|
-
ThyDropdownDirective,
|
81
106
|
ThyDropdownMenuComponent,
|
107
|
+
ThyDropdownDirective,
|
82
108
|
ThyDropdownMenuItemDirective,
|
109
|
+
ThyDropdownMenuItemIconDirective,
|
83
110
|
ThyDropdownMenuItemNameDirective,
|
111
|
+
ThyDropdownMenuItemExtendIconDirective,
|
84
112
|
ThyButton,
|
113
|
+
ThySwitch,
|
85
114
|
ThyFormModule,
|
86
|
-
ThyListItem,
|
87
115
|
NgTemplateOutlet,
|
88
116
|
ThyAutofocusDirective,
|
89
|
-
|
117
|
+
AITableFieldIsSameOptionPipe
|
90
118
|
], host: {
|
91
119
|
class: 'field-setting d-block pl-5 pr-5 pb-5 pt-4'
|
92
|
-
}, template: "<form thyForm name=\"createPropertyForm\" [thyFormValidatorConfig]=\"validatorConfig\" thyLayout=\"vertical\">\n <thy-form-group thyLabelRequired thyLabelText=\"\u8868\u683C\u5217\u540D\">\n <thy-input-group>\n <input\n thyInput\n [thyAutofocus]=\"true\"\n name=\"fieldName\"\n [maxlength]=\"fieldMaxLength\"\n [(ngModel)]=\"aiEditField().name\"\n required\n placeholder=\"\u8F93\u5165\u5217\u540D\u79F0\"\n [thyUniqueCheck]=\"checkUniqueName\"\n />\n <ng-template #suffix>\n <thy-input-count></thy-input-count>\n </ng-template>\n </thy-input-group>\n </thy-form-group>\n <thy-form-group thyLabelText=\"\u5217\u7C7B\u578B\">\n <div class=\"ml-n5 mr-n5\">\n
|
93
|
-
}]
|
94
|
-
type: Input,
|
95
|
-
args: [{ required: true }]
|
96
|
-
}], aiExternalTemplate: [{
|
97
|
-
type: Input
|
98
|
-
}], isUpdate: [{
|
99
|
-
type: Input,
|
100
|
-
args: [{ transform: booleanAttribute }]
|
101
|
-
}] } });
|
102
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtc2V0dGluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9jb21wb25lbnRzL2ZpZWxkLXNldHRpbmcvZmllbGQtc2V0dGluZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9jb21wb25lbnRzL2ZpZWxkLXNldHRpbmcvZmllbGQtc2V0dGluZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFlLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxSSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzlDLE9BQU8sRUFDSCxvQkFBb0IsRUFDcEIsd0JBQXdCLEVBQ3hCLDRCQUE0QixFQUM1QixnQ0FBZ0MsRUFDbkMsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsYUFBYSxFQUEwQix1QkFBdUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ25GLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFFLHFCQUFxQixF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bUZBMERBLDhFRHhCUSxJQUFJLDZGQUNKLE9BQU8sbUZBQ1AsV0FBVyx3NkNBQ1gsT0FBTyxzTUFDUCxhQUFhLCtLQUNiLGFBQWEsa0ZBQ2IsaUJBQWlCLCtJQUNqQix1QkFBdUIseUZBQ3ZCLG9CQUFvQixtUkFDcEIsd0JBQXdCLDBHQUN4Qiw0QkFBNEIsc0dBQzVCLGdDQUFnQyxzRUFDaEMsU0FBUyxtTEFDVCxhQUFhLCtyQkFDYixXQUFXLDBFQUNYLGdCQUFnQixvSkFDaEIscUJBQXFCLDZIQUNyQiwwQkFBMEI7OzRGQWFyQixtQkFBbUI7a0JBcEMvQixTQUFTOytCQUNJLHdCQUF3QixjQUV0QixJQUFJLG1CQUNDLHVCQUF1QixDQUFDLE1BQU0sV0FDdEM7d0JBQ0wsSUFBSTt3QkFDSixPQUFPO3dCQUNQLFdBQVc7d0JBQ1gsT0FBTzt3QkFDUCxhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsaUJBQWlCO3dCQUNqQix1QkFBdUI7d0JBQ3ZCLG9CQUFvQjt3QkFDcEIsd0JBQXdCO3dCQUN4Qiw0QkFBNEI7d0JBQzVCLGdDQUFnQzt3QkFDaEMsU0FBUzt3QkFDVCxhQUFhO3dCQUNiLFdBQVc7d0JBQ1gsZ0JBQWdCO3dCQUNoQixxQkFBcUI7d0JBQ3JCLDBCQUEwQjtxQkFDN0IsUUFDSzt3QkFDRixLQUFLLEVBQUUsMkNBQTJDO3FCQUNyRDs4QkFZMEIsT0FBTztzQkFBakMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBRWhCLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFFa0MsUUFBUTtzQkFBL0MsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MsIE5nSWYsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIFRlbXBsYXRlUmVmLCBib29sZWFuQXR0cmlidXRlLCBjb21wdXRlZCwgaW5qZWN0LCBtb2RlbCwgb3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRoeUJ1dHRvbiB9IGZyb20gJ25neC10ZXRoeXMvYnV0dG9uJztcbmltcG9ydCB7XG4gICAgVGh5RHJvcGRvd25EaXJlY3RpdmUsXG4gICAgVGh5RHJvcGRvd25NZW51Q29tcG9uZW50LFxuICAgIFRoeURyb3Bkb3duTWVudUl0ZW1EaXJlY3RpdmUsXG4gICAgVGh5RHJvcGRvd25NZW51SXRlbU5hbWVEaXJlY3RpdmVcbn0gZnJvbSAnbmd4LXRldGh5cy9kcm9wZG93bic7XG5pbXBvcnQgeyBUaHlGb3JtTW9kdWxlLCBUaHlGb3JtVmFsaWRhdG9yQ29uZmlnLCBUaHlVbmlxdWVDaGVja1ZhbGlkYXRvciB9IGZyb20gJ25neC10ZXRoeXMvZm9ybSc7XG5pbXBvcnQgeyBUaHlJY29uIH0gZnJvbSAnbmd4LXRldGh5cy9pY29uJztcbmltcG9ydCB7IFRoeUlucHV0Q291bnQsIFRoeUlucHV0RGlyZWN0aXZlLCBUaHlJbnB1dEdyb3VwIH0gZnJvbSAnbmd4LXRldGh5cy9pbnB1dCc7XG5pbXBvcnQgeyBUaHlMaXN0SXRlbSB9IGZyb20gJ25neC10ZXRoeXMvbGlzdCc7XG5pbXBvcnQgeyBUaHlQb3BvdmVyUmVmIH0gZnJvbSAnbmd4LXRldGh5cy9wb3BvdmVyJztcbmltcG9ydCB7IFRoeUF1dG9mb2N1c0RpcmVjdGl2ZSB9IGZyb20gJ25neC10ZXRoeXMvc2hhcmVkJztcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICAgIEFJVGFibGUsXG4gICAgQUlUYWJsZUZpZWxkLFxuICAgIEFJVGFibGVGaWVsZE9wdGlvbixcbiAgICBGaWVsZE9wdGlvbnMsXG4gICAgY3JlYXRlRGVmYXVsdEZpZWxkTmFtZSxcbiAgICBnZXRGaWVsZE9wdGlvbkJ5RmllbGQsXG4gICAgU2V0RmllbGRPcHRpb25zXG59IGZyb20gJy4uLy4uL2NvcmUnO1xuaW1wb3J0IHsgQUlUYWJsZUZpZWxkSXNNdWx0aXBsZVBpcGUgfSBmcm9tICcuLi8uLi9waXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYWktdGFibGUtZmllbGQtc2V0dGluZycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ZpZWxkLXNldHRpbmcuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBOZ0lmLFxuICAgICAgICBOZ0NsYXNzLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgVGh5SWNvbixcbiAgICAgICAgVGh5SW5wdXRHcm91cCxcbiAgICAgICAgVGh5SW5wdXRDb3VudCxcbiAgICAgICAgVGh5SW5wdXREaXJlY3RpdmUsXG4gICAgICAgIFRoeVVuaXF1ZUNoZWNrVmFsaWRhdG9yLFxuICAgICAgICBUaHlEcm9wZG93bkRpcmVjdGl2ZSxcbiAgICAgICAgVGh5RHJvcGRvd25NZW51Q29tcG9uZW50LFxuICAgICAgICBUaHlEcm9wZG93bk1lbnVJdGVtRGlyZWN0aXZlLFxuICAgICAgICBUaHlEcm9wZG93bk1lbnVJdGVtTmFtZURpcmVjdGl2ZSxcbiAgICAgICAgVGh5QnV0dG9uLFxuICAgICAgICBUaHlGb3JtTW9kdWxlLFxuICAgICAgICBUaHlMaXN0SXRlbSxcbiAgICAgICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICAgICAgVGh5QXV0b2ZvY3VzRGlyZWN0aXZlLFxuICAgICAgICBBSVRhYmxlRmllbGRJc011bHRpcGxlUGlwZVxuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ZpZWxkLXNldHRpbmcgZC1ibG9jayBwbC01IHByLTUgcGItNSBwdC00J1xuICAgIH0sXG4gICAgc3R5bGVzOiBbXG4gICAgICAgIGBcbiAgICAgICAgICAgIDpob3N0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIGBcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIEFJVGFibGVGaWVsZFNldHRpbmcge1xuICAgIGFpRWRpdEZpZWxkID0gbW9kZWwucmVxdWlyZWQ8QUlUYWJsZUZpZWxkPigpO1xuXG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgYWlUYWJsZSE6IEFJVGFibGU7XG5cbiAgICBASW5wdXQoKSBhaUV4dGVybmFsVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBpc1VwZGF0ZSE6IGJvb2xlYW47XG5cbiAgICBhZGRGaWVsZCA9IG91dHB1dDxBSVRhYmxlRmllbGQ+KCk7XG5cbiAgICBzZXRGaWVsZCA9IG91dHB1dDxTZXRGaWVsZE9wdGlvbnM+KCk7XG5cbiAgICBzZWxlY3RlZEZpZWxkT3B0aW9uID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4gZ2V0RmllbGRPcHRpb25CeUZpZWxkKHRoaXMuYWlFZGl0RmllbGQoKSkhO1xuICAgIH0pO1xuXG4gICAgZmllbGRNYXhMZW5ndGggPSAzMjtcblxuICAgIHZhbGlkYXRvckNvbmZpZzogVGh5Rm9ybVZhbGlkYXRvckNvbmZpZyA9IHtcbiAgICAgICAgdmFsaWRhdGlvbk1lc3NhZ2VzOiB7XG4gICAgICAgICAgICBmaWVsZE5hbWU6IHtcbiAgICAgICAgICAgICAgICByZXF1aXJlZDogJ+WIl+WQjeS4jeiDveS4uuepuicsXG4gICAgICAgICAgICAgICAgdGh5VW5pcXVlQ2hlY2s6ICfliJflkI3lt7LlrZjlnKgnXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgZmllbGRPcHRpb25zID0gRmllbGRPcHRpb25zO1xuXG4gICAgcHJvdGVjdGVkIHRoeVBvcG92ZXJSZWYgPSBpbmplY3QoVGh5UG9wb3ZlclJlZjxBSVRhYmxlRmllbGRTZXR0aW5nPik7XG5cbiAgICBjaGVja1VuaXF1ZU5hbWUgPSAoZmllbGROYW1lOiBzdHJpbmcpID0+IHtcbiAgICAgICAgZmllbGROYW1lID0gZmllbGROYW1lPy50cmltKCk7XG4gICAgICAgIHJldHVybiBvZighIXRoaXMuYWlUYWJsZS5maWVsZHMoKT8uZmluZCgoZmllbGQpID0+IGZpZWxkLm5hbWUgPT09IGZpZWxkTmFtZSAmJiB0aGlzLmFpRWRpdEZpZWxkKCk/Ll9pZCAhPT0gZmllbGQuX2lkKSk7XG4gICAgfTtcblxuICAgIHNlbGVjdEZpZWxkVHlwZShmaWVsZDogQUlUYWJsZUZpZWxkT3B0aW9uKSB7XG4gICAgICAgIHRoaXMuYWlFZGl0RmllbGQudXBkYXRlKChpdGVtKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB3aWR0aCA9IGl0ZW0ud2lkdGggPz8gZmllbGQud2lkdGg7XG4gICAgICAgICAgICBjb25zdCBzZXR0aW5ncyA9IGZpZWxkLnNldHRpbmdzIHx8IHt9O1xuICAgICAgICAgICAgY29uc3QgbmFtZSA9IGNyZWF0ZURlZmF1bHRGaWVsZE5hbWUodGhpcy5haVRhYmxlLCBmaWVsZCk7XG4gICAgICAgICAgICByZXR1cm4geyAuLi5pdGVtLCAuLi5maWVsZCwgd2lkdGgsIG5hbWUsIC4uLnNldHRpbmdzIH07XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGVkaXRGaWVsZFByb3BlcnR5KCkge1xuICAgICAgICBpZiAodGhpcy5pc1VwZGF0ZSkge1xuICAgICAgICAgICAgdGhpcy5zZXRGaWVsZC5lbWl0KHtcbiAgICAgICAgICAgICAgICBmaWVsZDogdGhpcy5haUVkaXRGaWVsZCgpLFxuICAgICAgICAgICAgICAgIHBhdGg6IFt0aGlzLmFpRWRpdEZpZWxkKCkuX2lkXVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmFkZEZpZWxkLmVtaXQodGhpcy5haUVkaXRGaWVsZCgpKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnRoeVBvcG92ZXJSZWYuY2xvc2UoKTtcbiAgICB9XG5cbiAgICBjYW5jZWwoKSB7XG4gICAgICAgIHRoaXMudGh5UG9wb3ZlclJlZi5jbG9zZSgpO1xuICAgIH1cbn1cbiIsIjxmb3JtIHRoeUZvcm0gbmFtZT1cImNyZWF0ZVByb3BlcnR5Rm9ybVwiIFt0aHlGb3JtVmFsaWRhdG9yQ29uZmlnXT1cInZhbGlkYXRvckNvbmZpZ1wiIHRoeUxheW91dD1cInZlcnRpY2FsXCI+XG4gICAgPHRoeS1mb3JtLWdyb3VwIHRoeUxhYmVsUmVxdWlyZWQgdGh5TGFiZWxUZXh0PVwi6KGo5qC85YiX5ZCNXCI+XG4gICAgICAgIDx0aHktaW5wdXQtZ3JvdXA+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICB0aHlJbnB1dFxuICAgICAgICAgICAgICAgIFt0aHlBdXRvZm9jdXNdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgbmFtZT1cImZpZWxkTmFtZVwiXG4gICAgICAgICAgICAgICAgW21heGxlbmd0aF09XCJmaWVsZE1heExlbmd0aFwiXG4gICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJhaUVkaXRGaWVsZCgpLm5hbWVcIlxuICAgICAgICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLovpPlhaXliJflkI3np7BcIlxuICAgICAgICAgICAgICAgIFt0aHlVbmlxdWVDaGVja109XCJjaGVja1VuaXF1ZU5hbWVcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjc3VmZml4PlxuICAgICAgICAgICAgICAgIDx0aHktaW5wdXQtY291bnQ+PC90aHktaW5wdXQtY291bnQ+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3RoeS1pbnB1dC1ncm91cD5cbiAgICA8L3RoeS1mb3JtLWdyb3VwPlxuICAgIDx0aHktZm9ybS1ncm91cCB0aHlMYWJlbFRleHQ9XCLliJfnsbvlnotcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1sLW41IG1yLW41XCI+XG4gICAgICAgICAgICA8dGh5LWxpc3QtaXRlbSBbdGh5RHJvcGRvd25dPVwibWVudVwiIHRoeVRyaWdnZXI9XCJob3ZlclwiIHRoeVBsYWNlbWVudD1cInJpZ2h0XCIgY2xhc3M9XCJqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiPlxuICAgICAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICAgICAgICA8dGh5LWljb24gW3RoeUljb25OYW1lXT1cInNlbGVjdGVkRmllbGRPcHRpb24oKS5pY29uXCIgY2xhc3M9XCJ0ZXh0LWRlc2MgbXItMlwiPjwvdGh5LWljb24+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IHNlbGVjdGVkRmllbGRPcHRpb24oKS5uYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8dGh5LWljb24gdGh5SWNvbk5hbWU9XCJhbmdsZS1yaWdodFwiIGNsYXNzPVwidGV4dC1kZXNjXCI+PC90aHktaWNvbj5cbiAgICAgICAgICAgIDwvdGh5LWxpc3QtaXRlbT5cbiAgICAgICAgPC9kaXY+XG4gICAgPC90aHktZm9ybS1ncm91cD5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYWlFeHRlcm5hbFRlbXBsYXRlOyBlbHNlIGRlZmF1bHRUZW1wbGF0ZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYWlFeHRlcm5hbFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0VGVtcGxhdGU+XG4gICAgICAgIDwhLS0gVE9ETzog5YaF6YOo5bGe5oCn5riy5p+TIC0tPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPHRoeS1mb3JtLWdyb3VwLWZvb3RlciB0aHlBbGlnbj1cInJpZ2h0XCI+XG4gICAgICAgIDxidXR0b24gdGh5QnV0dG9uPVwibGluay1zZWNvbmRhcnlcIiAoY2xpY2spPVwiY2FuY2VsKClcIiB0aHlTaXplPVwic21cIj7lj5bmtog8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiB0aHlCdXR0b249XCJwcmltYXJ5XCIgKHRoeUZvcm1TdWJtaXQpPVwiZWRpdEZpZWxkUHJvcGVydHkoKVwiIHRoeVNpemU9XCJzbVwiPuehruWumjwvYnV0dG9uPlxuICAgIDwvdGh5LWZvcm0tZ3JvdXAtZm9vdGVyPlxuPC9mb3JtPlxuXG48dGh5LWRyb3Bkb3duLW1lbnUgI21lbnU+XG4gICAgQGZvciAoaXRlbSBvZiBmaWVsZE9wdGlvbnM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICBAbGV0IGlzU2VsZWN0ZWRGaWVsZCA9IGFpRWRpdEZpZWxkKCkudHlwZSA9PT0gaXRlbS50eXBlO1xuICAgICAgICBAbGV0IGlzU2FtZU11bHRpcGxlTW9kZSA9IChpdGVtLnNldHRpbmdzISB8IGZpZWxkSXNNdWx0aXBsZSkgPT09IChhaUVkaXRGaWVsZCgpLnNldHRpbmdzISB8IGZpZWxkSXNNdWx0aXBsZSk7XG4gICAgICAgIDxhXG4gICAgICAgICAgICB0aHlEcm9wZG93bk1lbnVJdGVtXG4gICAgICAgICAgICBocmVmPVwiamF2YXNjcmlwdDo7XCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICBhY3RpdmU6IGlzU2VsZWN0ZWRGaWVsZCAmJiBpc1NhbWVNdWx0aXBsZU1vZGVcbiAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdEZpZWxkVHlwZShpdGVtKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDx0aHktaWNvbiBbdGh5SWNvbk5hbWVdPVwiaXRlbS5pY29uIVwiPjwvdGh5LWljb24+XG4gICAgICAgICAgICA8c3BhbiB0aHlEcm9wZG93bk1lbnVJdGVtTmFtZT57eyBpdGVtLm5hbWUgfX08L3NwYW4+XG4gICAgICAgIDwvYT5cbiAgICB9XG48L3RoeS1kcm9wZG93bi1tZW51PlxuIl19
|
120
|
+
}, template: "<form thyForm name=\"createPropertyForm\" [thyFormValidatorConfig]=\"validatorConfig\" thyLayout=\"vertical\">\n <thy-form-group thyLabelRequired thyLabelText=\"\u8868\u683C\u5217\u540D\">\n <thy-input-group>\n <input\n thyInput\n [thyAutofocus]=\"true\"\n name=\"fieldName\"\n [maxlength]=\"fieldMaxLength\"\n [(ngModel)]=\"aiEditField().name\"\n required\n placeholder=\"\u8F93\u5165\u5217\u540D\u79F0\"\n [thyUniqueCheck]=\"checkUniqueName\"\n />\n <ng-template #suffix>\n <thy-input-count></thy-input-count>\n </ng-template>\n </thy-input-group>\n </thy-form-group>\n <thy-form-group thyLabelText=\"\u5217\u7C7B\u578B\">\n <div class=\"thy-dropdown-menu py-0\">\n <div class=\"ml-n5 mr-n5\">\n <span\n thyDropdownMenuItem\n [thyDropdown]=\"menu\"\n [thyDisabled]=\"isUpdate()\"\n thyTrigger=\"hover\"\n thyPlacement=\"right\"\n (click)=\"fieldTypeClick($event)\"\n >\n <thy-icon thyDropdownMenuItemIcon [thyIconName]=\"selectedFieldOption().icon\"></thy-icon>\n <span thyDropdownMenuItemName>{{ selectedFieldOption().name }}</span>\n <thy-icon thyDropdownMenuItemExtendIcon thyIconName=\"angle-right\" class=\"text-desc\"></thy-icon>\n </span>\n </div>\n </div>\n\n @if (selectedFieldOption().type === aITableFieldType.member) {\n <div class=\"d-flex justify-content-between mt-3\">\n \u5141\u8BB8\u9009\u62E9\u591A\u4E2A\u6210\u5458\n <thy-switch\n name=\"isMultipleMember\"\n [thyDisabled]=\"isUpdate()\"\n [(ngModel)]=\"isMultipleMember\"\n (ngModelChange)=\"multipleMemberChange()\"\n thySize=\"sm\"\n ></thy-switch>\n </div>\n }\n </thy-form-group>\n @if (aiExternalTemplate()) {\n <ng-container *ngTemplateOutlet=\"aiExternalTemplate()\"></ng-container>\n }\n <thy-form-group-footer thyAlign=\"right\">\n <button thyButton=\"link-secondary\" (click)=\"cancel()\" thySize=\"sm\">\u53D6\u6D88</button>\n <button thyButton=\"primary\" (thyFormSubmit)=\"editFieldProperty()\" thySize=\"sm\">\u786E\u5B9A</button>\n </thy-form-group-footer>\n</form>\n\n<thy-dropdown-menu #menu>\n @for (item of fieldOptions; track $index) {\n <a\n thyDropdownMenuItem\n href=\"javascript:;\"\n [ngClass]=\"{\n active: (item | fieldIsSameOption: aiEditField())\n }\"\n (click)=\"selectFieldType(item)\"\n >\n <thy-icon [thyIconName]=\"item.icon!\"></thy-icon>\n <span thyDropdownMenuItemName>{{ item.name }}</span>\n </a>\n }\n</thy-dropdown-menu>\n", styles: [":host{width:350px}\n"] }]
|
121
|
+
}] });
|
122
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtc2V0dGluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9jb21wb25lbnRzL2ZpZWxkLXNldHRpbmcvZmllbGQtc2V0dGluZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9jb21wb25lbnRzL2ZpZWxkLXNldHRpbmcvZmllbGQtc2V0dGluZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUQsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBR1QsZ0JBQWdCLEVBQ2hCLFFBQVEsRUFDUixNQUFNLEVBQ04sS0FBSyxFQUNMLEtBQUssRUFDTCxNQUFNLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM5QyxPQUFPLEVBQ0gsb0JBQW9CLEVBQ3BCLHdCQUF3QixFQUN4Qiw0QkFBNEIsRUFDNUIsc0NBQXNDLEVBQ3RDLGdDQUFnQyxFQUNoQyxnQ0FBZ0MsRUFDbkMsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsYUFBYSxFQUEwQix1QkFBdUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ25GLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQs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Q1AsYUFBYSwrS0FDYixhQUFhLGtGQUNiLGlCQUFpQiwrSUFDakIsdUJBQXVCLHlGQUN2Qix3QkFBd0IsMEdBQ3hCLG9CQUFvQixtUkFDcEIsNEJBQTRCLHNHQUM1QixnQ0FBZ0Msc0VBQ2hDLGdDQUFnQyxzRUFDaEMsc0NBQXNDLDRFQUN0QyxTQUFTLG9MQUNULFNBQVMsMklBQ1QsYUFBYSwrckJBQ2IsZ0JBQWdCLG9KQUNoQixxQkFBcUIsNkhBQ3JCLDRCQUE0Qjs7NEZBYXZCLG1CQUFtQjtrQkFyQy9CLFNBQVM7K0JBQ0ksd0JBQXdCLGNBRXRCLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0Qzt3QkFDTCxPQUFPO3dCQUNQLFdBQVc7d0JBQ1gsT0FBTzt3QkFDUCxhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsaUJBQWlCO3dCQUNqQix1QkFBdUI7d0JBQ3ZCLHdCQUF3Qjt3QkFDeEIsb0JBQW9CO3dCQUNwQiw0QkFBNEI7d0JBQzVCLGdDQUFnQzt3QkFDaEMsZ0NBQWdDO3dCQUNoQyxzQ0FBc0M7d0JBQ3RDLFNBQVM7d0JBQ1QsU0FBUzt3QkFDVCxhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIscUJBQXFCO3dCQUNyQiw0QkFBNEI7cUJBQy9CLFFBQ0s7d0JBQ0YsS0FBSyxFQUFFLDJDQUEyQztxQkFDckQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NsYXNzLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIE9uSW5pdCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBib29sZWFuQXR0cmlidXRlLFxuICAgIGNvbXB1dGVkLFxuICAgIGluamVjdCxcbiAgICBpbnB1dCxcbiAgICBtb2RlbCxcbiAgICBvdXRwdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRoeUJ1dHRvbiB9IGZyb20gJ25neC10ZXRoeXMvYnV0dG9uJztcbmltcG9ydCB7XG4gICAgVGh5RHJvcGRvd25EaXJlY3RpdmUsXG4gICAgVGh5RHJvcGRvd25NZW51Q29tcG9uZW50LFxuICAgIFRoeURyb3Bkb3duTWVudUl0ZW1EaXJlY3RpdmUsXG4gICAgVGh5RHJvcGRvd25NZW51SXRlbUV4dGVuZEljb25EaXJlY3RpdmUsXG4gICAgVGh5RHJvcGRvd25NZW51SXRlbUljb25EaXJlY3RpdmUsXG4gICAgVGh5RHJvcGRvd25NZW51SXRlbU5hbWVEaXJlY3RpdmVcbn0gZnJvbSAnbmd4LXRldGh5cy9kcm9wZG93bic7XG5pbXBvcnQgeyBUaHlGb3JtTW9kdWxlLCBUaHlGb3JtVmFsaWRhdG9yQ29uZmlnLCBUaHlVbmlxdWVDaGVja1ZhbGlkYXRvciB9IGZyb20gJ25neC10ZXRoeXMvZm9ybSc7XG5pbXBvcnQgeyBUaHlJY29uIH0gZnJvbSAnbmd4LXRldGh5cy9pY29uJztcbmltcG9ydCB7IFRoeUlucHV0Q291bnQsIFRoeUlucHV0RGlyZWN0aXZlLCBUaHlJbnB1dEdyb3VwIH0gZnJvbSAnbmd4LXRldGh5cy9pbnB1dCc7XG5pbXBvcnQgeyBUaHlTd2l0Y2ggfSBmcm9tICduZ3gtdGV0aHlzL3N3aXRjaCc7XG5pbXBvcnQgeyBUaHlQb3BvdmVyUmVmIH0gZnJvbSAnbmd4LXRldGh5cy9wb3BvdmVyJztcbmltcG9ydCB7IFRoeUF1dG9mb2N1c0RpcmVjdGl2ZSB9IGZyb20gJ25neC10ZXRoeXMvc2hhcmVkJztcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICAgIEFJVGFibGUsXG4gICAgQUlUYWJsZUZpZWxkLFxuICAgIEFJVGFibGVGaWVsZE9wdGlvbixcbiAgICBGaWVsZE9wdGlvbnMsXG4gICAgY3JlYXRlRGVmYXVsdEZpZWxkTmFtZSxcbiAgICBnZXRGaWVsZE9wdGlvbkJ5RmllbGQsXG4gICAgU2V0RmllbGRPcHRpb25zLFxuICAgIEFJVGFibGVGaWVsZFR5cGUsXG4gICAgTWVtYmVyU2V0dGluZ3Ncbn0gZnJvbSAnLi4vLi4vY29yZSc7XG5pbXBvcnQgeyBBSVRhYmxlRmllbGRJc1NhbWVPcHRpb25QaXBlIH0gZnJvbSAnLi4vLi4vcGlwZXMnO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FpLXRhYmxlLWZpZWxkLXNldHRpbmcnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9maWVsZC1zZXR0aW5nLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgTmdDbGFzcyxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFRoeUljb24sXG4gICAgICAgIFRoeUlucHV0R3JvdXAsXG4gICAgICAgIFRoeUlucHV0Q291bnQsXG4gICAgICAgIFRoeUlucHV0RGlyZWN0aXZlLFxuICAgICAgICBUaHlVbmlxdWVDaGVja1ZhbGlkYXRvcixcbiAgICAgICAgVGh5RHJvcGRvd25NZW51Q29tcG9uZW50LFxuICAgICAgICBUaHlEcm9wZG93bkRpcmVjdGl2ZSxcbiAgICAgICAgVGh5RHJvcGRvd25NZW51SXRlbURpcmVjdGl2ZSxcbiAgICAgICAgVGh5RHJvcGRvd25NZW51SXRlbUljb25EaXJlY3RpdmUsXG4gICAgICAgIFRoeURyb3Bkb3duTWVudUl0ZW1OYW1lRGlyZWN0aXZlLFxuICAgICAgICBUaHlEcm9wZG93bk1lbnVJdGVtRXh0ZW5kSWNvbkRpcmVjdGl2ZSxcbiAgICAgICAgVGh5QnV0dG9uLFxuICAgICAgICBUaHlTd2l0Y2gsXG4gICAgICAgIFRoeUZvcm1Nb2R1bGUsXG4gICAgICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgICAgIFRoeUF1dG9mb2N1c0RpcmVjdGl2ZSxcbiAgICAgICAgQUlUYWJsZUZpZWxkSXNTYW1lT3B0aW9uUGlwZVxuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ZpZWxkLXNldHRpbmcgZC1ibG9jayBwbC01IHByLTUgcGItNSBwdC00J1xuICAgIH0sXG4gICAgc3R5bGVzOiBbXG4gICAgICAgIGBcbiAgICAgICAgICAgIDpob3N0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIGBcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIEFJVGFibGVGaWVsZFNldHRpbmcgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIGFpRWRpdEZpZWxkID0gbW9kZWwucmVxdWlyZWQ8QUlUYWJsZUZpZWxkPigpO1xuXG4gICAgYWlUYWJsZSA9IGlucHV0LnJlcXVpcmVkPEFJVGFibGU+KCk7XG5cbiAgICBhaUV4dGVybmFsVGVtcGxhdGUgPSBpbnB1dDxUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbD4obnVsbCk7XG5cbiAgICBpc1VwZGF0ZSA9IGlucHV0PGJvb2xlYW4sIHVua25vd24+KGZhbHNlLCB7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KTtcblxuICAgIGFkZEZpZWxkID0gb3V0cHV0PEFJVGFibGVGaWVsZD4oKTtcblxuICAgIHNldEZpZWxkID0gb3V0cHV0PFNldEZpZWxkT3B0aW9ucz4oKTtcblxuICAgIHNlbGVjdGVkRmllbGRPcHRpb24gPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiBnZXRGaWVsZE9wdGlvbkJ5RmllbGQodGhpcy5haUVkaXRGaWVsZCgpKSE7XG4gICAgfSk7XG5cbiAgICBmaWVsZE1heExlbmd0aCA9IDMyO1xuXG4gICAgdmFsaWRhdG9yQ29uZmlnOiBUaHlGb3JtVmFsaWRhdG9yQ29uZmlnID0ge1xuICAgICAgICB2YWxpZGF0aW9uTWVzc2FnZXM6IHtcbiAgICAgICAgICAgIGZpZWxkTmFtZToge1xuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiAn5YiX5ZCN5LiN6IO95Li656m6JyxcbiAgICAgICAgICAgICAgICB0aHlVbmlxdWVDaGVjazogJ+WIl+WQjeW3suWtmOWcqCdcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH07XG5cbiAgICBmaWVsZE9wdGlvbnMgPSBfLmNsb25lRGVlcChGaWVsZE9wdGlvbnMpO1xuXG4gICAgYUlUYWJsZUZpZWxkVHlwZSA9IEFJVGFibGVGaWVsZFR5cGU7XG5cbiAgICBpc011bHRpcGxlTWVtYmVyID0gZmFsc2U7XG5cbiAgICBwcm90ZWN0ZWQgdGh5UG9wb3ZlclJlZiA9IGluamVjdChUaHlQb3BvdmVyUmVmPEFJVGFibGVGaWVsZFNldHRpbmc+KTtcblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzTXVsdGlwbGVNZW1iZXIgPVxuICAgICAgICAgICAgdGhpcy5haUVkaXRGaWVsZCgpLnR5cGUgPT09IEFJVGFibGVGaWVsZFR5cGUubWVtYmVyICYmICEhKHRoaXMuYWlFZGl0RmllbGQoKS5zZXR0aW5ncyBhcyBNZW1iZXJTZXR0aW5ncyk/LmlzX211bHRpcGxlO1xuICAgIH1cblxuICAgIGNoZWNrVW5pcXVlTmFtZSA9IChmaWVsZE5hbWU6IHN0cmluZykgPT4ge1xuICAgICAgICBmaWVsZE5hbWUgPSBmaWVsZE5hbWU/LnRyaW0oKTtcbiAgICAgICAgcmV0dXJuIG9mKFxuICAgICAgICAgICAgISF0aGlzLmFpVGFibGUoKVxuICAgICAgICAgICAgICAgIC5maWVsZHMoKVxuICAgICAgICAgICAgICAgID8uZmluZCgoZmllbGQpID0+IGZpZWxkLm5hbWUgPT09IGZpZWxkTmFtZSAmJiB0aGlzLmFpRWRpdEZpZWxkKCk/Ll9pZCAhPT0gZmllbGQuX2lkKVxuICAgICAgICApO1xuICAgIH07XG5cbiAgICBzZWxlY3RGaWVsZFR5cGUoZmllbGQ6IEFJVGFibGVGaWVsZE9wdGlvbikge1xuICAgICAgICB0aGlzLmFpRWRpdEZpZWxkLnVwZGF0ZSgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgd2lkdGggPSBpdGVtLndpZHRoID8/IGZpZWxkLndpZHRoO1xuICAgICAgICAgICAgY29uc3Qgc2V0dGluZ3MgPSBmaWVsZC5zZXR0aW5ncyB8fCB7fTtcbiAgICAgICAgICAgIGNvbnN0IG5hbWUgPSBjcmVhdGVEZWZhdWx0RmllbGROYW1lKHRoaXMuYWlUYWJsZSgpLCBmaWVsZCk7XG4gICAgICAgICAgICByZXR1cm4geyAuLi5pdGVtLCAuLi5maWVsZCwgd2lkdGgsIG5hbWUsIHNldHRpbmdzIH07XG4gICAgICAgIH0pO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMudGh5UG9wb3ZlclJlZi51cGRhdGVQb3NpdGlvbigpO1xuICAgICAgICB9LCAwKTtcbiAgICB9XG5cbiAgICBlZGl0RmllbGRQcm9wZXJ0eSgpIHtcbiAgICAgICAgaWYgKHRoaXMuaXNVcGRhdGUoKSkge1xuICAgICAgICAgICAgdGhpcy5zZXRGaWVsZC5lbWl0KHtcbiAgICAgICAgICAgICAgICBmaWVsZDogdGhpcy5haUVkaXRGaWVsZCgpLFxuICAgICAgICAgICAgICAgIHBhdGg6IFt0aGlzLmFpRWRpdEZpZWxkKCkuX2lkXVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmFkZEZpZWxkLmVtaXQodGhpcy5haUVkaXRGaWVsZCgpKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnRoeVBvcG92ZXJSZWYuY2xvc2UoKTtcbiAgICB9XG5cbiAgICBtdWx0aXBsZU1lbWJlckNoYW5nZSgpIHtcbiAgICAgICAgdGhpcy5haUVkaXRGaWVsZC5zZXQoe1xuICAgICAgICAgICAgLi4udGhpcy5haUVkaXRGaWVsZCgpLFxuICAgICAgICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgICAgICAgICAuLi4odGhpcy5haUVkaXRGaWVsZCgpLnNldHRpbmdzIHx8IHt9KSxcbiAgICAgICAgICAgICAgICBpc19tdWx0aXBsZTogdGhpcy5pc011bHRpcGxlTWVtYmVyXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGZpZWxkVHlwZUNsaWNrKGU6IEV2ZW50KSB7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG5cbiAgICBjYW5jZWwoKSB7XG4gICAgICAgIHRoaXMudGh5UG9wb3ZlclJlZi5jbG9zZSgpO1xuICAgIH1cbn1cbiIsIjxmb3JtIHRoeUZvcm0gbmFtZT1cImNyZWF0ZVByb3BlcnR5Rm9ybVwiIFt0aHlGb3JtVmFsaWRhdG9yQ29uZmlnXT1cInZhbGlkYXRvckNvbmZpZ1wiIHRoeUxheW91dD1cInZlcnRpY2FsXCI+XG4gICAgPHRoeS1mb3JtLWdyb3VwIHRoeUxhYmVsUmVxdWlyZWQgdGh5TGFiZWxUZXh0PVwi6KGo5qC85YiX5ZCNXCI+XG4gICAgICAgIDx0aHktaW5wdXQtZ3JvdXA+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICB0aHlJbnB1dFxuICAgICAgICAgICAgICAgIFt0aHlBdXRvZm9jdXNdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgbmFtZT1cImZpZWxkTmFtZVwiXG4gICAgICAgICAgICAgICAgW21heGxlbmd0aF09XCJmaWVsZE1heExlbmd0aFwiXG4gICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJhaUVkaXRGaWVsZCgpLm5hbWVcIlxuICAgICAgICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLovpPlhaXliJflkI3np7BcIlxuICAgICAgICAgICAgICAgIFt0aHlVbmlxdWVDaGVja109XCJjaGVja1VuaXF1ZU5hbWVcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjc3VmZml4PlxuICAgICAgICAgICAgICAgIDx0aHktaW5wdXQtY291bnQ+PC90aHktaW5wdXQtY291bnQ+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3RoeS1pbnB1dC1ncm91cD5cbiAgICA8L3RoeS1mb3JtLWdyb3VwPlxuICAgIDx0aHktZm9ybS1ncm91cCB0aHlMYWJlbFRleHQ9XCLliJfnsbvlnotcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRoeS1kcm9wZG93bi1tZW51IHB5LTBcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtbC1uNSBtci1uNVwiPlxuICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgIHRoeURyb3Bkb3duTWVudUl0ZW1cbiAgICAgICAgICAgICAgICAgICAgW3RoeURyb3Bkb3duXT1cIm1lbnVcIlxuICAgICAgICAgICAgICAgICAgICBbdGh5RGlzYWJsZWRdPVwiaXNVcGRhdGUoKVwiXG4gICAgICAgICAgICAgICAgICAgIHRoeVRyaWdnZXI9XCJob3ZlclwiXG4gICAgICAgICAgICAgICAgICAgIHRoeVBsYWNlbWVudD1cInJpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImZpZWxkVHlwZUNsaWNrKCRldmVudClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHRoeS1pY29uIHRoeURyb3Bkb3duTWVudUl0ZW1JY29uIFt0aHlJY29uTmFtZV09XCJzZWxlY3RlZEZpZWxkT3B0aW9uKCkuaWNvblwiPjwvdGh5LWljb24+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIHRoeURyb3Bkb3duTWVudUl0ZW1OYW1lPnt7IHNlbGVjdGVkRmllbGRPcHRpb24oKS5uYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8dGh5LWljb24gdGh5RHJvcGRvd25NZW51SXRlbUV4dGVuZEljb24gdGh5SWNvbk5hbWU9XCJhbmdsZS1yaWdodFwiIGNsYXNzPVwidGV4dC1kZXNjXCI+PC90aHktaWNvbj5cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgQGlmIChzZWxlY3RlZEZpZWxkT3B0aW9uKCkudHlwZSA9PT0gYUlUYWJsZUZpZWxkVHlwZS5tZW1iZXIpIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gbXQtM1wiPlxuICAgICAgICAgICAgICAgIOWFgeiuuOmAieaLqeWkmuS4quaIkOWRmFxuICAgICAgICAgICAgICAgIDx0aHktc3dpdGNoXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9XCJpc011bHRpcGxlTWVtYmVyXCJcbiAgICAgICAgICAgICAgICAgICAgW3RoeURpc2FibGVkXT1cImlzVXBkYXRlKClcIlxuICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImlzTXVsdGlwbGVNZW1iZXJcIlxuICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJtdWx0aXBsZU1lbWJlckNoYW5nZSgpXCJcbiAgICAgICAgICAgICAgICAgICAgdGh5U2l6ZT1cInNtXCJcbiAgICAgICAgICAgICAgICA+PC90aHktc3dpdGNoPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICA8L3RoeS1mb3JtLWdyb3VwPlxuICAgIEBpZiAoYWlFeHRlcm5hbFRlbXBsYXRlKCkpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImFpRXh0ZXJuYWxUZW1wbGF0ZSgpXCI+PC9uZy1jb250YWluZXI+XG4gICAgfVxuICAgIDx0aHktZm9ybS1ncm91cC1mb290ZXIgdGh5QWxpZ249XCJyaWdodFwiPlxuICAgICAgICA8YnV0dG9uIHRoeUJ1dHRvbj1cImxpbmstc2Vjb25kYXJ5XCIgKGNsaWNrKT1cImNhbmNlbCgpXCIgdGh5U2l6ZT1cInNtXCI+5Y+W5raIPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gdGh5QnV0dG9uPVwicHJpbWFyeVwiICh0aHlGb3JtU3VibWl0KT1cImVkaXRGaWVsZFByb3BlcnR5KClcIiB0aHlTaXplPVwic21cIj7noa7lrpo8L2J1dHRvbj5cbiAgICA8L3RoeS1mb3JtLWdyb3VwLWZvb3Rlcj5cbjwvZm9ybT5cblxuPHRoeS1kcm9wZG93bi1tZW51ICNtZW51PlxuICAgIEBmb3IgKGl0ZW0gb2YgZmllbGRPcHRpb25zOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgPGFcbiAgICAgICAgICAgIHRoeURyb3Bkb3duTWVudUl0ZW1cbiAgICAgICAgICAgIGhyZWY9XCJqYXZhc2NyaXB0OjtcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgIGFjdGl2ZTogKGl0ZW0gfCBmaWVsZElzU2FtZU9wdGlvbjogYWlFZGl0RmllbGQoKSlcbiAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdEZpZWxkVHlwZShpdGVtKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDx0aHktaWNvbiBbdGh5SWNvbk5hbWVdPVwiaXRlbS5pY29uIVwiPjwvdGh5LWljb24+XG4gICAgICAgICAgICA8c3BhbiB0aHlEcm9wZG93bk1lbnVJdGVtTmFtZT57eyBpdGVtLm5hbWUgfX08L3NwYW4+XG4gICAgICAgIDwvYT5cbiAgICB9XG48L3RoeS1kcm9wZG93bi1tZW51PlxuIl19
|
@@ -1,23 +1,27 @@
|
|
1
1
|
import { AITableFieldType } from '../types';
|
2
|
+
export const AI_TABLE_FIELD_MINI_WIDTH = 140;
|
3
|
+
export const AI_TABLE_FIELD_MIN_WIDTH = 160;
|
4
|
+
export const AI_TABLE_FIELD_MIDDLE_WIDTH = 200;
|
5
|
+
export const AI_TABLE_FIELD_MAX_WIDTH = 300;
|
2
6
|
export const FieldOptions = [
|
3
7
|
{
|
4
8
|
type: AITableFieldType.text,
|
5
9
|
name: '单行文本',
|
6
10
|
icon: 'font',
|
7
|
-
width:
|
11
|
+
width: AI_TABLE_FIELD_MAX_WIDTH
|
8
12
|
},
|
9
13
|
// 多行文本
|
10
14
|
{
|
11
15
|
type: AITableFieldType.select,
|
12
16
|
name: '单选',
|
13
17
|
icon: 'check-circle',
|
14
|
-
width:
|
18
|
+
width: AI_TABLE_FIELD_MIN_WIDTH
|
15
19
|
},
|
16
20
|
{
|
17
21
|
type: AITableFieldType.select,
|
18
22
|
name: '多选',
|
19
23
|
icon: 'list-check',
|
20
|
-
width:
|
24
|
+
width: AI_TABLE_FIELD_MIDDLE_WIDTH,
|
21
25
|
settings: {
|
22
26
|
is_multiple: true
|
23
27
|
}
|
@@ -26,27 +30,21 @@ export const FieldOptions = [
|
|
26
30
|
type: AITableFieldType.number,
|
27
31
|
name: '数字',
|
28
32
|
icon: 'hashtag',
|
29
|
-
width:
|
33
|
+
width: AI_TABLE_FIELD_MINI_WIDTH
|
30
34
|
},
|
31
35
|
{
|
32
36
|
type: AITableFieldType.date,
|
33
37
|
name: '日期',
|
34
38
|
icon: 'calendar',
|
35
|
-
width:
|
39
|
+
width: AI_TABLE_FIELD_MIDDLE_WIDTH
|
36
40
|
},
|
37
41
|
{
|
38
42
|
type: AITableFieldType.member,
|
39
|
-
name: '
|
43
|
+
name: '成员',
|
40
44
|
icon: 'user',
|
41
|
-
width:
|
42
|
-
},
|
43
|
-
{
|
44
|
-
type: AITableFieldType.member,
|
45
|
-
name: '多个成员',
|
46
|
-
icon: 'user',
|
47
|
-
width: 200,
|
45
|
+
width: AI_TABLE_FIELD_MIN_WIDTH,
|
48
46
|
settings: {
|
49
|
-
is_multiple:
|
47
|
+
is_multiple: false
|
50
48
|
}
|
51
49
|
},
|
52
50
|
// 级联单选
|
@@ -55,43 +53,43 @@ export const FieldOptions = [
|
|
55
53
|
type: AITableFieldType.progress,
|
56
54
|
name: '进度',
|
57
55
|
icon: 'progress',
|
58
|
-
width:
|
56
|
+
width: AI_TABLE_FIELD_MIDDLE_WIDTH
|
59
57
|
},
|
60
58
|
{
|
61
59
|
type: AITableFieldType.rate,
|
62
60
|
name: '评分',
|
63
61
|
icon: 'star-circle',
|
64
|
-
width:
|
62
|
+
width: AI_TABLE_FIELD_MIN_WIDTH
|
65
63
|
},
|
66
64
|
{
|
67
65
|
type: AITableFieldType.link,
|
68
66
|
name: '链接',
|
69
67
|
icon: 'link-insert',
|
70
|
-
width:
|
68
|
+
width: AI_TABLE_FIELD_MIDDLE_WIDTH
|
71
69
|
},
|
72
70
|
{
|
73
71
|
type: AITableFieldType.createdBy,
|
74
72
|
name: '创建人',
|
75
73
|
icon: 'user',
|
76
|
-
width:
|
74
|
+
width: AI_TABLE_FIELD_MIN_WIDTH
|
77
75
|
},
|
78
76
|
{
|
79
77
|
type: AITableFieldType.createdAt,
|
80
78
|
name: '创建时间',
|
81
79
|
icon: 'calendar',
|
82
|
-
width:
|
80
|
+
width: AI_TABLE_FIELD_MIDDLE_WIDTH
|
83
81
|
},
|
84
82
|
{
|
85
83
|
type: AITableFieldType.updatedBy,
|
86
84
|
name: '更新人',
|
87
85
|
icon: 'user',
|
88
|
-
width:
|
86
|
+
width: AI_TABLE_FIELD_MIN_WIDTH
|
89
87
|
},
|
90
88
|
{
|
91
89
|
type: AITableFieldType.updatedAt,
|
92
90
|
name: '更新时间',
|
93
91
|
icon: 'calendar',
|
94
|
-
width:
|
92
|
+
width: AI_TABLE_FIELD_MIDDLE_WIDTH
|
95
93
|
}
|
96
94
|
];
|
97
|
-
//# sourceMappingURL=data:application/json;base64,
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9jb3JlL2NvbnN0YW50cy9maWVsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXNCLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRWhFLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLEdBQUcsQ0FBQztBQUM3QyxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxHQUFHLENBQUM7QUFDNUMsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsR0FBRyxDQUFDO0FBQy9DLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLEdBQUcsQ0FBQztBQUU1QyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQXlCO0lBQzlDO1FBQ0ksSUFBSSxFQUFFLGdCQUFnQixDQUFDLElBQUk7UUFDM0IsSUFBSSxFQUFFLE1BQU07UUFDWixJQUFJLEVBQUUsTUFBTTtRQUNaLEtBQUssRUFBRSx3QkFBd0I7S0FDbEM7SUFDRCxPQUFPO0lBQ1A7UUFDSSxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsTUFBTTtRQUM3QixJQUFJLEVBQUUsSUFBSTtRQUNWLElBQUksRUFBRSxjQUFjO1FBQ3BCLEtBQUssRUFBRSx3QkFBd0I7S0FDbEM7SUFDRDtRQUNJLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxNQUFNO1FBQzdCLElBQUksRUFBRSxJQUFJO1FBQ1YsSUFBSSxFQUFFLFlBQVk7UUFDbEIsS0FBSyxFQUFFLDJCQUEyQjtRQUNsQyxRQUFRLEVBQUU7WUFDTixXQUFXLEVBQUUsSUFBSTtTQUNwQjtLQUNKO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsTUFBTTtRQUM3QixJQUFJLEVBQUUsSUFBSTtRQUNWLElBQUksRUFBRSxTQUFTO1FBQ2YsS0FBSyxFQUFFLHlCQUF5QjtLQUNuQztJQUNEO1FBQ0ksSUFBSSxFQUFFLGdCQUFnQixDQUFDLElBQUk7UUFDM0IsSUFBSSxFQUFFLElBQUk7UUFDVixJQUFJLEVBQUUsVUFBVTtRQUNoQixLQUFLLEVBQUUsMkJBQTJCO0tBQ3JDO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsTUFBTTtRQUM3QixJQUFJLEVBQUUsSUFBSTtRQUNWLElBQUksRUFBRSxNQUFNO1FBQ1osS0FBSyxFQUFFLHdCQUF3QjtRQUMvQixRQUFRLEVBQUU7WUFDTixXQUFXLEVBQUUsS0FBSztTQUNyQjtLQUNKO0lBQ0QsT0FBTztJQUNQLE9BQU87SUFDUDtRQUNJLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxRQUFRO1FBQy9CLElBQUksRUFBRSxJQUFJO1FBQ1YsSUFBSSxFQUFFLFVBQVU7UUFDaEIsS0FBSyxFQUFFLDJCQUEyQjtLQUNyQztJQUNEO1FBQ0ksSUFBSSxFQUFFLGdCQUFnQixDQUFDLElBQUk7UUFDM0IsSUFBSSxFQUFFLElBQUk7UUFDVixJQUFJLEVBQUUsYUFBYTtRQUNuQixLQUFLLEVBQUUsd0JBQXdCO0tBQ2xDO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsSUFBSTtRQUMzQixJQUFJLEVBQUUsSUFBSTtRQUNWLElBQUksRUFBRSxhQUFhO1FBQ25CLEtBQUssRUFBRSwyQkFBMkI7S0FDckM7SUFDRDtRQUNJLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxTQUFTO1FBQ2hDLElBQUksRUFBRSxLQUFLO1FBQ1gsSUFBSSxFQUFFLE1BQU07UUFDWixLQUFLLEVBQUUsd0JBQXdCO0tBQ2xDO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsU0FBUztRQUNoQyxJQUFJLEVBQUUsTUFBTTtRQUNaLElBQUksRUFBRSxVQUFVO1FBQ2hCLEtBQUssRUFBRSwyQkFBMkI7S0FDckM7SUFDRDtRQUNJLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxTQUFTO1FBQ2hDLElBQUksRUFBRSxLQUFLO1FBQ1gsSUFBSSxFQUFFLE1BQU07UUFDWixLQUFLLEVBQUUsd0JBQXdCO0tBQ2xDO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsU0FBUztRQUNoQyxJQUFJLEVBQUUsTUFBTTtRQUNaLElBQUksRUFBRSxVQUFVO1FBQ2hCLEtBQUssRUFBRSwyQkFBMkI7S0FDckM7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUlUYWJsZUZpZWxkT3B0aW9uLCBBSVRhYmxlRmllbGRUeXBlIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfRklFTERfTUlOSV9XSURUSCA9IDE0MDtcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9GSUVMRF9NSU5fV0lEVEggPSAxNjA7XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfRklFTERfTUlERExFX1dJRFRIID0gMjAwO1xuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0ZJRUxEX01BWF9XSURUSCA9IDMwMDtcblxuZXhwb3J0IGNvbnN0IEZpZWxkT3B0aW9uczogQUlUYWJsZUZpZWxkT3B0aW9uW10gPSBbXG4gICAge1xuICAgICAgICB0eXBlOiBBSVRhYmxlRmllbGRUeXBlLnRleHQsXG4gICAgICAgIG5hbWU6ICfljZXooYzmlofmnKwnLFxuICAgICAgICBpY29uOiAnZm9udCcsXG4gICAgICAgIHdpZHRoOiBBSV9UQUJMRV9GSUVMRF9NQVhfV0lEVEhcbiAgICB9LFxuICAgIC8vIOWkmuihjOaWh+acrFxuICAgIHtcbiAgICAgICAgdHlwZTogQUlUYWJsZUZpZWxkVHlwZS5zZWxlY3QsXG4gICAgICAgIG5hbWU6ICfljZXpgIknLFxuICAgICAgICBpY29uOiAnY2hlY2stY2lyY2xlJyxcbiAgICAgICAgd2lkdGg6IEFJX1RBQkxFX0ZJRUxEX01JTl9XSURUSFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiBBSVRhYmxlRmllbGRUeXBlLnNlbGVjdCxcbiAgICAgICAgbmFtZTogJ+WkmumAiScsXG4gICAgICAgIGljb246ICdsaXN0LWNoZWNrJyxcbiAgICAgICAgd2lkdGg6IEFJX1RBQkxFX0ZJRUxEX01JRERMRV9XSURUSCxcbiAgICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgICAgIGlzX211bHRpcGxlOiB0cnVlXG4gICAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogQUlUYWJsZUZpZWxkVHlwZS5udW1iZXIsXG4gICAgICAgIG5hbWU6ICfmlbDlrZcnLFxuICAgICAgICBpY29uOiAnaGFzaHRhZycsXG4gICAgICAgIHdpZHRoOiBBSV9UQUJMRV9GSUVMRF9NSU5JX1dJRFRIXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6IEFJVGFibGVGaWVsZFR5cGUuZGF0ZSxcbiAgICAgICAgbmFtZTogJ+aXpeacnycsXG4gICAgICAgIGljb246ICdjYWxlbmRhcicsXG4gICAgICAgIHdpZHRoOiBBSV9UQUJMRV9GSUVMRF9NSURETEVfV0lEVEhcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogQUlUYWJsZUZpZWxkVHlwZS5tZW1iZXIsXG4gICAgICAgIG5hbWU6ICfmiJDlkZgnLFxuICAgICAgICBpY29uOiAndXNlcicsXG4gICAgICAgIHdpZHRoOiBBSV9UQUJMRV9GSUVMRF9NSU5fV0lEVEgsXG4gICAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgICAgICBpc19tdWx0aXBsZTogZmFsc2VcbiAgICAgICAgfVxuICAgIH0sXG4gICAgLy8g57qn6IGU5Y2V6YCJXG4gICAgLy8g57qn6IGU5aSa6YCJXG4gICAge1xuICAgICAgICB0eXBlOiBBSVRhYmxlRmllbGRUeXBlLnByb2dyZXNzLFxuICAgICAgICBuYW1lOiAn6L+b5bqmJyxcbiAgICAgICAgaWNvbjogJ3Byb2dyZXNzJyxcbiAgICAgICAgd2lkdGg6IEFJX1RBQkxFX0ZJRUxEX01JRERMRV9XSURUSFxuICAgIH0sXG4gICAge1xuICAgICAgICB0eXBlOiBBSVRhYmxlRmllbGRUeXBlLnJhdGUsXG4gICAgICAgIG5hbWU6ICfor4TliIYnLFxuICAgICAgICBpY29uOiAnc3Rhci1jaXJjbGUnLFxuICAgICAgICB3aWR0aDogQUlfVEFCTEVfRklFTERfTUlOX1dJRFRIXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6IEFJVGFibGVGaWVsZFR5cGUubGluayxcbiAgICAgICAgbmFtZTogJ+mTvuaOpScsXG4gICAgICAgIGljb246ICdsaW5rLWluc2VydCcsXG4gICAgICAgIHdpZHRoOiBBSV9UQUJMRV9GSUVMRF9NSURETEVfV0lEVEhcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogQUlUYWJsZUZpZWxkVHlwZS5jcmVhdGVkQnksXG4gICAgICAgIG5hbWU6ICfliJvlu7rkuronLFxuICAgICAgICBpY29uOiAndXNlcicsXG4gICAgICAgIHdpZHRoOiBBSV9UQUJMRV9GSUVMRF9NSU5fV0lEVEhcbiAgICB9LFxuICAgIHtcbiAgICAgICAgdHlwZTogQUlUYWJsZUZpZWxkVHlwZS5jcmVhdGVkQXQsXG4gICAgICAgIG5hbWU6ICfliJvlu7rml7bpl7QnLFxuICAgICAgICBpY29uOiAnY2FsZW5kYXInLFxuICAgICAgICB3aWR0aDogQUlfVEFCTEVfRklFTERfTUlERExFX1dJRFRIXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6IEFJVGFibGVGaWVsZFR5cGUudXBkYXRlZEJ5LFxuICAgICAgICBuYW1lOiAn5pu05paw5Lq6JyxcbiAgICAgICAgaWNvbjogJ3VzZXInLFxuICAgICAgICB3aWR0aDogQUlfVEFCTEVfRklFTERfTUlOX1dJRFRIXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHR5cGU6IEFJVGFibGVGaWVsZFR5cGUudXBkYXRlZEF0LFxuICAgICAgICBuYW1lOiAn5pu05paw5pe26Ze0JyxcbiAgICAgICAgaWNvbjogJ2NhbGVuZGFyJyxcbiAgICAgICAgd2lkdGg6IEFJX1RBQkxFX0ZJRUxEX01JRERMRV9XSURUSFxuICAgIH1cbl07XG4iXX0=
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { FieldOptions } from '../constants/field';
|
1
|
+
import { FieldOptions, AI_TABLE_FIELD_MIDDLE_WIDTH } from '../constants/field';
|
2
2
|
import { AITableFieldType } from '../types';
|
3
3
|
import { idCreator } from './id-creator';
|
4
4
|
export const isArrayField = (field) => {
|
@@ -31,11 +31,15 @@ export function createDefaultFieldName(aiTable, field) {
|
|
31
31
|
return FieldOptions[0].name;
|
32
32
|
}
|
33
33
|
export function getFieldOptionByField(field) {
|
34
|
-
|
34
|
+
let fieldOption = FieldOptions.find((item) => isSameFieldOption(item, field));
|
35
|
+
if (fieldOption && field.type === AITableFieldType.member && field.settings?.is_multiple) {
|
36
|
+
fieldOption.width = AI_TABLE_FIELD_MIDDLE_WIDTH;
|
37
|
+
}
|
38
|
+
return fieldOption;
|
35
39
|
}
|
36
40
|
export function isSameFieldOption(fieldOption, field) {
|
37
41
|
return (fieldOption.type === field.type &&
|
38
|
-
(fieldOption.type === AITableFieldType.select
|
42
|
+
(fieldOption.type === AITableFieldType.select
|
39
43
|
? !!fieldOption.settings?.is_multiple === !!field.settings?.is_multiple
|
40
44
|
: true));
|
41
45
|
}
|
@@ -43,4 +47,4 @@ export function createDefaultField(aiTable, type = AITableFieldType.text) {
|
|
43
47
|
const fieldOption = FieldOptions.find((item) => item.type === type);
|
44
48
|
return { _id: idCreator(), type, name: createDefaultFieldName(aiTable, fieldOption) };
|
45
49
|
}
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9jb3JlL3V0aWxzL2ZpZWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMvRSxPQUFPLEVBQTZDLGdCQUFnQixFQUE4QixNQUFNLFVBQVUsQ0FBQztBQUNuSCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXpDLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDLEtBQW1CLEVBQUUsRUFBRTtJQUNoRCxPQUFPLENBQ0gsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3RHLGdCQUFnQixDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsSUFBSSxDQUN6QyxDQUFDO0FBQ04sQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLENBQUMsS0FBbUIsRUFBRSxFQUFFO0lBQ2pELE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLENBQzVILEtBQUssQ0FBQyxJQUFJLENBQ2IsQ0FBQztBQUNOLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQW1CLEVBQUUsRUFBRTtJQUNqRCxPQUFPLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQzVHLENBQUMsQ0FBQztBQUVGLE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxLQUFtQjtJQUNwRCxJQUFJLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3RCLE9BQU8sRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUNELElBQUksYUFBYSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDdkIsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUNELE9BQU8sRUFBRSxDQUFDO0FBQ2QsQ0FBQztBQUVELE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxPQUFnQixFQUFFLEtBQXlCO0lBQzlFLE1BQU0sV0FBVyxHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pELElBQUksV0FBVyxFQUFFLENBQUM7UUFDZCxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDM0MsT0FBTyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDMUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQ1YsT0FBTyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxHQUFHLEdBQUcsR0FBRyxLQUFLLENBQUM7SUFDM0UsQ0FBQztJQUNELE9BQU8sWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUNoQyxDQUFDO0FBRUQsTUFBTSxVQUFVLHFCQUFxQixDQUFDLEtBQTRCO0lBQzlELElBQUksV0FBVyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzlFLElBQUksV0FBVyxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssZ0JBQWdCLENBQUMsTUFBTSxJQUFLLEtBQUssQ0FBQyxRQUEyQixFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQzNHLFdBQVcsQ0FBQyxLQUFLLEdBQUcsMkJBQTJCLENBQUM7SUFDcEQsQ0FBQztJQUNELE9BQU8sV0FBVyxDQUFDO0FBQ3ZCLENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsV0FBK0IsRUFBRSxLQUE0QjtJQUMzRixPQUFPLENBQ0gsV0FBVyxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsSUFBSTtRQUMvQixDQUFDLFdBQVcsQ0FBQyxJQUFJLEtBQUssZ0JBQWdCLENBQUMsTUFBTTtZQUN6QyxDQUFDLENBQUMsQ0FBQyxDQUFFLFdBQVcsQ0FBQyxRQUF1QixFQUFFLFdBQVcsS0FBSyxDQUFDLENBQUUsS0FBSyxDQUFDLFFBQXVCLEVBQUUsV0FBVztZQUN2RyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQ2QsQ0FBQztBQUNOLENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsT0FBZ0IsRUFBRSxPQUF5QixnQkFBZ0IsQ0FBQyxJQUFJO0lBQy9GLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFFLENBQUM7SUFDckUsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLHNCQUFzQixDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsRUFBRSxDQUFDO0FBQzFGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZE9wdGlvbnMsIEFJX1RBQkxFX0ZJRUxEX01JRERMRV9XSURUSCB9IGZyb20gJy4uL2NvbnN0YW50cy9maWVsZCc7XG5pbXBvcnQgeyBBSVRhYmxlLCBBSVRhYmxlRmllbGQsIEFJVGFibGVGaWVsZE9wdGlvbiwgQUlUYWJsZUZpZWxkVHlwZSwgSXNNdWx0aXBsZSwgTWVtYmVyU2V0dGluZ3MgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBpZENyZWF0b3IgfSBmcm9tICcuL2lkLWNyZWF0b3InO1xuXG5leHBvcnQgY29uc3QgaXNBcnJheUZpZWxkID0gKGZpZWxkOiBBSVRhYmxlRmllbGQpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgICBbQUlUYWJsZUZpZWxkVHlwZS5tZW1iZXIsIEFJVGFibGVGaWVsZFR5cGUuY3JlYXRlZEJ5LCBBSVRhYmxlRmllbGRUeXBlLnVwZGF0ZWRCeV0uaW5jbHVkZXMoZmllbGQudHlwZSkgfHxcbiAgICAgICAgQUlUYWJsZUZpZWxkVHlwZS5zZWxlY3QgPT09IGZpZWxkLnR5cGVcbiAgICApO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzU3lzdGVtRmllbGQgPSAoZmllbGQ6IEFJVGFibGVGaWVsZCkgPT4ge1xuICAgIHJldHVybiBbQUlUYWJsZUZpZWxkVHlwZS5jcmVhdGVkQXQsIEFJVGFibGVGaWVsZFR5cGUuY3JlYXRlZEJ5LCBBSVRhYmxlRmllbGRUeXBlLnVwZGF0ZWRBdCwgQUlUYWJsZUZpZWxkVHlwZS51cGRhdGVkQnldLmluY2x1ZGVzKFxuICAgICAgICBmaWVsZC50eXBlXG4gICAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBpc051bWJlckZpbGVkID0gKGZpZWxkOiBBSVRhYmxlRmllbGQpID0+IHtcbiAgICByZXR1cm4gW0FJVGFibGVGaWVsZFR5cGUubnVtYmVyLCBBSVRhYmxlRmllbGRUeXBlLnByb2dyZXNzLCBBSVRhYmxlRmllbGRUeXBlLnJhdGVdLmluY2x1ZGVzKGZpZWxkLnR5cGUpO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldERlZmF1bHRGaWVsZFZhbHVlKGZpZWxkOiBBSVRhYmxlRmllbGQpIHtcbiAgICBpZiAoaXNBcnJheUZpZWxkKGZpZWxkKSkge1xuICAgICAgICByZXR1cm4gW107XG4gICAgfVxuICAgIGlmIChpc051bWJlckZpbGVkKGZpZWxkKSkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRGVmYXVsdEZpZWxkTmFtZShhaVRhYmxlOiBBSVRhYmxlLCBmaWVsZDogQUlUYWJsZUZpZWxkT3B0aW9uKSB7XG4gICAgY29uc3QgZmllbGRPcHRpb24gPSBnZXRGaWVsZE9wdGlvbkJ5RmllbGQoZmllbGQpO1xuICAgIGlmIChmaWVsZE9wdGlvbikge1xuICAgICAgICBjb25zdCBjb3VudCA9IGFpVGFibGUuZmllbGRzKCkuZmlsdGVyKChpdGVtKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gaXNTYW1lRmllbGRPcHRpb24oZmllbGQsIGl0ZW0pO1xuICAgICAgICB9KS5sZW5ndGg7XG4gICAgICAgIHJldHVybiBjb3VudCA9PT0gMCA/IGZpZWxkT3B0aW9uLm5hbWUgOiBmaWVsZE9wdGlvbi5uYW1lICsgJyAnICsgY291bnQ7XG4gICAgfVxuICAgIHJldHVybiBGaWVsZE9wdGlvbnNbMF0ubmFtZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEZpZWxkT3B0aW9uQnlGaWVsZChmaWVsZDogUGFydGlhbDxBSVRhYmxlRmllbGQ+KSB7XG4gICAgbGV0IGZpZWxkT3B0aW9uID0gRmllbGRPcHRpb25zLmZpbmQoKGl0ZW0pID0+IGlzU2FtZUZpZWxkT3B0aW9uKGl0ZW0sIGZpZWxkKSk7XG4gICAgaWYgKGZpZWxkT3B0aW9uICYmIGZpZWxkLnR5cGUgPT09IEFJVGFibGVGaWVsZFR5cGUubWVtYmVyICYmIChmaWVsZC5zZXR0aW5ncyBhcyBNZW1iZXJTZXR0aW5ncyk/LmlzX211bHRpcGxlKSB7XG4gICAgICAgIGZpZWxkT3B0aW9uLndpZHRoID0gQUlfVEFCTEVfRklFTERfTUlERExFX1dJRFRIO1xuICAgIH1cbiAgICByZXR1cm4gZmllbGRPcHRpb247XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1NhbWVGaWVsZE9wdGlvbihmaWVsZE9wdGlvbjogQUlUYWJsZUZpZWxkT3B0aW9uLCBmaWVsZDogUGFydGlhbDxBSVRhYmxlRmllbGQ+KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgICAgZmllbGRPcHRpb24udHlwZSA9PT0gZmllbGQudHlwZSAmJlxuICAgICAgICAoZmllbGRPcHRpb24udHlwZSA9PT0gQUlUYWJsZUZpZWxkVHlwZS5zZWxlY3RcbiAgICAgICAgICAgID8gISEoZmllbGRPcHRpb24uc2V0dGluZ3MgYXMgSXNNdWx0aXBsZSk/LmlzX211bHRpcGxlID09PSAhIShmaWVsZC5zZXR0aW5ncyBhcyBJc011bHRpcGxlKT8uaXNfbXVsdGlwbGVcbiAgICAgICAgICAgIDogdHJ1ZSlcbiAgICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRGVmYXVsdEZpZWxkKGFpVGFibGU6IEFJVGFibGUsIHR5cGU6IEFJVGFibGVGaWVsZFR5cGUgPSBBSVRhYmxlRmllbGRUeXBlLnRleHQpIHtcbiAgICBjb25zdCBmaWVsZE9wdGlvbiA9IEZpZWxkT3B0aW9ucy5maW5kKChpdGVtKSA9PiBpdGVtLnR5cGUgPT09IHR5cGUpITtcbiAgICByZXR1cm4geyBfaWQ6IGlkQ3JlYXRvcigpLCB0eXBlLCBuYW1lOiBjcmVhdGVEZWZhdWx0RmllbGROYW1lKGFpVGFibGUsIGZpZWxkT3B0aW9uKSB9O1xufVxuIl19
|