ngx-bimplus-components 0.0.21 → 0.0.22
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/assets/languages/strings_en.json +11 -1
- package/esm2022/lib/components/bimplus-connection-designer/bimplus-connection-designer.component.mjs +37 -6
- package/esm2022/lib/components/bimplus-connection-designer/bimplus-connection-designer.interface.mjs +2 -0
- package/esm2022/lib/components/bimplus-flat-tree/bimplus-flat-tree.component.mjs +35 -6
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/ngx-bimplus-components.mjs +72 -16
- package/fesm2022/ngx-bimplus-components.mjs.map +1 -1
- package/lib/components/bimplus-connection-designer/bimplus-connection-designer.component.d.ts +9 -2
- package/lib/components/bimplus-connection-designer/bimplus-connection-designer.interface.d.ts +4 -0
- package/lib/components/bimplus-flat-tree/bimplus-flat-tree.component.d.ts +7 -1
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -2322,5 +2322,15 @@
|
|
|
2322
2322
|
"_Overlays_no_access_error_report":"Overlay with no access",
|
|
2323
2323
|
"_Add_from_Bluebeam": "Add from Bluebeam",
|
|
2324
2324
|
"_Connection_designer": "Connection Designer",
|
|
2325
|
-
"_Connexis": "Connexis"
|
|
2325
|
+
"_Connexis": "Connexis",
|
|
2326
|
+
"_Add_bluebeam_documents": "Add bluebeam documents",
|
|
2327
|
+
"_Bluebeam_Transfer_note":" NOTE: The import has started and may take several minutes depending on the file size. You will be notified whe the import is complete.",
|
|
2328
|
+
"_Click_here_to_see_documents": "Click here to see the files",
|
|
2329
|
+
"_External_files_import_is_finished": "External files import is finished",
|
|
2330
|
+
"_Succesfully_imported_files_count":"Succesfully imported: %@ files",
|
|
2331
|
+
"_Failed_imported_files_count":"Failed to import: %@ files",
|
|
2332
|
+
"_Ready_for_import": "Ready for import",
|
|
2333
|
+
"_Import_in_progress": "Import in progress",
|
|
2334
|
+
"_Choose_a_design_code": "Choose a code",
|
|
2335
|
+
"_No_design_codes_defined": "No design codes defined"
|
|
2326
2336
|
}
|
package/esm2022/lib/components/bimplus-connection-designer/bimplus-connection-designer.component.mjs
CHANGED
|
@@ -1,41 +1,72 @@
|
|
|
1
1
|
import { CommonModule } from '@angular/common';
|
|
2
2
|
import { Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';
|
|
3
|
+
import { FormsModule } from '@angular/forms';
|
|
4
|
+
import { NgSelectModule } from '@ng-select/ng-select';
|
|
3
5
|
import { TranslateService, TranslateModule } from '@ngx-translate/core';
|
|
4
6
|
import { BimplusLocalizedWidgetComponent } from "./../bimplus-localized-widget/bimplus-localized-widget.component";
|
|
5
7
|
import { BimplusSidenavDrawerContentComponent } from '../bimplus-sidenav-drawer-content/bimplus-sidenav-drawer-content.component';
|
|
6
8
|
import * as i0 from "@angular/core";
|
|
7
9
|
import * as i1 from "@ngx-translate/core";
|
|
8
10
|
import * as i2 from "@angular/common";
|
|
11
|
+
import * as i3 from "@angular/forms";
|
|
12
|
+
import * as i4 from "@ng-select/ng-select";
|
|
9
13
|
export class BimplusConnectionDesignerComponent extends BimplusLocalizedWidgetComponent {
|
|
10
14
|
constructor(translateService) {
|
|
11
15
|
super(translateService);
|
|
12
16
|
this.errorMessage = "";
|
|
13
17
|
this.successMessage = "";
|
|
14
|
-
|
|
18
|
+
// #region Design codes
|
|
19
|
+
this.chooseCode = "_Choose_a_design_code"; // Message for drop down list
|
|
20
|
+
this.designCodes = [
|
|
21
|
+
{ id: "0", name: "EN 1993-1-1 (Eurocode 3)" },
|
|
22
|
+
{ id: "1", name: "AISC 360-22 (16th Ed.): LRFD" },
|
|
23
|
+
{ id: "2", name: "AISC 360-22 (16th Ed.): ASD" },
|
|
24
|
+
{ id: "3", name: "CSA S16:19 (CISC 12th Ed.)" },
|
|
25
|
+
];
|
|
26
|
+
this.currentDesignCode = null;
|
|
27
|
+
this.designCodeChanged = new EventEmitter();
|
|
28
|
+
// #endregion
|
|
29
|
+
// #region Connection calculation
|
|
30
|
+
this.calculationCanBeStarted = true;
|
|
15
31
|
this.startCalculationClicked = new EventEmitter();
|
|
16
32
|
}
|
|
33
|
+
set activeDesignCode(value) {
|
|
34
|
+
this.currentDesignCode = value;
|
|
35
|
+
this.designCodeChanged.emit(this.currentDesignCode);
|
|
36
|
+
}
|
|
37
|
+
get activeDesignCode() {
|
|
38
|
+
return this.currentDesignCode;
|
|
39
|
+
}
|
|
17
40
|
startCalculation() {
|
|
18
|
-
if (this.
|
|
41
|
+
if (this.calculationCanBeStarted) {
|
|
19
42
|
this.startCalculationClicked.emit();
|
|
20
43
|
}
|
|
21
44
|
}
|
|
22
45
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: BimplusConnectionDesignerComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
23
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: BimplusConnectionDesignerComponent, isStandalone: true, selector: "lib-bimplus-connection-designer", inputs: { errorMessage: "errorMessage", successMessage: "successMessage", selectedObjectsAvailable: "selectedObjectsAvailable" }, outputs: { startCalculationClicked: "startCalculationClicked" }, providers: [TranslateService], usesInheritance: true, ngImport: i0, template: "<lib-bimplus-sidenav-drawer-content\r\n [header]=\"'_Connection_designer' | translate\"\r\n>\r\n <p>\r\n Initiate the calculation of steel connections by first selecting elements\r\n and then proceeding with the calculation.\r\n </p>\r\n\r\n <div class=\"button-row\">\r\n <button\r\n class=\"primary-button\"\r\n [ngClass]=\"selectedObjectsAvailable ? '' : 'disabled'\"\r\n (click)=\"startCalculation()\"\r\n >\r\n {{ \"Start calculation\" | translate }}\r\n </button>\r\n </div>\r\n\r\n <div *ngIf=\"errorMessage\" class=\"error-message\">\r\n {{ errorMessage }}\r\n </div>\r\n\r\n <div *ngIf=\"successMessage\" class=\"success-message\">\r\n {{ successMessage }}\r\n </div>\r\n</lib-bimplus-sidenav-drawer-content>\r\n", styles: [".primary-button{text-transform:uppercase;font: 700 1em Source Sans Pro,Helvetica,Arial,tahoma,sans-serif;display:inline-block;margin-left:.8rem!important;padding:.2rem 1rem .4rem!important;height:2.4rem;white-space:nowrap;border-radius:.2rem!important;vertical-align:middle;font-size:1.2rem;border:solid .2rem #fe5000!important;color:#fff!important;background-color:#fe5000!important;cursor:pointer}.primary-button:hover{border:solid .2rem #eb4b00!important;color:#fff!important;background-color:#eb4b00!important;outline:0}.primary-button.disabled{border:solid .2rem #bababa!important;color:#fff!important;background-color:#bababa!important;cursor:default}.button-row{display:flex;margin-top:.8rem;margin-bottom:.8rem;justify-content:flex-end}.error-message{background-color:#fff;color:#b71c1c;padding:.7rem;border:.2rem solid #b71c1c;border-radius:.5rem;margin-top:.5rem;margin-bottom:.5rem;font-size:1.28rem}.success-message{background-color:#fff;color:#006400;padding:.7rem;border:.2rem solid #006400;border-radius:.5rem;margin-top:.5rem;margin-bottom:.5rem;font-size:1.28rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "component", type: BimplusSidenavDrawerContentComponent, selector: "lib-bimplus-sidenav-drawer-content", inputs: ["header"] }], encapsulation: i0.ViewEncapsulation.ShadowDom }); }
|
|
46
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.10", type: BimplusConnectionDesignerComponent, isStandalone: true, selector: "lib-bimplus-connection-designer", inputs: { errorMessage: "errorMessage", successMessage: "successMessage", designCodes: "designCodes", currentDesignCode: "currentDesignCode", calculationCanBeStarted: "calculationCanBeStarted" }, outputs: { designCodeChanged: "designCodeChanged", startCalculationClicked: "startCalculationClicked" }, providers: [TranslateService], usesInheritance: true, ngImport: i0, template: "<lib-bimplus-sidenav-drawer-content\r\n [header]=\"'_Connection_designer' | translate\"\r\n>\r\n <div class=\"connection-designer-content\">\r\n <p>\r\n Initiate the calculation of steel connections by first selecting elements\r\n and then proceeding with the calculation.\r\n </p>\r\n\r\n @if(designCodes.length>0){\r\n <div class=\"design-codes\">\r\n <ng-select\r\n class=\"design-codes-dropdown\"\r\n [(ngModel)]=\"activeDesignCode\"\r\n [clearable]=\"false\"\r\n [searchable]=\"false\"\r\n [placeholder]=\"chooseCode | translate\"\r\n >\r\n <ng-option *ngFor=\"let code of designCodes\" [value]=\"code\">{{\r\n code.name\r\n }}</ng-option>\r\n </ng-select>\r\n </div>\r\n } @else {\r\n <div class=\"no-design-codes\">\r\n {{ \"_No_design_codes_defined\" | translate }}\r\n </div>\r\n }\r\n\r\n <div class=\"button-row\">\r\n <button\r\n class=\"primary-button\"\r\n [ngClass]=\"calculationCanBeStarted ? '' : 'disabled'\"\r\n (click)=\"startCalculation()\"\r\n >\r\n {{ \"Start calculation\" | translate }}\r\n </button>\r\n </div>\r\n\r\n <div *ngIf=\"errorMessage\" class=\"error-message\">\r\n {{ errorMessage }}\r\n </div>\r\n\r\n <div *ngIf=\"successMessage\" class=\"success-message\">\r\n {{ successMessage }}\r\n </div>\r\n </div>\r\n</lib-bimplus-sidenav-drawer-content>\r\n", styles: [".ng-select.ng-select-opened>.ng-select-container{background:#fff;border-color:#b3b3b3 #ccc #d9d9d9}.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:none}.ng-select.ng-select-opened>.ng-select-container .ng-arrow{top:-2px;border-color:transparent transparent #999;border-width:0 5px 5px}.ng-select.ng-select-opened>.ng-select-container .ng-arrow:hover{border-color:transparent transparent #333}.ng-select.ng-select-opened.ng-select-top>.ng-select-container{border-top-right-radius:0;border-top-left-radius:0}.ng-select.ng-select-opened.ng-select-right>.ng-select-container{border-top-right-radius:0;border-bottom-right-radius:0}.ng-select.ng-select-opened.ng-select-bottom>.ng-select-container{border-bottom-right-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-opened.ng-select-left>.ng-select-container{border-top-left-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-disabled>.ng-select-container{background-color:#f9f9f9}.ng-select .ng-has-value .ng-placeholder{display:none}.ng-select .ng-select-container{color:#333;background-color:#fff;border-radius:0;border:1px solid #ccc;min-height:36px;align-items:center}.ng-select .ng-select-container:hover{box-shadow:0 1px #0000000f;background-color:#f5f5f5}.ng-select .ng-select-container .ng-value-container{align-items:center;padding-left:10px}[dir=rtl] .ng-select .ng-select-container .ng-value-container{padding-right:10px;padding-left:0}.ng-select .ng-select-container .ng-value-container .ng-placeholder{color:#999}.ng-select.ng-select-single .ng-select-container{height:36px}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{top:5px;left:0;padding-left:10px;padding-right:50px}[dir=rtl] .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{padding-right:10px;padding-left:50px}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value{background-color:#f9f9f9;border:1px solid #e6e6e6}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value .ng-value-label{padding:0 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-top:5px;padding-left:7px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-right:7px;padding-left:0}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{font-size:.9em;margin-bottom:5px;color:#333;background-color:#fff1eb;border-radius:2px;margin-right:5px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{margin-right:0;margin-left:5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled{background-color:#f9f9f9}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:5px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:0;padding-right:5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-label,.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon{display:inline-block;padding:1px 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon:hover{background-color:#d1e8ff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-right:1px solid #b8dbff}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-left:1px solid #b8dbff;border-right:none}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:1px solid #b8dbff}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:0;border-right:1px solid #b8dbff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 0 3px 3px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 3px 3px 0}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input>input{color:#000}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{top:5px;padding-bottom:5px;padding-left:3px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{padding-right:3px;padding-left:0}.ng-select .ng-clear-wrapper{color:#999}.ng-select .ng-clear-wrapper:hover .ng-clear{color:#d0021b}.ng-select .ng-clear-wrapper:focus .ng-clear{color:#d0021b}.ng-select .ng-clear-wrapper:focus{outline:none}.ng-select .ng-spinner-zone{padding:5px 5px 0 0}[dir=rtl] .ng-select .ng-spinner-zone{padding:5px 0 0 5px}.ng-select .ng-arrow-wrapper{width:25px;padding-right:5px}[dir=rtl] .ng-select .ng-arrow-wrapper{padding-left:5px;padding-right:0}.ng-select .ng-arrow-wrapper:hover .ng-arrow{border-top-color:#666}.ng-select .ng-arrow-wrapper .ng-arrow{border-color:#999 transparent transparent;border-style:solid;border-width:5px 5px 2.5px}.ng-dropdown-panel{background-color:#fff;border:1px solid #ccc;box-shadow:0 1px #0000000f;left:0}.ng-dropdown-panel.ng-select-top{bottom:100%;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-color:#e6e6e6;margin-bottom:-1px}.ng-dropdown-panel.ng-select-top .ng-dropdown-panel-items .ng-option:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.ng-dropdown-panel.ng-select-right{left:100%;top:0;border-top-right-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;border-bottom-color:#e6e6e6;margin-bottom:-1px}.ng-dropdown-panel.ng-select-right .ng-dropdown-panel-items .ng-option:first-child{border-top-right-radius:4px}.ng-dropdown-panel.ng-select-bottom{top:100%;border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-color:#e6e6e6;margin-top:-1px}.ng-dropdown-panel.ng-select-bottom .ng-dropdown-panel-items .ng-option:last-child{border-bottom-right-radius:0;border-bottom-left-radius:0}.ng-dropdown-panel.ng-select-left{left:-100%;top:0;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;border-bottom-color:#e6e6e6;margin-bottom:-1px}.ng-dropdown-panel.ng-select-left .ng-dropdown-panel-items .ng-option:first-child{border-top-left-radius:4px}.ng-dropdown-panel .ng-dropdown-header{border-bottom:1px solid #ccc;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-footer{border-top:1px solid #ccc;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup{-webkit-user-select:none;user-select:none;padding:8px 10px;font-weight:500;color:#0000008a;cursor:pointer}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-disabled{cursor:default}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-marked{background-color:#f5f5f5}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected.ng-option-marked{color:#0000008a;background-color:#fff1eb;font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{background-color:#fff;color:#000000de;padding:8px 10px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{color:#333;background-color:#fff1eb}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected .ng-option-label,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked .ng-option-label{font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-marked{background-color:#f5f5f5;color:#333}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-disabled{color:#ccc}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-left:22px}[dir=rtl] .ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-right:22px;padding-left:0}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{font-size:80%;font-weight:400;padding-right:5px}[dir=rtl] .ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{padding-left:5px;padding-right:0}[dir=rtl] .ng-dropdown-panel{direction:rtl;text-align:right}.primary-button{text-transform:uppercase;font: 700 1em Source Sans Pro,Helvetica,Arial,tahoma,sans-serif;display:inline-block;margin-left:.8rem!important;padding:.2rem 1rem .4rem!important;height:2.4rem;white-space:nowrap;border-radius:.2rem!important;vertical-align:middle;font-size:1.2rem;border:solid .2rem #fe5000!important;color:#fff!important;background-color:#fe5000!important;cursor:pointer}.primary-button:hover{border:solid .2rem #eb4b00!important;color:#fff!important;background-color:#eb4b00!important;outline:0}.primary-button.disabled{border:solid .2rem #bababa!important;color:#fff!important;background-color:#bababa!important;cursor:default}.button-row{display:flex;margin-top:.8rem;margin-bottom:.8rem;justify-content:flex-end}.error-message{background-color:#fff;color:#b71c1c;padding:.7rem;border:.2rem solid #b71c1c;border-radius:.5rem;margin-top:.5rem;margin-bottom:.5rem;font-size:1.28rem}.success-message{background-color:#fff;color:#006400;padding:.7rem;border:.2rem solid #006400;border-radius:.5rem;margin-top:.5rem;margin-bottom:.5rem;font-size:1.28rem}.connection-designer-content{display:flex;flex-direction:column}.connection-designer-content>.design-codes{margin-top:.1rem;margin-bottom:.1rem;height:2.4rem}.connection-designer-content>.design-codes>.design-codes-dropdown .ng-select-container{height:2.4rem;min-height:2.4rem}.connection-designer-content>.no-design-codes{display:block;width:100%;color:#bababa;text-align:left;padding-bottom:.8rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NgSelectModule }, { kind: "component", type: i4.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "deselectOnClick"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "component", type: i4.NgOptionComponent, selector: "ng-option", inputs: ["value", "disabled"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "component", type: BimplusSidenavDrawerContentComponent, selector: "lib-bimplus-sidenav-drawer-content", inputs: ["header"] }], encapsulation: i0.ViewEncapsulation.ShadowDom }); }
|
|
24
47
|
}
|
|
25
48
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: BimplusConnectionDesignerComponent, decorators: [{
|
|
26
49
|
type: Component,
|
|
27
50
|
args: [{ selector: 'lib-bimplus-connection-designer', standalone: true, imports: [
|
|
28
51
|
CommonModule,
|
|
52
|
+
FormsModule,
|
|
53
|
+
NgSelectModule,
|
|
29
54
|
TranslateModule,
|
|
30
55
|
BimplusSidenavDrawerContentComponent,
|
|
31
|
-
], providers: [TranslateService], encapsulation: ViewEncapsulation.ShadowDom, template: "<lib-bimplus-sidenav-drawer-content\r\n [header]=\"'_Connection_designer' | translate\"\r\n>\r\n <p>\r\n Initiate the calculation of steel connections by first selecting elements\r\n and then proceeding with the calculation.\r\n </p>\r\n\r\n <div class=\"button-row\">\r\n <button\r\n class=\"primary-button\"\r\n [ngClass]=\"selectedObjectsAvailable ? '' : 'disabled'\"\r\n (click)=\"startCalculation()\"\r\n >\r\n {{ \"Start calculation\" | translate }}\r\n </button>\r\n </div>\r\n\r\n <div *ngIf=\"errorMessage\" class=\"error-message\">\r\n {{ errorMessage }}\r\n </div>\r\n\r\n <div *ngIf=\"successMessage\" class=\"success-message\">\r\n {{ successMessage }}\r\n </div>\r\n</lib-bimplus-sidenav-drawer-content>\r\n", styles: [".primary-button{text-transform:uppercase;font: 700 1em Source Sans Pro,Helvetica,Arial,tahoma,sans-serif;display:inline-block;margin-left:.8rem!important;padding:.2rem 1rem .4rem!important;height:2.4rem;white-space:nowrap;border-radius:.2rem!important;vertical-align:middle;font-size:1.2rem;border:solid .2rem #fe5000!important;color:#fff!important;background-color:#fe5000!important;cursor:pointer}.primary-button:hover{border:solid .2rem #eb4b00!important;color:#fff!important;background-color:#eb4b00!important;outline:0}.primary-button.disabled{border:solid .2rem #bababa!important;color:#fff!important;background-color:#bababa!important;cursor:default}.button-row{display:flex;margin-top:.8rem;margin-bottom:.8rem;justify-content:flex-end}.error-message{background-color:#fff;color:#b71c1c;padding:.7rem;border:.2rem solid #b71c1c;border-radius:.5rem;margin-top:.5rem;margin-bottom:.5rem;font-size:1.28rem}.success-message{background-color:#fff;color:#006400;padding:.7rem;border:.2rem solid #006400;border-radius:.5rem;margin-top:.5rem;margin-bottom:.5rem;font-size:1.28rem}\n"] }]
|
|
56
|
+
], providers: [TranslateService], encapsulation: ViewEncapsulation.ShadowDom, template: "<lib-bimplus-sidenav-drawer-content\r\n [header]=\"'_Connection_designer' | translate\"\r\n>\r\n <div class=\"connection-designer-content\">\r\n <p>\r\n Initiate the calculation of steel connections by first selecting elements\r\n and then proceeding with the calculation.\r\n </p>\r\n\r\n @if(designCodes.length>0){\r\n <div class=\"design-codes\">\r\n <ng-select\r\n class=\"design-codes-dropdown\"\r\n [(ngModel)]=\"activeDesignCode\"\r\n [clearable]=\"false\"\r\n [searchable]=\"false\"\r\n [placeholder]=\"chooseCode | translate\"\r\n >\r\n <ng-option *ngFor=\"let code of designCodes\" [value]=\"code\">{{\r\n code.name\r\n }}</ng-option>\r\n </ng-select>\r\n </div>\r\n } @else {\r\n <div class=\"no-design-codes\">\r\n {{ \"_No_design_codes_defined\" | translate }}\r\n </div>\r\n }\r\n\r\n <div class=\"button-row\">\r\n <button\r\n class=\"primary-button\"\r\n [ngClass]=\"calculationCanBeStarted ? '' : 'disabled'\"\r\n (click)=\"startCalculation()\"\r\n >\r\n {{ \"Start calculation\" | translate }}\r\n </button>\r\n </div>\r\n\r\n <div *ngIf=\"errorMessage\" class=\"error-message\">\r\n {{ errorMessage }}\r\n </div>\r\n\r\n <div *ngIf=\"successMessage\" class=\"success-message\">\r\n {{ successMessage }}\r\n </div>\r\n </div>\r\n</lib-bimplus-sidenav-drawer-content>\r\n", styles: [".ng-select.ng-select-opened>.ng-select-container{background:#fff;border-color:#b3b3b3 #ccc #d9d9d9}.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:none}.ng-select.ng-select-opened>.ng-select-container .ng-arrow{top:-2px;border-color:transparent transparent #999;border-width:0 5px 5px}.ng-select.ng-select-opened>.ng-select-container .ng-arrow:hover{border-color:transparent transparent #333}.ng-select.ng-select-opened.ng-select-top>.ng-select-container{border-top-right-radius:0;border-top-left-radius:0}.ng-select.ng-select-opened.ng-select-right>.ng-select-container{border-top-right-radius:0;border-bottom-right-radius:0}.ng-select.ng-select-opened.ng-select-bottom>.ng-select-container{border-bottom-right-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-opened.ng-select-left>.ng-select-container{border-top-left-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-disabled>.ng-select-container{background-color:#f9f9f9}.ng-select .ng-has-value .ng-placeholder{display:none}.ng-select .ng-select-container{color:#333;background-color:#fff;border-radius:0;border:1px solid #ccc;min-height:36px;align-items:center}.ng-select .ng-select-container:hover{box-shadow:0 1px #0000000f;background-color:#f5f5f5}.ng-select .ng-select-container .ng-value-container{align-items:center;padding-left:10px}[dir=rtl] .ng-select .ng-select-container .ng-value-container{padding-right:10px;padding-left:0}.ng-select .ng-select-container .ng-value-container .ng-placeholder{color:#999}.ng-select.ng-select-single .ng-select-container{height:36px}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{top:5px;left:0;padding-left:10px;padding-right:50px}[dir=rtl] .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{padding-right:10px;padding-left:50px}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value{background-color:#f9f9f9;border:1px solid #e6e6e6}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value .ng-value-label{padding:0 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-top:5px;padding-left:7px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-right:7px;padding-left:0}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{font-size:.9em;margin-bottom:5px;color:#333;background-color:#fff1eb;border-radius:2px;margin-right:5px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{margin-right:0;margin-left:5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled{background-color:#f9f9f9}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:5px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:0;padding-right:5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-label,.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon{display:inline-block;padding:1px 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon:hover{background-color:#d1e8ff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-right:1px solid #b8dbff}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-left:1px solid #b8dbff;border-right:none}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:1px solid #b8dbff}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:0;border-right:1px solid #b8dbff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 0 3px 3px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 3px 3px 0}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input>input{color:#000}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{top:5px;padding-bottom:5px;padding-left:3px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{padding-right:3px;padding-left:0}.ng-select .ng-clear-wrapper{color:#999}.ng-select .ng-clear-wrapper:hover .ng-clear{color:#d0021b}.ng-select .ng-clear-wrapper:focus .ng-clear{color:#d0021b}.ng-select .ng-clear-wrapper:focus{outline:none}.ng-select .ng-spinner-zone{padding:5px 5px 0 0}[dir=rtl] .ng-select .ng-spinner-zone{padding:5px 0 0 5px}.ng-select .ng-arrow-wrapper{width:25px;padding-right:5px}[dir=rtl] .ng-select .ng-arrow-wrapper{padding-left:5px;padding-right:0}.ng-select .ng-arrow-wrapper:hover .ng-arrow{border-top-color:#666}.ng-select .ng-arrow-wrapper .ng-arrow{border-color:#999 transparent transparent;border-style:solid;border-width:5px 5px 2.5px}.ng-dropdown-panel{background-color:#fff;border:1px solid #ccc;box-shadow:0 1px #0000000f;left:0}.ng-dropdown-panel.ng-select-top{bottom:100%;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-color:#e6e6e6;margin-bottom:-1px}.ng-dropdown-panel.ng-select-top .ng-dropdown-panel-items .ng-option:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.ng-dropdown-panel.ng-select-right{left:100%;top:0;border-top-right-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;border-bottom-color:#e6e6e6;margin-bottom:-1px}.ng-dropdown-panel.ng-select-right .ng-dropdown-panel-items .ng-option:first-child{border-top-right-radius:4px}.ng-dropdown-panel.ng-select-bottom{top:100%;border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-color:#e6e6e6;margin-top:-1px}.ng-dropdown-panel.ng-select-bottom .ng-dropdown-panel-items .ng-option:last-child{border-bottom-right-radius:0;border-bottom-left-radius:0}.ng-dropdown-panel.ng-select-left{left:-100%;top:0;border-top-left-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px;border-bottom-color:#e6e6e6;margin-bottom:-1px}.ng-dropdown-panel.ng-select-left .ng-dropdown-panel-items .ng-option:first-child{border-top-left-radius:4px}.ng-dropdown-panel .ng-dropdown-header{border-bottom:1px solid #ccc;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-footer{border-top:1px solid #ccc;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup{-webkit-user-select:none;user-select:none;padding:8px 10px;font-weight:500;color:#0000008a;cursor:pointer}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-disabled{cursor:default}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-marked{background-color:#f5f5f5}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected.ng-option-marked{color:#0000008a;background-color:#fff1eb;font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{background-color:#fff;color:#000000de;padding:8px 10px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{color:#333;background-color:#fff1eb}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected .ng-option-label,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked .ng-option-label{font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-marked{background-color:#f5f5f5;color:#333}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-disabled{color:#ccc}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-left:22px}[dir=rtl] .ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-right:22px;padding-left:0}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{font-size:80%;font-weight:400;padding-right:5px}[dir=rtl] .ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{padding-left:5px;padding-right:0}[dir=rtl] .ng-dropdown-panel{direction:rtl;text-align:right}.primary-button{text-transform:uppercase;font: 700 1em Source Sans Pro,Helvetica,Arial,tahoma,sans-serif;display:inline-block;margin-left:.8rem!important;padding:.2rem 1rem .4rem!important;height:2.4rem;white-space:nowrap;border-radius:.2rem!important;vertical-align:middle;font-size:1.2rem;border:solid .2rem #fe5000!important;color:#fff!important;background-color:#fe5000!important;cursor:pointer}.primary-button:hover{border:solid .2rem #eb4b00!important;color:#fff!important;background-color:#eb4b00!important;outline:0}.primary-button.disabled{border:solid .2rem #bababa!important;color:#fff!important;background-color:#bababa!important;cursor:default}.button-row{display:flex;margin-top:.8rem;margin-bottom:.8rem;justify-content:flex-end}.error-message{background-color:#fff;color:#b71c1c;padding:.7rem;border:.2rem solid #b71c1c;border-radius:.5rem;margin-top:.5rem;margin-bottom:.5rem;font-size:1.28rem}.success-message{background-color:#fff;color:#006400;padding:.7rem;border:.2rem solid #006400;border-radius:.5rem;margin-top:.5rem;margin-bottom:.5rem;font-size:1.28rem}.connection-designer-content{display:flex;flex-direction:column}.connection-designer-content>.design-codes{margin-top:.1rem;margin-bottom:.1rem;height:2.4rem}.connection-designer-content>.design-codes>.design-codes-dropdown .ng-select-container{height:2.4rem;min-height:2.4rem}.connection-designer-content>.no-design-codes{display:block;width:100%;color:#bababa;text-align:left;padding-bottom:.8rem}\n"] }]
|
|
32
57
|
}], ctorParameters: () => [{ type: i1.TranslateService }], propDecorators: { errorMessage: [{
|
|
33
58
|
type: Input
|
|
34
59
|
}], successMessage: [{
|
|
35
60
|
type: Input
|
|
36
|
-
}],
|
|
61
|
+
}], designCodes: [{
|
|
62
|
+
type: Input
|
|
63
|
+
}], currentDesignCode: [{
|
|
64
|
+
type: Input
|
|
65
|
+
}], designCodeChanged: [{
|
|
66
|
+
type: Output
|
|
67
|
+
}], calculationCanBeStarted: [{
|
|
37
68
|
type: Input
|
|
38
69
|
}], startCalculationClicked: [{
|
|
39
70
|
type: Output
|
|
40
71
|
}] } });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmltcGx1cy1jb25uZWN0aW9uLWRlc2lnbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1iaW1wbHVzLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2JpbXBsdXMtY29ubmVjdGlvbi1kZXNpZ25lci9iaW1wbHVzLWNvbm5lY3Rpb24tZGVzaWduZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWJpbXBsdXMtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvYmltcGx1cy1jb25uZWN0aW9uLWRlc2lnbmVyL2JpbXBsdXMtY29ubmVjdGlvbi1kZXNpZ25lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV4RSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQTtBQUNsSCxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSw0RUFBNEUsQ0FBQzs7Ozs7O0FBa0JsSSxNQUFNLE9BQU8sa0NBQW1DLFNBQVEsK0JBQStCO0lBRXJGLFlBQVksZ0JBQWtDO1FBQzVDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO1FBR2hCLGlCQUFZLEdBQVcsRUFBRSxDQUFDO1FBQzFCLG1CQUFjLEdBQVcsRUFBRSxDQUFDO1FBRXJDLHVCQUF1QjtRQUV2QixlQUFVLEdBQVksdUJBQXVCLENBQUMsQ0FBQyw2QkFBNkI7UUFFbkUsZ0JBQVcsR0FBdUI7WUFDekMsRUFBQyxFQUFFLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSwwQkFBMEIsRUFBQztZQUMzQyxFQUFDLEVBQUUsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLDhCQUE4QixFQUFDO1lBQy9DLEVBQUMsRUFBRSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsNkJBQTZCLEVBQUM7WUFDOUMsRUFBQyxFQUFFLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSw0QkFBNEIsRUFBQztTQUM5QyxDQUFDO1FBQ08sc0JBQWlCLEdBQXVCLElBQUksQ0FBQztRQUU1QyxzQkFBaUIsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBVzdELGFBQWE7UUFFYixpQ0FBaUM7UUFFeEIsNEJBQXVCLEdBQVksSUFBSSxDQUFDO1FBRXZDLDRCQUF1QixHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7SUFsQzdELENBQUM7SUFtQkQsSUFBSSxnQkFBZ0IsQ0FBQyxLQUFrQjtRQUNyQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQy9CLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQ2hDLENBQUM7SUFVRCxnQkFBZ0I7UUFDZCxJQUFJLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1lBQ2pDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN0QyxDQUFDO0lBQ0gsQ0FBQzsrR0E1Q1Usa0NBQWtDO21HQUFsQyxrQ0FBa0MsMlhBTGxDLENBQUMsZ0JBQWdCLENBQUMsaURDcEIvQix1OENBZ0RBLGl0VERsQ0ksWUFBWSw2VkFDWixXQUFXLDhWQUNYLGNBQWMsNi9CQUNkLGVBQWUsNEZBQ2Ysb0NBQW9DOzs0RkFPM0Isa0NBQWtDO2tCQWY5QyxTQUFTOytCQUNFLGlDQUFpQyxjQUMvQixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixvQ0FBb0M7cUJBQ3JDLGFBQ1UsQ0FBQyxnQkFBZ0IsQ0FBQyxpQkFHZCxpQkFBaUIsQ0FBQyxTQUFTO3FGQVFqQyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBTUcsV0FBVztzQkFBbkIsS0FBSztnQkFNRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBRUksaUJBQWlCO3NCQUExQixNQUFNO2dCQWVFLHVCQUF1QjtzQkFBL0IsS0FBSztnQkFFSSx1QkFBdUI7c0JBQWhDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE5nU2VsZWN0TW9kdWxlIH0gZnJvbSAnQG5nLXNlbGVjdC9uZy1zZWxlY3QnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlLCBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuXHJcbmltcG9ydCB7IEJpbXBsdXNMb2NhbGl6ZWRXaWRnZXRDb21wb25lbnQgfSBmcm9tIFwiLi8uLi9iaW1wbHVzLWxvY2FsaXplZC13aWRnZXQvYmltcGx1cy1sb2NhbGl6ZWQtd2lkZ2V0LmNvbXBvbmVudFwiXHJcbmltcG9ydCB7IEJpbXBsdXNTaWRlbmF2RHJhd2VyQ29udGVudENvbXBvbmVudCB9IGZyb20gJy4uL2JpbXBsdXMtc2lkZW5hdi1kcmF3ZXItY29udGVudC9iaW1wbHVzLXNpZGVuYXYtZHJhd2VyLWNvbnRlbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRGVzaWduQ29kZSB9IGZyb20gJy4vYmltcGx1cy1jb25uZWN0aW9uLWRlc2lnbmVyLmludGVyZmFjZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1iaW1wbHVzLWNvbm5lY3Rpb24tZGVzaWduZXInLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBOZ1NlbGVjdE1vZHVsZSxcclxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcclxuICAgIEJpbXBsdXNTaWRlbmF2RHJhd2VyQ29udGVudENvbXBvbmVudCxcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1RyYW5zbGF0ZVNlcnZpY2VdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9iaW1wbHVzLWNvbm5lY3Rpb24tZGVzaWduZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9iaW1wbHVzLWNvbm5lY3Rpb24tZGVzaWduZXIuY29tcG9uZW50Lmxlc3MnLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLlNoYWRvd0RvbVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQmltcGx1c0Nvbm5lY3Rpb25EZXNpZ25lckNvbXBvbmVudCBleHRlbmRzIEJpbXBsdXNMb2NhbGl6ZWRXaWRnZXRDb21wb25lbnQge1xyXG5cclxuICBjb25zdHJ1Y3Rvcih0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XHJcbiAgICBzdXBlcih0cmFuc2xhdGVTZXJ2aWNlKVxyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgZXJyb3JNZXNzYWdlOiBzdHJpbmcgPSBcIlwiO1xyXG4gIEBJbnB1dCgpIHN1Y2Nlc3NNZXNzYWdlOiBzdHJpbmcgPSBcIlwiO1xyXG5cclxuICAvLyAjcmVnaW9uIERlc2lnbiBjb2Rlc1xyXG5cclxuICBjaG9vc2VDb2RlIDogc3RyaW5nID0gXCJfQ2hvb3NlX2FfZGVzaWduX2NvZGVcIjsgLy8gTWVzc2FnZSBmb3IgZHJvcCBkb3duIGxpc3RcclxuXHJcbiAgQElucHV0KCkgZGVzaWduQ29kZXMgOiBBcnJheTxEZXNpZ25Db2RlPiA9IFtcclxuICAgIHtpZDogXCIwXCIsIG5hbWU6IFwiRU4gMTk5My0xLTEgKEV1cm9jb2RlIDMpXCJ9LFxyXG4gICAge2lkOiBcIjFcIiwgbmFtZTogXCJBSVNDIDM2MC0yMiAoMTZ0aCBFZC4pOiBMUkZEXCJ9LFxyXG4gICAge2lkOiBcIjJcIiwgbmFtZTogXCJBSVNDIDM2MC0yMiAoMTZ0aCBFZC4pOiBBU0RcIn0sXHJcbiAgICB7aWQ6IFwiM1wiLCBuYW1lOiBcIkNTQSBTMTY6MTkgKENJU0MgMTJ0aCBFZC4pXCJ9LFxyXG4gIF07XHJcbiAgQElucHV0KCkgY3VycmVudERlc2lnbkNvZGUgOiBEZXNpZ25Db2RlIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIEBPdXRwdXQoKSBkZXNpZ25Db2RlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8RGVzaWduQ29kZT4oKTtcclxuXHJcbiAgc2V0IGFjdGl2ZURlc2lnbkNvZGUodmFsdWUgOiBEZXNpZ25Db2RlKXtcclxuICAgIHRoaXMuY3VycmVudERlc2lnbkNvZGUgPSB2YWx1ZTtcclxuICAgIHRoaXMuZGVzaWduQ29kZUNoYW5nZWQuZW1pdCAodGhpcy5jdXJyZW50RGVzaWduQ29kZSk7XHJcbiAgfVxyXG5cclxuICBnZXQgYWN0aXZlRGVzaWduQ29kZSgpIDogRGVzaWduQ29kZSB8IG51bGx7XHJcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50RGVzaWduQ29kZTtcclxuICB9XHJcblxyXG4gIC8vICNlbmRyZWdpb25cclxuXHJcbiAgLy8gI3JlZ2lvbiBDb25uZWN0aW9uIGNhbGN1bGF0aW9uXHJcblxyXG4gIEBJbnB1dCgpIGNhbGN1bGF0aW9uQ2FuQmVTdGFydGVkOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQE91dHB1dCgpIHN0YXJ0Q2FsY3VsYXRpb25DbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBzdGFydENhbGN1bGF0aW9uKCkge1xyXG4gICAgaWYgKHRoaXMuY2FsY3VsYXRpb25DYW5CZVN0YXJ0ZWQpIHtcclxuICAgICAgdGhpcy5zdGFydENhbGN1bGF0aW9uQ2xpY2tlZC5lbWl0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyAjZW5kcmVnaW9uICBcclxufVxyXG4iLCI8bGliLWJpbXBsdXMtc2lkZW5hdi1kcmF3ZXItY29udGVudFxyXG4gIFtoZWFkZXJdPVwiJ19Db25uZWN0aW9uX2Rlc2lnbmVyJyB8IHRyYW5zbGF0ZVwiXHJcbj5cclxuICA8ZGl2IGNsYXNzPVwiY29ubmVjdGlvbi1kZXNpZ25lci1jb250ZW50XCI+XHJcbiAgICA8cD5cclxuICAgICAgSW5pdGlhdGUgdGhlIGNhbGN1bGF0aW9uIG9mIHN0ZWVsIGNvbm5lY3Rpb25zIGJ5IGZpcnN0IHNlbGVjdGluZyBlbGVtZW50c1xyXG4gICAgICBhbmQgdGhlbiBwcm9jZWVkaW5nIHdpdGggdGhlIGNhbGN1bGF0aW9uLlxyXG4gICAgPC9wPlxyXG5cclxuICAgIEBpZihkZXNpZ25Db2Rlcy5sZW5ndGg+MCl7XHJcbiAgICA8ZGl2IGNsYXNzPVwiZGVzaWduLWNvZGVzXCI+XHJcbiAgICAgIDxuZy1zZWxlY3RcclxuICAgICAgICBjbGFzcz1cImRlc2lnbi1jb2Rlcy1kcm9wZG93blwiXHJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJhY3RpdmVEZXNpZ25Db2RlXCJcclxuICAgICAgICBbY2xlYXJhYmxlXT1cImZhbHNlXCJcclxuICAgICAgICBbc2VhcmNoYWJsZV09XCJmYWxzZVwiXHJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cImNob29zZUNvZGUgfCB0cmFuc2xhdGVcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPG5nLW9wdGlvbiAqbmdGb3I9XCJsZXQgY29kZSBvZiBkZXNpZ25Db2Rlc1wiIFt2YWx1ZV09XCJjb2RlXCI+e3tcclxuICAgICAgICAgIGNvZGUubmFtZVxyXG4gICAgICAgIH19PC9uZy1vcHRpb24+XHJcbiAgICAgIDwvbmctc2VsZWN0PlxyXG4gICAgPC9kaXY+XHJcbiAgICB9IEBlbHNlIHtcclxuICAgIDxkaXYgY2xhc3M9XCJuby1kZXNpZ24tY29kZXNcIj5cclxuICAgICAge3sgXCJfTm9fZGVzaWduX2NvZGVzX2RlZmluZWRcIiB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgPC9kaXY+XHJcbiAgICB9XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImJ1dHRvbi1yb3dcIj5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIGNsYXNzPVwicHJpbWFyeS1idXR0b25cIlxyXG4gICAgICAgIFtuZ0NsYXNzXT1cImNhbGN1bGF0aW9uQ2FuQmVTdGFydGVkID8gJycgOiAnZGlzYWJsZWQnXCJcclxuICAgICAgICAoY2xpY2spPVwic3RhcnRDYWxjdWxhdGlvbigpXCJcclxuICAgICAgPlxyXG4gICAgICAgIHt7IFwiU3RhcnQgY2FsY3VsYXRpb25cIiB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgKm5nSWY9XCJlcnJvck1lc3NhZ2VcIiBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIj5cclxuICAgICAge3sgZXJyb3JNZXNzYWdlIH19XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2ICpuZ0lmPVwic3VjY2Vzc01lc3NhZ2VcIiBjbGFzcz1cInN1Y2Nlc3MtbWVzc2FnZVwiPlxyXG4gICAgICB7eyBzdWNjZXNzTWVzc2FnZSB9fVxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvbGliLWJpbXBsdXMtc2lkZW5hdi1kcmF3ZXItY29udGVudD5cclxuIl19
|
package/esm2022/lib/components/bimplus-connection-designer/bimplus-connection-designer.interface.mjs
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmltcGx1cy1jb25uZWN0aW9uLWRlc2lnbmVyLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1iaW1wbHVzLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2JpbXBsdXMtY29ubmVjdGlvbi1kZXNpZ25lci9iaW1wbHVzLWNvbm5lY3Rpb24tZGVzaWduZXIuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuZXhwb3J0IGludGVyZmFjZSBEZXNpZ25Db2Rle1xyXG4gIGlkOiBzdHJpbmcsXHJcbiAgbmFtZTogc3RyaW5nXHJcbn1cclxuIl19
|
|
@@ -12,7 +12,8 @@ import * as i1 from "@angular/material/tree";
|
|
|
12
12
|
import * as i2 from "@angular/material/button";
|
|
13
13
|
import * as i3 from "@angular/cdk/tree";
|
|
14
14
|
export class BimplusFlatTreeComponent {
|
|
15
|
-
constructor() {
|
|
15
|
+
constructor(el) {
|
|
16
|
+
this.el = el;
|
|
16
17
|
this.treeDataStringified = null;
|
|
17
18
|
this.treeTitle = "";
|
|
18
19
|
this.paddingIndent = "2.8rem";
|
|
@@ -50,6 +51,10 @@ export class BimplusFlatTreeComponent {
|
|
|
50
51
|
this._dataSource.data = data;
|
|
51
52
|
}
|
|
52
53
|
ngOnInit() {
|
|
54
|
+
const element = this.el.nativeElement;
|
|
55
|
+
if (element) {
|
|
56
|
+
element['get_node'] = this.get_node.bind(this);
|
|
57
|
+
}
|
|
53
58
|
this._selectionList = new SelectionModel(this.multiSelect || this.oneLevelMultiSelect);
|
|
54
59
|
if (this.treeDataStringified) {
|
|
55
60
|
this._setNewData(this.treeDataStringified);
|
|
@@ -58,6 +63,30 @@ export class BimplusFlatTreeComponent {
|
|
|
58
63
|
expandTree() {
|
|
59
64
|
this._treeControl.expandAll();
|
|
60
65
|
}
|
|
66
|
+
_getNode(id, nodes) {
|
|
67
|
+
for (const node of nodes) {
|
|
68
|
+
if (node.id === id) {
|
|
69
|
+
return node;
|
|
70
|
+
}
|
|
71
|
+
if (node.children) {
|
|
72
|
+
const _node = this._getNode(id, node.children);
|
|
73
|
+
if (_node) {
|
|
74
|
+
return _node;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
return null;
|
|
79
|
+
}
|
|
80
|
+
get_node(id, getDOMElement = false) {
|
|
81
|
+
if (typeof id === 'string') {
|
|
82
|
+
return this._getNode(id, this._dataSource.data);
|
|
83
|
+
}
|
|
84
|
+
if (getDOMElement) {
|
|
85
|
+
const _element = this.el.nativeElement.querySelector(`[node-id='${id.id}']`);
|
|
86
|
+
return _element;
|
|
87
|
+
}
|
|
88
|
+
return this._getNode(id.id, this._dataSource.data);
|
|
89
|
+
}
|
|
61
90
|
_setNewData(treeDataStringified) {
|
|
62
91
|
const _tree_data = JSON.parse(treeDataStringified);
|
|
63
92
|
this._dataSource.data = _tree_data;
|
|
@@ -173,8 +202,8 @@ export class BimplusFlatTreeComponent {
|
|
|
173
202
|
}
|
|
174
203
|
return this._selectionList?.isSelected(node);
|
|
175
204
|
}
|
|
176
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: BimplusFlatTreeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
177
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "17.3.10", type: BimplusFlatTreeComponent, isStandalone: true, selector: "lib-bimplus-flat-tree", inputs: { treeDataStringified: "treeDataStringified", treeTitle: "treeTitle", paddingIndent: "paddingIndent", multiSelect: ["multiSelect", "multiSelect", booleanAttribute], oneLevelMultiSelect: ["oneLevelMultiSelect", "oneLevelMultiSelect", booleanAttribute], showFoldersIcons: ["showFoldersIcons", "showFoldersIcons", booleanAttribute], showObjectsIcons: ["showObjectsIcons", "showObjectsIcons", booleanAttribute], enableSelect: ["enableSelect", "enableSelect", booleanAttribute], enableParentHighlighting: ["enableParentHighlighting", "enableParentHighlighting", booleanAttribute], enableDragAndDrop: ["enableDragAndDrop", "enableDragAndDrop", booleanAttribute], dataTestPrefix: "dataTestPrefix", contextMenus: "contextMenus", treeData: "treeData" }, outputs: { selectedNodes: "selectedNodes" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"tree-container\">\r\n <div *ngIf=\"treeTitle\" class=\"tree-title\">{{treeTitle}}</div>\r\n <cdk-tree [dataSource]=\"_dataSource\" [treeControl]=\"_treeControl\">\r\n <!-- This is the tree node template for leaf nodes -->\r\n <cdk-tree-node\r\n [matTreeNodePaddingIndent]=\"paddingIndent\"\r\n *matTreeNodeDef=\"let node\"\r\n matTreeNodePadding\r\n (click)=\"_togleNode($event, node)\"\r\n class=\"object-node\"\r\n [class.dragable-node]=\"enableDragAndDrop && node.level > 0\"\r\n [class.selected-node]=\"_isSelected(node)\"\r\n [attr.data-test]=\"dataTestPrefix + node.id\"\r\n [title]=\"node.name\"\r\n >\r\n <!-- use a disabled button to provide padding for tree leaf -->\r\n <button mat-icon-button disabled>\r\n </button>\r\n <div class=\"icon object-icon\" *ngIf=\"showObjectsIcons\">\r\n </div>\r\n <span\r\n class=\"node-label\"\r\n [class.selected-node]=\"_isSelected(node)\"\r\n >\r\n <div class=\"custom-drag-placeholder\" *cdkDragPlaceholder></div>\r\n <div>\r\n {{node.name}}\r\n </div>\r\n </span>\r\n <lib-bimplus-context-menu\r\n [items]=\"contextMenus?.objectContextMenuitems\"\r\n [data]=\"node\"\r\n *ngIf=\"contextMenus?.objectContextMenuitems?.length\"\r\n >\r\n </lib-bimplus-context-menu>\r\n </cdk-tree-node>\r\n <!-- This is the tree node template for expandable nodes -->\r\n <cdk-tree-node [matTreeNodePaddingIndent]=\"paddingIndent\"\r\n *matTreeNodeDef=\"let node;when: _isExpendable\"\r\n matTreeNodePadding\r\n (click)=\"_togleNode($event, node)\"\r\n class=\"folder-node\"\r\n [class.dragable-node]=\"enableDragAndDrop && node.level > 0\"\r\n [class.selected-node]=\"_isSelected(node)\"\r\n [attr.data-test]=\"dataTestPrefix + node.id\"\r\n [title]=\"node.name\"\r\n >\r\n <button\r\n mat-icon-button\r\n matTreeNodeToggle\r\n [attr.aria-label]=\"'Toggle ' + node.name\"\r\n >\r\n <div\r\n class=\"icon expand-collapse-icon\"\r\n [class.expand-more-icon]=\"_hasChildren(node) && !_treeControl.isExpanded(node)\"\r\n [class.collapse-icon]=\"_hasChildren(node) && _treeControl.isExpanded(node)\"\r\n >\r\n </div>\r\n </button>\r\n <div class=\"icon folder-icon\" *ngIf=\"showFoldersIcons\">\r\n </div>\r\n <span class=\"node-label\"\r\n [class.selected-node]=\"_isSelected(node)\"\r\n [class.selected-all-descendants-nodes]=\"_descendantsAllSelected(node) && _isSelected(node) && enableParentHighlighting\"\r\n [class.selected-partially-descendants-nodes]=\"_descendantsPartiallySelected(node) && enableParentHighlighting\"\r\n >\r\n <div class=\"custom-drag-placeholder\" *cdkDragPlaceholder></div>\r\n <div class=\"node-label\">\r\n {{node.name}}\r\n </div>\r\n </span>\r\n <lib-bimplus-context-menu\r\n [items]=\"contextMenus?.folderContextMenuitems\"\r\n [data]=\"node\"\r\n *ngIf=\"contextMenus?.folderContextMenuitems?.length\"\r\n >\r\n </lib-bimplus-context-menu>\r\n </cdk-tree-node>\r\n </cdk-tree>\r\n</div>\r\n", styles: [".text-selected{color:#fe5000}.ui-icon22px{width:2.2rem;height:2.2rem;display:inline-block;float:right;border-radius:.4rem;background-position:center center;background-repeat:no-repeat;cursor:pointer}.ui-icon-sidemenu{width:2.4rem;height:2.4rem;background-size:1.8rem 1.8rem;background-position:center center;background-repeat:no-repeat}.touch-ui-icon-sidemenu{width:2.4rem;height:2.4rem;background-size:1.8rem 1.8rem;background-position:center center;background-repeat:no-repeat;width:3.2rem;height:3.2rem}.ui-icon-sidemenu-important{width:2.4rem!important;height:2.4rem!important;background-size:1.8rem 1.8rem!important;background-position:center center;background-repeat:no-repeat}.tree-container{background-color:var(--flat-tree-bkg-color, #ffffff);width:calc(100% - 2 * var(--flat-tree-node-indent, 1rem));padding:var(--flat-tree-node-indent, 1rem);font-family:var(--flat-tree-font-family, \"Source Sans Pro\", Helvetica, Arial, tahoma, sans-serif);font-size:var(--flat-tree-font-size, 1.3rem);font-weight:var(--flat-tree-font-weight, 700);color:var(--flat-tree-color, #444444)}.tree-container>.tree-title{background-color:transparent;font-size:var(--flat-tree-title-font-size, 1.6rem);margin-bottom:1rem}.cdk-tree{background-color:transparent;width:100%}.cdk-tree>.cdk-tree-node{background-color:transparent;display:flex;align-items:center;cursor:pointer;line-height:var(--flat-tree-node-line-height, 2.4rem)}.cdk-tree>.cdk-tree-node.folder-node{font-weight:var(--flat-tree-folder-font-weight, 700)}.cdk-tree>.cdk-tree-node.object-node{font-weight:var(--flat-tree-object-font-weight, 400)}.cdk-tree>.cdk-tree-node>span.node-label{overflow:hidden;flex:1}.cdk-tree>.cdk-tree-node>span.node-label>div.node-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cdk-tree>.cdk-tree-node lib-bimplus-context-menu{--context-menu-trigger-width: 2.4rem;--context-menu-trigger-height: var(--flat-tree-node-line-height, 2.4rem);--context-menu-trigger-bkg-color: transparent}.cdk-tree>.cdk-tree-node:not(.selected-node):not(:hover) lib-bimplus-context-menu{display:none}.cdk-tree-node.dragable-node:hover{background-color:var(--flat-tree-hover-color, #F5F5F5);background-image:url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<rect x=\"11\" y=\"2\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"6\" y=\"2\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"11\" y=\"8\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"6\" y=\"8\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"11\" y=\"14\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"6\" y=\"14\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;background-size:var(--flat-tree-node-icon-size, 1.8rem);background-position:left center}.mat-mdc-icon-button{padding:.2rem;width:var(--flat-tree-node-line-height, 2.4rem);height:var(--flat-tree-node-line-height, 2.4rem)}.selected-node{color:var(--flat-tree-selected-node-color, #2188ca);font-weight:var(--flat-tree-selected-node-font-weight, 700)}.selected-all-descendants-nodes{color:var(--flat-tree-selected-node-color, #2188ca)}.selected-partially-descendants-nodes{color:var(--flat-tree-partially-selected-node-color, rgba(0, 71, 171, .55))}.custom-drag-placeholder{height:0px}.icon{width:var(--flat-tree-node-icon-size, 1.8rem);height:var(--flat-tree-node-icon-size, 1.8rem);margin-right:.4rem;background-position:center;background-size:var(--flat-tree-node-icon-size, 1.8rem)}.icon.folder-icon{background:var(--flat-tree-folder-icon, url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"utf-8\"?>%0D%0A<!-- Generator: Adobe Illustrator 21.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->%0D%0A<svg version=\"1.1\" id=\"Layer_1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"%0D%0A%09 viewBox=\"0 0 20 20\" style=\"enable-background:new 0 0 20 20;\" xml:space=\"preserve\">%0D%0A<style type=\"text/css\">%0D%0A%09.st0{fill:%23444444;}%0D%0A<\\/style>%0D%0A<path class=\"st0\" d=\"M17,7V5V4V1h-6L8,3H0v16h2h15l3-12H17z M8,5h0.6l0.5-0.3L11.6,3H15v1v1v2H3l-1,4V5H8z M15.4,17H2.6l2-8H15h2%0D%0A%09h0.4L15.4,17z\"/>%0D%0A</svg>%0D%0A') no-repeat);background-size:var(--flat-tree-folder-icon-size, 1.6rem);background-position:center}.icon.object-icon{background:var(--flat-tree-object-icon, url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"utf-8\"?>%0D%0A<!-- Generator: Adobe Illustrator 21.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->%0D%0A<svg version=\"1.1\" id=\"Layer_1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"%0D%0A%09 viewBox=\"0 0 20 20\" style=\"enable-background:new 0 0 20 20;\" xml:space=\"preserve\">%0D%0A<style type=\"text/css\">%0D%0A%09.st0{fill:%23444;}%0D%0A<\\/style>%0D%0A<g>%0D%0A%09<path class=\"st0\" d=\"M6,9h4V7H6V9z\"/>%0D%0A%09<path class=\"st0\" d=\"M6,4v2h8V4H6z\"/>%0D%0A%09<path class=\"st0\" d=\"M6,12h4v-2H6V12z\"/>%0D%0A%09<path class=\"st0\" d=\"M17,1H3v18h10l0,0l0,0l4-4h0l0,0V1z M13,15v2H5V3h10v12H13z\"/>%0D%0A</g>%0D%0A</svg>%0D%0A') no-repeat);background-size:var(--flat-tree-object-icon-size, 1.6rem);background-position:center}.icon.expand-collapse-icon.expand-more-icon{background:var(--flat-tree-node-expand-icon, url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M7.81235 5.64988C7.48497 5.38797 7 5.62106 7 6.04031L7 11.9597C7 12.3789 7.48497 12.612 7.81235 12.3501L11.512 9.39043C11.7622 9.19027 11.7622 8.80973 11.512 8.60957L7.81235 5.64988Z\" fill=\"%23ADADAD\"/>%0D%0A</svg>%0D%0A') no-repeat);background-size:var(--flat-tree-expand-collapse-icon-size, 1.8rem);background-position:center}.icon.expand-collapse-icon.collapse-icon{background:var(--flat-tree-node-collapse-icon, url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M12.3501 7.81235C12.612 7.48497 12.3789 7 11.9597 7H6.04031C5.62106 7 5.38797 7.48497 5.64988 7.81235L8.60957 11.512C8.80973 11.7622 9.19027 11.7622 9.39043 11.512L12.3501 7.81235Z\" fill=\"%23444444\"/>%0D%0A</svg>%0D%0A') no-repeat);background-size:var(--flat-tree-expand-collapse-icon-size, 1.8rem);background-position:center}\n"], dependencies: [{ kind: "ngmodule", type: MatTreeModule }, { kind: "directive", type: i1.MatTreeNodeDef, selector: "[matTreeNodeDef]", inputs: ["matTreeNodeDefWhen", "matTreeNode"] }, { kind: "directive", type: i1.MatTreeNodePadding, selector: "[matTreeNodePadding]", inputs: ["matTreeNodePadding", "matTreeNodePaddingIndent"] }, { kind: "directive", type: i1.MatTreeNodeToggle, selector: "[matTreeNodeToggle]", inputs: ["matTreeNodeToggleRecursive"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: CdkTreeModule }, { kind: "component", type: i3.CdkTree, selector: "cdk-tree", inputs: ["dataSource", "treeControl", "trackBy"], exportAs: ["cdkTree"] }, { kind: "directive", type: i3.CdkTreeNode, selector: "cdk-tree-node", inputs: ["role"], exportAs: ["cdkTreeNode"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: BimplusContextMenuComponent, selector: "lib-bimplus-context-menu", inputs: ["showIcons", "triggerTitle", "items", "data"] }] }); }
|
|
205
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: BimplusFlatTreeComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
206
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "17.3.10", type: BimplusFlatTreeComponent, isStandalone: true, selector: "lib-bimplus-flat-tree", inputs: { treeDataStringified: "treeDataStringified", treeTitle: "treeTitle", paddingIndent: "paddingIndent", multiSelect: ["multiSelect", "multiSelect", booleanAttribute], oneLevelMultiSelect: ["oneLevelMultiSelect", "oneLevelMultiSelect", booleanAttribute], showFoldersIcons: ["showFoldersIcons", "showFoldersIcons", booleanAttribute], showObjectsIcons: ["showObjectsIcons", "showObjectsIcons", booleanAttribute], enableSelect: ["enableSelect", "enableSelect", booleanAttribute], enableParentHighlighting: ["enableParentHighlighting", "enableParentHighlighting", booleanAttribute], enableDragAndDrop: ["enableDragAndDrop", "enableDragAndDrop", booleanAttribute], dataTestPrefix: "dataTestPrefix", contextMenus: "contextMenus", treeData: "treeData" }, outputs: { selectedNodes: "selectedNodes" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"tree-container\">\r\n <div *ngIf=\"treeTitle\" class=\"tree-title\">{{treeTitle}}</div>\r\n <cdk-tree [dataSource]=\"_dataSource\" [treeControl]=\"_treeControl\">\r\n <!-- This is the tree node template for leaf nodes -->\r\n <cdk-tree-node\r\n [matTreeNodePaddingIndent]=\"paddingIndent\"\r\n *matTreeNodeDef=\"let node\"\r\n matTreeNodePadding\r\n (click)=\"_togleNode($event, node)\"\r\n class=\"object-node\"\r\n [class.dragable-node]=\"enableDragAndDrop && node.level > 0\"\r\n [class.selected-node]=\"_isSelected(node)\"\r\n [attr.data-test]=\"dataTestPrefix + node.id\"\r\n [title]=\"node.name\"\r\n [attr.node-id]=\"node.id\"\r\n >\r\n <!-- use a disabled button to provide padding for tree leaf -->\r\n <button mat-icon-button disabled>\r\n </button>\r\n <div class=\"icon object-icon\" *ngIf=\"showObjectsIcons\">\r\n </div>\r\n <span\r\n class=\"node-label\"\r\n [class.selected-node]=\"_isSelected(node)\"\r\n >\r\n <div class=\"custom-drag-placeholder\" *cdkDragPlaceholder></div>\r\n <div>\r\n {{node.name}}\r\n </div>\r\n </span>\r\n <lib-bimplus-context-menu\r\n [items]=\"contextMenus?.objectContextMenuitems\"\r\n [data]=\"node\"\r\n *ngIf=\"contextMenus?.objectContextMenuitems?.length\"\r\n >\r\n </lib-bimplus-context-menu>\r\n </cdk-tree-node>\r\n <!-- This is the tree node template for expandable nodes -->\r\n <cdk-tree-node [matTreeNodePaddingIndent]=\"paddingIndent\"\r\n *matTreeNodeDef=\"let node;when: _isExpendable\"\r\n matTreeNodePadding\r\n (click)=\"_togleNode($event, node)\"\r\n class=\"folder-node\"\r\n [class.dragable-node]=\"enableDragAndDrop && node.level > 0\"\r\n [class.selected-node]=\"_isSelected(node)\"\r\n [attr.data-test]=\"dataTestPrefix + node.id\"\r\n [title]=\"node.name\"\r\n [attr.node-id]=\"node.id\"\r\n >\r\n <button\r\n mat-icon-button\r\n matTreeNodeToggle\r\n [attr.aria-label]=\"'Toggle ' + node.name\"\r\n >\r\n <div\r\n class=\"icon expand-collapse-icon\"\r\n [class.expand-more-icon]=\"_hasChildren(node) && !_treeControl.isExpanded(node)\"\r\n [class.collapse-icon]=\"_hasChildren(node) && _treeControl.isExpanded(node)\"\r\n >\r\n </div>\r\n </button>\r\n <div class=\"icon folder-icon\" *ngIf=\"showFoldersIcons\">\r\n </div>\r\n <span class=\"node-label\"\r\n [class.selected-node]=\"_isSelected(node)\"\r\n [class.selected-all-descendants-nodes]=\"_descendantsAllSelected(node) && _isSelected(node) && enableParentHighlighting\"\r\n [class.selected-partially-descendants-nodes]=\"_descendantsPartiallySelected(node) && enableParentHighlighting\"\r\n >\r\n <div class=\"custom-drag-placeholder\" *cdkDragPlaceholder></div>\r\n <div class=\"node-label\">\r\n {{node.name}}\r\n </div>\r\n </span>\r\n <lib-bimplus-context-menu\r\n [items]=\"contextMenus?.folderContextMenuitems\"\r\n [data]=\"node\"\r\n *ngIf=\"contextMenus?.folderContextMenuitems?.length\"\r\n >\r\n </lib-bimplus-context-menu>\r\n </cdk-tree-node>\r\n </cdk-tree>\r\n</div>\r\n", styles: [".text-selected{color:#fe5000}.ui-icon22px{width:2.2rem;height:2.2rem;display:inline-block;float:right;border-radius:.4rem;background-position:center center;background-repeat:no-repeat;cursor:pointer}.ui-icon-sidemenu{width:2.4rem;height:2.4rem;background-size:1.8rem 1.8rem;background-position:center center;background-repeat:no-repeat}.touch-ui-icon-sidemenu{width:2.4rem;height:2.4rem;background-size:1.8rem 1.8rem;background-position:center center;background-repeat:no-repeat;width:3.2rem;height:3.2rem}.ui-icon-sidemenu-important{width:2.4rem!important;height:2.4rem!important;background-size:1.8rem 1.8rem!important;background-position:center center;background-repeat:no-repeat}.tree-container{background-color:var(--flat-tree-bkg-color, #ffffff);width:calc(100% - 2 * var(--flat-tree-node-indent, 1rem));padding:var(--flat-tree-node-indent, 1rem);font-family:var(--flat-tree-font-family, \"Source Sans Pro\", Helvetica, Arial, tahoma, sans-serif);font-size:var(--flat-tree-font-size, 1.3rem);font-weight:var(--flat-tree-font-weight, 700);color:var(--flat-tree-color, #444444)}.tree-container>.tree-title{background-color:transparent;font-size:var(--flat-tree-title-font-size, 1.6rem);margin-bottom:1rem}.cdk-tree{background-color:transparent;width:100%}.cdk-tree>.cdk-tree-node{background-color:transparent;display:flex;align-items:center;cursor:pointer;line-height:var(--flat-tree-node-line-height, 2.4rem)}.cdk-tree>.cdk-tree-node.folder-node{font-weight:var(--flat-tree-folder-font-weight, 700)}.cdk-tree>.cdk-tree-node.object-node{font-weight:var(--flat-tree-object-font-weight, 400)}.cdk-tree>.cdk-tree-node>span.node-label{overflow:hidden;flex:1}.cdk-tree>.cdk-tree-node>span.node-label>div.node-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cdk-tree>.cdk-tree-node lib-bimplus-context-menu{--context-menu-trigger-width: 2.4rem;--context-menu-trigger-height: var(--flat-tree-node-line-height, 2.4rem);--context-menu-trigger-bkg-color: transparent}.cdk-tree>.cdk-tree-node:not(.selected-node):not(:hover) lib-bimplus-context-menu{display:none}.cdk-tree-node.dragable-node:hover{background-color:var(--flat-tree-hover-color, #F5F5F5);background-image:url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<rect x=\"11\" y=\"2\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"6\" y=\"2\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"11\" y=\"8\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"6\" y=\"8\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"11\" y=\"14\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"6\" y=\"14\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;background-size:var(--flat-tree-node-icon-size, 1.8rem);background-position:left center}.mat-mdc-icon-button{padding:.2rem;width:var(--flat-tree-node-line-height, 2.4rem);height:var(--flat-tree-node-line-height, 2.4rem)}.selected-node{color:var(--flat-tree-selected-node-color, #2188ca);font-weight:var(--flat-tree-selected-node-font-weight, 700)}.selected-all-descendants-nodes{color:var(--flat-tree-selected-node-color, #2188ca)}.selected-partially-descendants-nodes{color:var(--flat-tree-partially-selected-node-color, rgba(0, 71, 171, .55))}.custom-drag-placeholder{height:0px}.icon{width:var(--flat-tree-node-icon-size, 1.8rem);height:var(--flat-tree-node-icon-size, 1.8rem);margin-right:.4rem;background-position:center;background-size:var(--flat-tree-node-icon-size, 1.8rem)}.icon.folder-icon{background:var(--flat-tree-folder-icon, url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"utf-8\"?>%0D%0A<!-- Generator: Adobe Illustrator 21.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->%0D%0A<svg version=\"1.1\" id=\"Layer_1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"%0D%0A%09 viewBox=\"0 0 20 20\" style=\"enable-background:new 0 0 20 20;\" xml:space=\"preserve\">%0D%0A<style type=\"text/css\">%0D%0A%09.st0{fill:%23444444;}%0D%0A<\\/style>%0D%0A<path class=\"st0\" d=\"M17,7V5V4V1h-6L8,3H0v16h2h15l3-12H17z M8,5h0.6l0.5-0.3L11.6,3H15v1v1v2H3l-1,4V5H8z M15.4,17H2.6l2-8H15h2%0D%0A%09h0.4L15.4,17z\"/>%0D%0A</svg>%0D%0A') no-repeat);background-size:var(--flat-tree-folder-icon-size, 1.6rem);background-position:center}.icon.object-icon{background:var(--flat-tree-object-icon, url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"utf-8\"?>%0D%0A<!-- Generator: Adobe Illustrator 21.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->%0D%0A<svg version=\"1.1\" id=\"Layer_1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"%0D%0A%09 viewBox=\"0 0 20 20\" style=\"enable-background:new 0 0 20 20;\" xml:space=\"preserve\">%0D%0A<style type=\"text/css\">%0D%0A%09.st0{fill:%23444;}%0D%0A<\\/style>%0D%0A<g>%0D%0A%09<path class=\"st0\" d=\"M6,9h4V7H6V9z\"/>%0D%0A%09<path class=\"st0\" d=\"M6,4v2h8V4H6z\"/>%0D%0A%09<path class=\"st0\" d=\"M6,12h4v-2H6V12z\"/>%0D%0A%09<path class=\"st0\" d=\"M17,1H3v18h10l0,0l0,0l4-4h0l0,0V1z M13,15v2H5V3h10v12H13z\"/>%0D%0A</g>%0D%0A</svg>%0D%0A') no-repeat);background-size:var(--flat-tree-object-icon-size, 1.6rem);background-position:center}.icon.expand-collapse-icon.expand-more-icon{background:var(--flat-tree-node-expand-icon, url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M7.81235 5.64988C7.48497 5.38797 7 5.62106 7 6.04031L7 11.9597C7 12.3789 7.48497 12.612 7.81235 12.3501L11.512 9.39043C11.7622 9.19027 11.7622 8.80973 11.512 8.60957L7.81235 5.64988Z\" fill=\"%23ADADAD\"/>%0D%0A</svg>%0D%0A') no-repeat);background-size:var(--flat-tree-expand-collapse-icon-size, 1.8rem);background-position:center}.icon.expand-collapse-icon.collapse-icon{background:var(--flat-tree-node-collapse-icon, url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M12.3501 7.81235C12.612 7.48497 12.3789 7 11.9597 7H6.04031C5.62106 7 5.38797 7.48497 5.64988 7.81235L8.60957 11.512C8.80973 11.7622 9.19027 11.7622 9.39043 11.512L12.3501 7.81235Z\" fill=\"%23444444\"/>%0D%0A</svg>%0D%0A') no-repeat);background-size:var(--flat-tree-expand-collapse-icon-size, 1.8rem);background-position:center}\n"], dependencies: [{ kind: "ngmodule", type: MatTreeModule }, { kind: "directive", type: i1.MatTreeNodeDef, selector: "[matTreeNodeDef]", inputs: ["matTreeNodeDefWhen", "matTreeNode"] }, { kind: "directive", type: i1.MatTreeNodePadding, selector: "[matTreeNodePadding]", inputs: ["matTreeNodePadding", "matTreeNodePaddingIndent"] }, { kind: "directive", type: i1.MatTreeNodeToggle, selector: "[matTreeNodeToggle]", inputs: ["matTreeNodeToggleRecursive"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: CdkTreeModule }, { kind: "component", type: i3.CdkTree, selector: "cdk-tree", inputs: ["dataSource", "treeControl", "trackBy"], exportAs: ["cdkTree"] }, { kind: "directive", type: i3.CdkTreeNode, selector: "cdk-tree-node", inputs: ["role"], exportAs: ["cdkTreeNode"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: BimplusContextMenuComponent, selector: "lib-bimplus-context-menu", inputs: ["showIcons", "triggerTitle", "items", "data"] }] }); }
|
|
178
207
|
}
|
|
179
208
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: BimplusFlatTreeComponent, decorators: [{
|
|
180
209
|
type: Component,
|
|
@@ -184,8 +213,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImpo
|
|
|
184
213
|
CdkTreeModule,
|
|
185
214
|
NgIf,
|
|
186
215
|
BimplusContextMenuComponent
|
|
187
|
-
], template: "<div class=\"tree-container\">\r\n <div *ngIf=\"treeTitle\" class=\"tree-title\">{{treeTitle}}</div>\r\n <cdk-tree [dataSource]=\"_dataSource\" [treeControl]=\"_treeControl\">\r\n <!-- This is the tree node template for leaf nodes -->\r\n <cdk-tree-node\r\n [matTreeNodePaddingIndent]=\"paddingIndent\"\r\n *matTreeNodeDef=\"let node\"\r\n matTreeNodePadding\r\n (click)=\"_togleNode($event, node)\"\r\n class=\"object-node\"\r\n [class.dragable-node]=\"enableDragAndDrop && node.level > 0\"\r\n [class.selected-node]=\"_isSelected(node)\"\r\n [attr.data-test]=\"dataTestPrefix + node.id\"\r\n [title]=\"node.name\"\r\n >\r\n <!-- use a disabled button to provide padding for tree leaf -->\r\n <button mat-icon-button disabled>\r\n </button>\r\n <div class=\"icon object-icon\" *ngIf=\"showObjectsIcons\">\r\n </div>\r\n <span\r\n class=\"node-label\"\r\n [class.selected-node]=\"_isSelected(node)\"\r\n >\r\n <div class=\"custom-drag-placeholder\" *cdkDragPlaceholder></div>\r\n <div>\r\n {{node.name}}\r\n </div>\r\n </span>\r\n <lib-bimplus-context-menu\r\n [items]=\"contextMenus?.objectContextMenuitems\"\r\n [data]=\"node\"\r\n *ngIf=\"contextMenus?.objectContextMenuitems?.length\"\r\n >\r\n </lib-bimplus-context-menu>\r\n </cdk-tree-node>\r\n <!-- This is the tree node template for expandable nodes -->\r\n <cdk-tree-node [matTreeNodePaddingIndent]=\"paddingIndent\"\r\n *matTreeNodeDef=\"let node;when: _isExpendable\"\r\n matTreeNodePadding\r\n (click)=\"_togleNode($event, node)\"\r\n class=\"folder-node\"\r\n [class.dragable-node]=\"enableDragAndDrop && node.level > 0\"\r\n [class.selected-node]=\"_isSelected(node)\"\r\n [attr.data-test]=\"dataTestPrefix + node.id\"\r\n [title]=\"node.name\"\r\n >\r\n <button\r\n mat-icon-button\r\n matTreeNodeToggle\r\n [attr.aria-label]=\"'Toggle ' + node.name\"\r\n >\r\n <div\r\n class=\"icon expand-collapse-icon\"\r\n [class.expand-more-icon]=\"_hasChildren(node) && !_treeControl.isExpanded(node)\"\r\n [class.collapse-icon]=\"_hasChildren(node) && _treeControl.isExpanded(node)\"\r\n >\r\n </div>\r\n </button>\r\n <div class=\"icon folder-icon\" *ngIf=\"showFoldersIcons\">\r\n </div>\r\n <span class=\"node-label\"\r\n [class.selected-node]=\"_isSelected(node)\"\r\n [class.selected-all-descendants-nodes]=\"_descendantsAllSelected(node) && _isSelected(node) && enableParentHighlighting\"\r\n [class.selected-partially-descendants-nodes]=\"_descendantsPartiallySelected(node) && enableParentHighlighting\"\r\n >\r\n <div class=\"custom-drag-placeholder\" *cdkDragPlaceholder></div>\r\n <div class=\"node-label\">\r\n {{node.name}}\r\n </div>\r\n </span>\r\n <lib-bimplus-context-menu\r\n [items]=\"contextMenus?.folderContextMenuitems\"\r\n [data]=\"node\"\r\n *ngIf=\"contextMenus?.folderContextMenuitems?.length\"\r\n >\r\n </lib-bimplus-context-menu>\r\n </cdk-tree-node>\r\n </cdk-tree>\r\n</div>\r\n", styles: [".text-selected{color:#fe5000}.ui-icon22px{width:2.2rem;height:2.2rem;display:inline-block;float:right;border-radius:.4rem;background-position:center center;background-repeat:no-repeat;cursor:pointer}.ui-icon-sidemenu{width:2.4rem;height:2.4rem;background-size:1.8rem 1.8rem;background-position:center center;background-repeat:no-repeat}.touch-ui-icon-sidemenu{width:2.4rem;height:2.4rem;background-size:1.8rem 1.8rem;background-position:center center;background-repeat:no-repeat;width:3.2rem;height:3.2rem}.ui-icon-sidemenu-important{width:2.4rem!important;height:2.4rem!important;background-size:1.8rem 1.8rem!important;background-position:center center;background-repeat:no-repeat}.tree-container{background-color:var(--flat-tree-bkg-color, #ffffff);width:calc(100% - 2 * var(--flat-tree-node-indent, 1rem));padding:var(--flat-tree-node-indent, 1rem);font-family:var(--flat-tree-font-family, \"Source Sans Pro\", Helvetica, Arial, tahoma, sans-serif);font-size:var(--flat-tree-font-size, 1.3rem);font-weight:var(--flat-tree-font-weight, 700);color:var(--flat-tree-color, #444444)}.tree-container>.tree-title{background-color:transparent;font-size:var(--flat-tree-title-font-size, 1.6rem);margin-bottom:1rem}.cdk-tree{background-color:transparent;width:100%}.cdk-tree>.cdk-tree-node{background-color:transparent;display:flex;align-items:center;cursor:pointer;line-height:var(--flat-tree-node-line-height, 2.4rem)}.cdk-tree>.cdk-tree-node.folder-node{font-weight:var(--flat-tree-folder-font-weight, 700)}.cdk-tree>.cdk-tree-node.object-node{font-weight:var(--flat-tree-object-font-weight, 400)}.cdk-tree>.cdk-tree-node>span.node-label{overflow:hidden;flex:1}.cdk-tree>.cdk-tree-node>span.node-label>div.node-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cdk-tree>.cdk-tree-node lib-bimplus-context-menu{--context-menu-trigger-width: 2.4rem;--context-menu-trigger-height: var(--flat-tree-node-line-height, 2.4rem);--context-menu-trigger-bkg-color: transparent}.cdk-tree>.cdk-tree-node:not(.selected-node):not(:hover) lib-bimplus-context-menu{display:none}.cdk-tree-node.dragable-node:hover{background-color:var(--flat-tree-hover-color, #F5F5F5);background-image:url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<rect x=\"11\" y=\"2\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"6\" y=\"2\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"11\" y=\"8\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"6\" y=\"8\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"11\" y=\"14\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"6\" y=\"14\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;background-size:var(--flat-tree-node-icon-size, 1.8rem);background-position:left center}.mat-mdc-icon-button{padding:.2rem;width:var(--flat-tree-node-line-height, 2.4rem);height:var(--flat-tree-node-line-height, 2.4rem)}.selected-node{color:var(--flat-tree-selected-node-color, #2188ca);font-weight:var(--flat-tree-selected-node-font-weight, 700)}.selected-all-descendants-nodes{color:var(--flat-tree-selected-node-color, #2188ca)}.selected-partially-descendants-nodes{color:var(--flat-tree-partially-selected-node-color, rgba(0, 71, 171, .55))}.custom-drag-placeholder{height:0px}.icon{width:var(--flat-tree-node-icon-size, 1.8rem);height:var(--flat-tree-node-icon-size, 1.8rem);margin-right:.4rem;background-position:center;background-size:var(--flat-tree-node-icon-size, 1.8rem)}.icon.folder-icon{background:var(--flat-tree-folder-icon, url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"utf-8\"?>%0D%0A<!-- Generator: Adobe Illustrator 21.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->%0D%0A<svg version=\"1.1\" id=\"Layer_1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"%0D%0A%09 viewBox=\"0 0 20 20\" style=\"enable-background:new 0 0 20 20;\" xml:space=\"preserve\">%0D%0A<style type=\"text/css\">%0D%0A%09.st0{fill:%23444444;}%0D%0A<\\/style>%0D%0A<path class=\"st0\" d=\"M17,7V5V4V1h-6L8,3H0v16h2h15l3-12H17z M8,5h0.6l0.5-0.3L11.6,3H15v1v1v2H3l-1,4V5H8z M15.4,17H2.6l2-8H15h2%0D%0A%09h0.4L15.4,17z\"/>%0D%0A</svg>%0D%0A') no-repeat);background-size:var(--flat-tree-folder-icon-size, 1.6rem);background-position:center}.icon.object-icon{background:var(--flat-tree-object-icon, url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"utf-8\"?>%0D%0A<!-- Generator: Adobe Illustrator 21.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->%0D%0A<svg version=\"1.1\" id=\"Layer_1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"%0D%0A%09 viewBox=\"0 0 20 20\" style=\"enable-background:new 0 0 20 20;\" xml:space=\"preserve\">%0D%0A<style type=\"text/css\">%0D%0A%09.st0{fill:%23444;}%0D%0A<\\/style>%0D%0A<g>%0D%0A%09<path class=\"st0\" d=\"M6,9h4V7H6V9z\"/>%0D%0A%09<path class=\"st0\" d=\"M6,4v2h8V4H6z\"/>%0D%0A%09<path class=\"st0\" d=\"M6,12h4v-2H6V12z\"/>%0D%0A%09<path class=\"st0\" d=\"M17,1H3v18h10l0,0l0,0l4-4h0l0,0V1z M13,15v2H5V3h10v12H13z\"/>%0D%0A</g>%0D%0A</svg>%0D%0A') no-repeat);background-size:var(--flat-tree-object-icon-size, 1.6rem);background-position:center}.icon.expand-collapse-icon.expand-more-icon{background:var(--flat-tree-node-expand-icon, url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M7.81235 5.64988C7.48497 5.38797 7 5.62106 7 6.04031L7 11.9597C7 12.3789 7.48497 12.612 7.81235 12.3501L11.512 9.39043C11.7622 9.19027 11.7622 8.80973 11.512 8.60957L7.81235 5.64988Z\" fill=\"%23ADADAD\"/>%0D%0A</svg>%0D%0A') no-repeat);background-size:var(--flat-tree-expand-collapse-icon-size, 1.8rem);background-position:center}.icon.expand-collapse-icon.collapse-icon{background:var(--flat-tree-node-collapse-icon, url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M12.3501 7.81235C12.612 7.48497 12.3789 7 11.9597 7H6.04031C5.62106 7 5.38797 7.48497 5.64988 7.81235L8.60957 11.512C8.80973 11.7622 9.19027 11.7622 9.39043 11.512L12.3501 7.81235Z\" fill=\"%23444444\"/>%0D%0A</svg>%0D%0A') no-repeat);background-size:var(--flat-tree-expand-collapse-icon-size, 1.8rem);background-position:center}\n"] }]
|
|
188
|
-
}], propDecorators: { treeDataStringified: [{
|
|
216
|
+
], template: "<div class=\"tree-container\">\r\n <div *ngIf=\"treeTitle\" class=\"tree-title\">{{treeTitle}}</div>\r\n <cdk-tree [dataSource]=\"_dataSource\" [treeControl]=\"_treeControl\">\r\n <!-- This is the tree node template for leaf nodes -->\r\n <cdk-tree-node\r\n [matTreeNodePaddingIndent]=\"paddingIndent\"\r\n *matTreeNodeDef=\"let node\"\r\n matTreeNodePadding\r\n (click)=\"_togleNode($event, node)\"\r\n class=\"object-node\"\r\n [class.dragable-node]=\"enableDragAndDrop && node.level > 0\"\r\n [class.selected-node]=\"_isSelected(node)\"\r\n [attr.data-test]=\"dataTestPrefix + node.id\"\r\n [title]=\"node.name\"\r\n [attr.node-id]=\"node.id\"\r\n >\r\n <!-- use a disabled button to provide padding for tree leaf -->\r\n <button mat-icon-button disabled>\r\n </button>\r\n <div class=\"icon object-icon\" *ngIf=\"showObjectsIcons\">\r\n </div>\r\n <span\r\n class=\"node-label\"\r\n [class.selected-node]=\"_isSelected(node)\"\r\n >\r\n <div class=\"custom-drag-placeholder\" *cdkDragPlaceholder></div>\r\n <div>\r\n {{node.name}}\r\n </div>\r\n </span>\r\n <lib-bimplus-context-menu\r\n [items]=\"contextMenus?.objectContextMenuitems\"\r\n [data]=\"node\"\r\n *ngIf=\"contextMenus?.objectContextMenuitems?.length\"\r\n >\r\n </lib-bimplus-context-menu>\r\n </cdk-tree-node>\r\n <!-- This is the tree node template for expandable nodes -->\r\n <cdk-tree-node [matTreeNodePaddingIndent]=\"paddingIndent\"\r\n *matTreeNodeDef=\"let node;when: _isExpendable\"\r\n matTreeNodePadding\r\n (click)=\"_togleNode($event, node)\"\r\n class=\"folder-node\"\r\n [class.dragable-node]=\"enableDragAndDrop && node.level > 0\"\r\n [class.selected-node]=\"_isSelected(node)\"\r\n [attr.data-test]=\"dataTestPrefix + node.id\"\r\n [title]=\"node.name\"\r\n [attr.node-id]=\"node.id\"\r\n >\r\n <button\r\n mat-icon-button\r\n matTreeNodeToggle\r\n [attr.aria-label]=\"'Toggle ' + node.name\"\r\n >\r\n <div\r\n class=\"icon expand-collapse-icon\"\r\n [class.expand-more-icon]=\"_hasChildren(node) && !_treeControl.isExpanded(node)\"\r\n [class.collapse-icon]=\"_hasChildren(node) && _treeControl.isExpanded(node)\"\r\n >\r\n </div>\r\n </button>\r\n <div class=\"icon folder-icon\" *ngIf=\"showFoldersIcons\">\r\n </div>\r\n <span class=\"node-label\"\r\n [class.selected-node]=\"_isSelected(node)\"\r\n [class.selected-all-descendants-nodes]=\"_descendantsAllSelected(node) && _isSelected(node) && enableParentHighlighting\"\r\n [class.selected-partially-descendants-nodes]=\"_descendantsPartiallySelected(node) && enableParentHighlighting\"\r\n >\r\n <div class=\"custom-drag-placeholder\" *cdkDragPlaceholder></div>\r\n <div class=\"node-label\">\r\n {{node.name}}\r\n </div>\r\n </span>\r\n <lib-bimplus-context-menu\r\n [items]=\"contextMenus?.folderContextMenuitems\"\r\n [data]=\"node\"\r\n *ngIf=\"contextMenus?.folderContextMenuitems?.length\"\r\n >\r\n </lib-bimplus-context-menu>\r\n </cdk-tree-node>\r\n </cdk-tree>\r\n</div>\r\n", styles: [".text-selected{color:#fe5000}.ui-icon22px{width:2.2rem;height:2.2rem;display:inline-block;float:right;border-radius:.4rem;background-position:center center;background-repeat:no-repeat;cursor:pointer}.ui-icon-sidemenu{width:2.4rem;height:2.4rem;background-size:1.8rem 1.8rem;background-position:center center;background-repeat:no-repeat}.touch-ui-icon-sidemenu{width:2.4rem;height:2.4rem;background-size:1.8rem 1.8rem;background-position:center center;background-repeat:no-repeat;width:3.2rem;height:3.2rem}.ui-icon-sidemenu-important{width:2.4rem!important;height:2.4rem!important;background-size:1.8rem 1.8rem!important;background-position:center center;background-repeat:no-repeat}.tree-container{background-color:var(--flat-tree-bkg-color, #ffffff);width:calc(100% - 2 * var(--flat-tree-node-indent, 1rem));padding:var(--flat-tree-node-indent, 1rem);font-family:var(--flat-tree-font-family, \"Source Sans Pro\", Helvetica, Arial, tahoma, sans-serif);font-size:var(--flat-tree-font-size, 1.3rem);font-weight:var(--flat-tree-font-weight, 700);color:var(--flat-tree-color, #444444)}.tree-container>.tree-title{background-color:transparent;font-size:var(--flat-tree-title-font-size, 1.6rem);margin-bottom:1rem}.cdk-tree{background-color:transparent;width:100%}.cdk-tree>.cdk-tree-node{background-color:transparent;display:flex;align-items:center;cursor:pointer;line-height:var(--flat-tree-node-line-height, 2.4rem)}.cdk-tree>.cdk-tree-node.folder-node{font-weight:var(--flat-tree-folder-font-weight, 700)}.cdk-tree>.cdk-tree-node.object-node{font-weight:var(--flat-tree-object-font-weight, 400)}.cdk-tree>.cdk-tree-node>span.node-label{overflow:hidden;flex:1}.cdk-tree>.cdk-tree-node>span.node-label>div.node-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cdk-tree>.cdk-tree-node lib-bimplus-context-menu{--context-menu-trigger-width: 2.4rem;--context-menu-trigger-height: var(--flat-tree-node-line-height, 2.4rem);--context-menu-trigger-bkg-color: transparent}.cdk-tree>.cdk-tree-node:not(.selected-node):not(:hover) lib-bimplus-context-menu{display:none}.cdk-tree-node.dragable-node:hover{background-color:var(--flat-tree-hover-color, #F5F5F5);background-image:url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<rect x=\"11\" y=\"2\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"6\" y=\"2\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"11\" y=\"8\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"6\" y=\"8\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"11\" y=\"14\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A<rect x=\"6\" y=\"14\" width=\"2\" height=\"2\" fill=\"%237B7B7B\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;background-size:var(--flat-tree-node-icon-size, 1.8rem);background-position:left center}.mat-mdc-icon-button{padding:.2rem;width:var(--flat-tree-node-line-height, 2.4rem);height:var(--flat-tree-node-line-height, 2.4rem)}.selected-node{color:var(--flat-tree-selected-node-color, #2188ca);font-weight:var(--flat-tree-selected-node-font-weight, 700)}.selected-all-descendants-nodes{color:var(--flat-tree-selected-node-color, #2188ca)}.selected-partially-descendants-nodes{color:var(--flat-tree-partially-selected-node-color, rgba(0, 71, 171, .55))}.custom-drag-placeholder{height:0px}.icon{width:var(--flat-tree-node-icon-size, 1.8rem);height:var(--flat-tree-node-icon-size, 1.8rem);margin-right:.4rem;background-position:center;background-size:var(--flat-tree-node-icon-size, 1.8rem)}.icon.folder-icon{background:var(--flat-tree-folder-icon, url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"utf-8\"?>%0D%0A<!-- Generator: Adobe Illustrator 21.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->%0D%0A<svg version=\"1.1\" id=\"Layer_1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"%0D%0A%09 viewBox=\"0 0 20 20\" style=\"enable-background:new 0 0 20 20;\" xml:space=\"preserve\">%0D%0A<style type=\"text/css\">%0D%0A%09.st0{fill:%23444444;}%0D%0A<\\/style>%0D%0A<path class=\"st0\" d=\"M17,7V5V4V1h-6L8,3H0v16h2h15l3-12H17z M8,5h0.6l0.5-0.3L11.6,3H15v1v1v2H3l-1,4V5H8z M15.4,17H2.6l2-8H15h2%0D%0A%09h0.4L15.4,17z\"/>%0D%0A</svg>%0D%0A') no-repeat);background-size:var(--flat-tree-folder-icon-size, 1.6rem);background-position:center}.icon.object-icon{background:var(--flat-tree-object-icon, url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"utf-8\"?>%0D%0A<!-- Generator: Adobe Illustrator 21.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->%0D%0A<svg version=\"1.1\" id=\"Layer_1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"%0D%0A%09 viewBox=\"0 0 20 20\" style=\"enable-background:new 0 0 20 20;\" xml:space=\"preserve\">%0D%0A<style type=\"text/css\">%0D%0A%09.st0{fill:%23444;}%0D%0A<\\/style>%0D%0A<g>%0D%0A%09<path class=\"st0\" d=\"M6,9h4V7H6V9z\"/>%0D%0A%09<path class=\"st0\" d=\"M6,4v2h8V4H6z\"/>%0D%0A%09<path class=\"st0\" d=\"M6,12h4v-2H6V12z\"/>%0D%0A%09<path class=\"st0\" d=\"M17,1H3v18h10l0,0l0,0l4-4h0l0,0V1z M13,15v2H5V3h10v12H13z\"/>%0D%0A</g>%0D%0A</svg>%0D%0A') no-repeat);background-size:var(--flat-tree-object-icon-size, 1.6rem);background-position:center}.icon.expand-collapse-icon.expand-more-icon{background:var(--flat-tree-node-expand-icon, url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M7.81235 5.64988C7.48497 5.38797 7 5.62106 7 6.04031L7 11.9597C7 12.3789 7.48497 12.612 7.81235 12.3501L11.512 9.39043C11.7622 9.19027 11.7622 8.80973 11.512 8.60957L7.81235 5.64988Z\" fill=\"%23ADADAD\"/>%0D%0A</svg>%0D%0A') no-repeat);background-size:var(--flat-tree-expand-collapse-icon-size, 1.8rem);background-position:center}.icon.expand-collapse-icon.collapse-icon{background:var(--flat-tree-node-collapse-icon, url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A<path d=\"M12.3501 7.81235C12.612 7.48497 12.3789 7 11.9597 7H6.04031C5.62106 7 5.38797 7.48497 5.64988 7.81235L8.60957 11.512C8.80973 11.7622 9.19027 11.7622 9.39043 11.512L12.3501 7.81235Z\" fill=\"%23444444\"/>%0D%0A</svg>%0D%0A') no-repeat);background-size:var(--flat-tree-expand-collapse-icon-size, 1.8rem);background-position:center}\n"] }]
|
|
217
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { treeDataStringified: [{
|
|
189
218
|
type: Input
|
|
190
219
|
}], treeTitle: [{
|
|
191
220
|
type: Input
|
|
@@ -221,4 +250,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImpo
|
|
|
221
250
|
}], selectedNodes: [{
|
|
222
251
|
type: Output
|
|
223
252
|
}] } });
|
|
224
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmltcGx1cy1mbGF0LXRyZWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWJpbXBsdXMtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvYmltcGx1cy1mbGF0LXRyZWUvYmltcGx1cy1mbGF0LXRyZWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWJpbXBsdXMtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvYmltcGx1cy1mbGF0LXRyZWUvYmltcGx1cy1mbGF0LXRyZWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQTJCLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEcsT0FBTyxFQUFFLGNBQWMsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU5QyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTyx3REFBd0QsQ0FBQTs7Ozs7QUFnQnJHLE1BQU0sT0FBTyx3QkFBd0I7SUFkckM7UUFlVyx3QkFBbUIsR0FBa0IsSUFBSSxDQUFDO1FBQzFDLGNBQVMsR0FBWSxFQUFFLENBQUM7UUFD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ZW50LCBPbkluaXQsIElucHV0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZSwgYm9vbGVhbkF0dHJpYnV0ZSwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xyXG5pbXBvcnQgeyBNYXRUcmVlRmxhdERhdGFTb3VyY2UsIE1hdFRyZWVGbGF0dGVuZXIsIE1hdFRyZWVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90cmVlJztcclxuaW1wb3J0IHsgU2VsZWN0aW9uTW9kZWx9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2xsZWN0aW9ucyc7XHJcbmltcG9ydCB7IENka1RyZWVNb2R1bGUsIEZsYXRUcmVlQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90cmVlJztcclxuaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IGZpcmVFdmVudCB9IGZyb20gJy4uLy4uL3V0aWxzL3V0aWxzJztcclxuaW1wb3J0IHsgVHJlZU5vZGUsIEZsYXROb2RlLCBGbGF0VHJlZUNvbnRleHRNZW51cyB9IGZyb20gJy4vYmltcGx1cy1mbGF0LXRyZWUuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgQmltcGx1c0NvbnRleHRNZW51Q29tcG9uZW50IH0gZnJvbSAgJy4uL2JpbXBsdXMtY29udGV4dC1tZW51L2JpbXBsdXMtY29udGV4dC1tZW51LmNvbXBvbmVudCdcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWJpbXBsdXMtZmxhdC10cmVlJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtNYXRUcmVlTW9kdWxlXHJcbiAgICAsIE1hdEJ1dHRvbk1vZHVsZVxyXG4gICAgLCBNYXRJY29uTW9kdWxlXHJcbiAgICAsIENka1RyZWVNb2R1bGVcclxuICAgICwgTmdJZlxyXG4gICAgLCBCaW1wbHVzQ29udGV4dE1lbnVDb21wb25lbnRcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9iaW1wbHVzLWZsYXQtdHJlZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL2JpbXBsdXMtZmxhdC10cmVlLmNvbXBvbmVudC5sZXNzJ1xyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIEJpbXBsdXNGbGF0VHJlZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2Vze1xyXG4gIEBJbnB1dCgpIHRyZWVEYXRhU3RyaW5naWZpZWQ6IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG4gIEBJbnB1dCgpIHRyZWVUaXRsZSA6IHN0cmluZyA9IFwiXCI7XHJcbiAgQElucHV0KCkgcGFkZGluZ0luZGVudCA6IHN0cmluZyA9IFwiMi44cmVtXCJcclxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgbXVsdGlTZWxlY3Q6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgb25lTGV2ZWxNdWx0aVNlbGVjdDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBzaG93Rm9sZGVyc0ljb25zOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIHNob3dPYmplY3RzSWNvbnM6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgZW5hYmxlU2VsZWN0OiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgZW5hYmxlUGFyZW50SGlnaGxpZ2h0aW5nOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgZW5hYmxlRHJhZ0FuZERyb3A6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBkYXRhVGVzdFByZWZpeCA6IHN0cmluZyA9IFwiXCI7XHJcbiAgQElucHV0KCkgY29udGV4dE1lbnVzOiBGbGF0VHJlZUNvbnRleHRNZW51cyB8IG51bGwgfCB1bmRlZmluZWQgPSBudWxsO1xyXG5cclxuICBnZXQgdHJlZURhdGEoKSA6IEFycmF5PFRyZWVOb2RlPntcclxuICAgIHJldHVybiB0aGlzLl9kYXRhU291cmNlLmRhdGE7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBzZXQgdHJlZURhdGEoZGF0YTogQXJyYXk8VHJlZU5vZGU+KSB7XHJcbiAgICB0aGlzLnRyZWVEYXRhU3RyaW5naWZpZWQgPSBudWxsO1xyXG4gICAgdGhpcy5fZGF0YVNvdXJjZS5kYXRhID0gZGF0YTtcclxuICB9XHJcblxyXG4gIEBPdXRwdXQoKSBzZWxlY3RlZE5vZGVzID0gbmV3IEV2ZW50RW1pdHRlcjxGbGF0Tm9kZVtdPigpO1xyXG5cclxuICBwcml2YXRlIF9zZWxlY3Rpb25MaXN0OiBTZWxlY3Rpb25Nb2RlbDxGbGF0Tm9kZT4gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc2VsZWN0aW9uTGlzdCA9IG5ldyBTZWxlY3Rpb25Nb2RlbDxGbGF0Tm9kZT4odGhpcy5tdWx0aVNlbGVjdCB8fCB0aGlzLm9uZUxldmVsTXVsdGlTZWxlY3QpO1xyXG4gICAgaWYodGhpcy50cmVlRGF0YVN0cmluZ2lmaWVkKXtcclxuICAgICAgdGhpcy5fc2V0TmV3RGF0YSh0aGlzLnRyZWVEYXRhU3RyaW5naWZpZWQpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZXhwYW5kVHJlZSgpe1xyXG4gICAgdGhpcy5fdHJlZUNvbnRyb2wuZXhwYW5kQWxsKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zZXROZXdEYXRhKHRyZWVEYXRhU3RyaW5naWZpZWQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgY29uc3QgX3RyZWVfZGF0YSA9IEpTT04ucGFyc2UodHJlZURhdGFTdHJpbmdpZmllZCk7XHJcbiAgICB0aGlzLl9kYXRhU291cmNlLmRhdGEgPSBfdHJlZV9kYXRhXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9jaGFuZ2VkVHJlZURhdGEoY2hhbmdlOiBTaW1wbGVDaGFuZ2UpIHtcclxuICAgIHRoaXMuX3NldE5ld0RhdGEoY2hhbmdlLmN1cnJlbnRWYWx1ZSlcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IHsgW3Byb3BLZXk6IHN0cmluZ106IFNpbXBsZUNoYW5nZSB9KTogdm9pZCB7XHJcbiAgICBpZihjaGFuZ2VzWydtdWx0aVNlbGVjdCddIHx8IGNoYW5nZXNbJ29uZUxldmVsTXVsdGlTZWxlY3QnXSkge1xyXG4gICAgICB0aGlzLl9zZWxlY3Rpb25MaXN0ID0gbmV3IFNlbGVjdGlvbk1vZGVsPEZsYXROb2RlPih0aGlzLm11bHRpU2VsZWN0IHx8IHRoaXMub25lTGV2ZWxNdWx0aVNlbGVjdCk7XHJcbiAgICB9XHJcbiAgICBpZihjaGFuZ2VzWyd0cmVlRGF0YVN0cmluZ2lmaWVkJ10pIHtcclxuICAgICAgdGhpcy5fY2hhbmdlZFRyZWVEYXRhKGNoYW5nZXNbJ3RyZWVEYXRhU3RyaW5naWZpZWQnXSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3RyYW5zZm9ybWVyID0gKG5vZGU6IFRyZWVOb2RlLCBsZXZlbDogbnVtYmVyKTogRmxhdE5vZGUgPT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgZXhwYW5kYWJsZTogbm9kZS5jaGlsZHJlbiAhPT0gdW5kZWZpbmVkLFxyXG4gICAgICBjaGlsZHJlbl9jb3VudDogbm9kZS5jaGlsZHJlbj8ubGVuZ3RoLFxyXG4gICAgICBuYW1lOiBub2RlLm5hbWUsXHJcbiAgICAgIGlkOiBub2RlLmlkLFxyXG4gICAgICBsZXZlbDogbGV2ZWwsXHJcbiAgICAgIHBhcmVudDogbm9kZS5wYXJlbnRcclxuICAgIH07XHJcbiAgfTtcclxuXHJcbiAgcHJvdGVjdGVkIF90cmVlQ29udHJvbCA9IG5ldyBGbGF0VHJlZUNvbnRyb2w8RmxhdE5vZGU+KFxyXG4gICAgbm9kZSA9PiBub2RlLmxldmVsLFxyXG4gICAgbm9kZSA9PiBub2RlLmV4cGFuZGFibGUsXHJcbiAgKTtcclxuXHJcbiAgcHJvdGVjdGVkIF90cmVlRmxhdHRlbmVyID0gbmV3IE1hdFRyZWVGbGF0dGVuZXIoXHJcbiAgICB0aGlzLl90cmFuc2Zvcm1lcixcclxuICAgIG5vZGUgPT4gbm9kZS5sZXZlbCxcclxuICAgIG5vZGUgPT4gbm9kZS5leHBhbmRhYmxlLFxyXG4gICAgbm9kZSA9PiBub2RlLmNoaWxkcmVuXHJcbiAgKTtcclxuXHJcbiAgcHJvdGVjdGVkIF9kYXRhU291cmNlID0gbmV3IE1hdFRyZWVGbGF0RGF0YVNvdXJjZSh0aGlzLl90cmVlQ29udHJvbCwgdGhpcy5fdHJlZUZsYXR0ZW5lcik7XHJcbiAgcHJvdGVjdGVkIF9pc0V4cGVuZGFibGUgPSAoXzogbnVtYmVyLCBub2RlOiBGbGF0Tm9kZSkgPT4gbm9kZS5leHBhbmRhYmxlO1xyXG5cclxuICBwcm90ZWN0ZWQgX2hhc0NoaWxkcmVuKG5vZGU6IEZsYXROb2RlKTogYm9vbGVhbiB7XHJcbiAgICBpZighbm9kZS5leHBhbmRhYmxlKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICAgIGlmKG5vZGUuY2hpbGRyZW5fY291bnQgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICByZXR1cm4gZmFsc2VcclxuICAgIH1cclxuICAgIHJldHVybiBub2RlLmNoaWxkcmVuX2NvdW50ID4gMFxyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIF9kZXNjZW5kYW50c0FsbFNlbGVjdGVkKG5vZGU6IEZsYXROb2RlKTogYm9vbGVhbiB7XHJcbiAgICBpZighdGhpcy5fc2VsZWN0aW9uTGlzdCkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgX3NlbGVjdGlvbkxpc3Q6IFNlbGVjdGlvbk1vZGVsPEZsYXROb2RlPiA9IHRoaXMuX3NlbGVjdGlvbkxpc3Q7XHJcblxyXG4gICAgY29uc3QgX2Rlc2NlbmRhbnRzID0gdGhpcy5fdHJlZUNvbnRyb2wuZ2V0RGVzY2VuZGFudHMobm9kZSk7XHJcbiAgICBpZihfZGVzY2VuZGFudHMubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgY29uc3QgX2Rlc2NBbGxTZWxlY3RlZCA9IF9kZXNjZW5kYW50cy5sZW5ndGggPiAwICYmIF9kZXNjZW5kYW50cy5ldmVyeSgoY2hpbGQpID0+IHtcclxuICAgICAgcmV0dXJuIF9zZWxlY3Rpb25MaXN0LmlzU2VsZWN0ZWQoY2hpbGQpO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gX2Rlc2NBbGxTZWxlY3RlZDtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBfZGVzY2VuZGFudHNQYXJ0aWFsbHlTZWxlY3RlZChub2RlOiBGbGF0Tm9kZSk6IGJvb2xlYW4ge1xyXG4gICAgaWYoIXRoaXMuX3NlbGVjdGlvbkxpc3QpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgY29uc3QgX3NlbGVjdGlvbkxpc3Q6IFNlbGVjdGlvbk1vZGVsPEZsYXROb2RlPiA9IHRoaXMuX3NlbGVjdGlvbkxpc3Q7XHJcblxyXG4gICAgY29uc3QgX2Rlc2NlbmRhbnRzID0gdGhpcy5fdHJlZUNvbnRyb2wuZ2V0RGVzY2VuZGFudHMobm9kZSk7XHJcbiAgICBjb25zdCBfcmVzdWx0ID0gX2Rlc2NlbmRhbnRzLnNvbWUoKGNoaWxkKSA9PiB7XHJcbiAgICAgIHJldHVybiBfc2VsZWN0aW9uTGlzdC5pc1NlbGVjdGVkKGNoaWxkKVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gX3Jlc3VsdCAmJiAhdGhpcy5fZGVzY2VuZGFudHNBbGxTZWxlY3RlZChub2RlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3RvZ2dsZURlc2NlbmRhbnRzTm9kZXMobm9kZTogRmxhdE5vZGUpIHtcclxuICAgIGlmKCF0aGlzLl9zZWxlY3Rpb25MaXN0KSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBfaXNOb2RlU2VsZWN0ZWQgPSB0aGlzLl9zZWxlY3Rpb25MaXN0LmlzU2VsZWN0ZWQobm9kZSk7XHJcbiAgICBpZihfaXNOb2RlU2VsZWN0ZWQpIHtcclxuICAgICAgdGhpcy5fc2VsZWN0aW9uTGlzdC5zZWxlY3QoLi4udGhpcy5fdHJlZUNvbnRyb2wuZ2V0RGVzY2VuZGFudHMobm9kZSkpO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMuX3NlbGVjdGlvbkxpc3QuZGVzZWxlY3QoLi4udGhpcy5fdHJlZUNvbnRyb2wuZ2V0RGVzY2VuZGFudHMobm9kZSkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfdXBkYXRlUGFyZW50U2VsZWN0aW9ucyhub2RlOiBGbGF0Tm9kZSkge1xyXG4gICAgaWYoIXRoaXMuX3NlbGVjdGlvbkxpc3QpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCBfcGFyZW50SWQgPSBub2RlLnBhcmVudDtcclxuICAgIGxldCBfcGFyZW50Tm9kZSA9IHRoaXMuX3RyZWVDb250cm9sLmRhdGFOb2Rlcy5maW5kKG4gPT4gbi5pZCA9PT0gX3BhcmVudElkKVxyXG4gICAgd2hpbGUoX3BhcmVudE5vZGUpIHtcclxuICAgICAgaWYodGhpcy5fZGVzY2VuZGFudHNBbGxTZWxlY3RlZChfcGFyZW50Tm9kZSkpIHtcclxuICAgICAgICB0aGlzLl9zZWxlY3Rpb25MaXN0LnNlbGVjdChfcGFyZW50Tm9kZSk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZXtcclxuICAgICAgICB0aGlzLl9zZWxlY3Rpb25MaXN0LmRlc2VsZWN0KF9wYXJlbnROb2RlKTtcclxuICAgICAgfVxyXG4gICAgICBfcGFyZW50SWQgPSBfcGFyZW50Tm9kZS5wYXJlbnQ7XHJcbiAgICAgIF9wYXJlbnROb2RlID0gdGhpcy5fdHJlZUNvbnRyb2wuZGF0YU5vZGVzLmZpbmQobiA9PiBuLmlkID09PSBfcGFyZW50SWQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIF90b2dsZU5vZGUoZXZlbnQ6IE1vdXNlRXZlbnQsIG5vZGU6IEZsYXROb2RlKSB7XHJcbiAgICBpZighbm9kZSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYoIXRoaXMuZW5hYmxlU2VsZWN0KSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZighdGhpcy5fc2VsZWN0aW9uTGlzdCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYoIWV2ZW50Py5jdHJsS2V5KSB7XHJcbiAgICAgIHRoaXMuX3NlbGVjdGlvbkxpc3QuY2xlYXIoKTtcclxuICAgIH1cclxuXHJcbiAgICBpZih0aGlzLm9uZUxldmVsTXVsdGlTZWxlY3QgJiYgdGhpcy5fc2VsZWN0aW9uTGlzdC5zZWxlY3RlZC5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGlmKHRoaXMuX3NlbGVjdGlvbkxpc3Quc2VsZWN0ZWRbMF0ucGFyZW50ICE9PSBub2RlLnBhcmVudCkge1xyXG4gICAgICAgIHRoaXMuX3NlbGVjdGlvbkxpc3QuY2xlYXIoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuX3NlbGVjdGlvbkxpc3QudG9nZ2xlKG5vZGUpO1xyXG4gICAgaWYoIXRoaXMubXVsdGlTZWxlY3QgJiYgIXRoaXMub25lTGV2ZWxNdWx0aVNlbGVjdCkge1xyXG4gICAgICBmaXJlRXZlbnQodGhpcywgXCJzZWxlY3RlZE5vZGVzXCIsIHRoaXMuX3NlbGVjdGlvbkxpc3Quc2VsZWN0ZWQgKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmKCF0aGlzLm9uZUxldmVsTXVsdGlTZWxlY3QpIHtcclxuICAgICAgdGhpcy5fdG9nZ2xlRGVzY2VuZGFudHNOb2Rlcyhub2RlKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgaWYodGhpcy5lbmFibGVQYXJlbnRIaWdobGlnaHRpbmcpIHtcclxuICAgICAgdGhpcy5fdXBkYXRlUGFyZW50U2VsZWN0aW9ucyhub2RlKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgZmlyZUV2ZW50KHRoaXMsIFwic2VsZWN0ZWROb2Rlc1wiLCB0aGlzLl9zZWxlY3Rpb25MaXN0LnNlbGVjdGVkICk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgX2lzU2VsZWN0ZWQobm9kZTogRmxhdE5vZGUpOiBib29sZWFue1xyXG4gICAgaWYoIXRoaXMuX3NlbGVjdGlvbkxpc3QpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdGlvbkxpc3Q/LmlzU2VsZWN0ZWQobm9kZSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJ0cmVlLWNvbnRhaW5lclwiPlxyXG4gIDxkaXYgKm5nSWY9XCJ0cmVlVGl0bGVcIiBjbGFzcz1cInRyZWUtdGl0bGVcIj57e3RyZWVUaXRsZX19PC9kaXY+XHJcbiAgPGNkay10cmVlIFtkYXRhU291cmNlXT1cIl9kYXRhU291cmNlXCIgW3RyZWVDb250cm9sXT1cIl90cmVlQ29udHJvbFwiPlxyXG4gICAgPCEtLSBUaGlzIGlzIHRoZSB0cmVlIG5vZGUgdGVtcGxhdGUgZm9yIGxlYWYgbm9kZXMgLS0+XHJcbiAgICA8Y2RrLXRyZWUtbm9kZVxyXG4gICAgICBbbWF0VHJlZU5vZGVQYWRkaW5nSW5kZW50XT1cInBhZGRpbmdJbmRlbnRcIlxyXG4gICAgICAqbWF0VHJlZU5vZGVEZWY9XCJsZXQgbm9kZVwiXHJcbiAgICAgIG1hdFRyZWVOb2RlUGFkZGluZ1xyXG4gICAgICAoY2xpY2spPVwiX3RvZ2xlTm9kZSgkZXZlbnQsIG5vZGUpXCJcclxuICAgICAgY2xhc3M9XCJvYmplY3Qtbm9kZVwiXHJcbiAgICAgIFtjbGFzcy5kcmFnYWJsZS1ub2RlXT1cImVuYWJsZURyYWdBbmREcm9wICYmIG5vZGUubGV2ZWwgPiAwXCJcclxuICAgICAgW2NsYXNzLnNlbGVjdGVkLW5vZGVdPVwiX2lzU2VsZWN0ZWQobm9kZSlcIlxyXG4gICAgICBbYXR0ci5kYXRhLXRlc3RdPVwiZGF0YVRlc3RQcmVmaXggKyBub2RlLmlkXCJcclxuICAgICAgW3RpdGxlXT1cIm5vZGUubmFtZVwiXHJcbiAgICA+XHJcbiAgICAgIDwhLS0gdXNlIGEgZGlzYWJsZWQgYnV0dG9uIHRvIHByb3ZpZGUgcGFkZGluZyBmb3IgdHJlZSBsZWFmIC0tPlxyXG4gICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBkaXNhYmxlZD5cclxuICAgICAgPC9idXR0b24+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJpY29uIG9iamVjdC1pY29uXCIgKm5nSWY9XCJzaG93T2JqZWN0c0ljb25zXCI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8c3BhblxyXG4gICAgICAgIGNsYXNzPVwibm9kZS1sYWJlbFwiXHJcbiAgICAgICAgW2NsYXNzLnNlbGVjdGVkLW5vZGVdPVwiX2lzU2VsZWN0ZWQobm9kZSlcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImN1c3RvbS1kcmFnLXBsYWNlaG9sZGVyXCIgKmNka0RyYWdQbGFjZWhvbGRlcj48L2Rpdj5cclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAge3tub2RlLm5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L3NwYW4+XHJcbiAgICAgIDxsaWItYmltcGx1cy1jb250ZXh0LW1lbnVcclxuICAgICAgICBbaXRlbXNdPVwiY29udGV4dE1lbnVzPy5vYmplY3RDb250ZXh0TWVudWl0ZW1zXCJcclxuICAgICAgICBbZGF0YV09XCJub2RlXCJcclxuICAgICAgICAqbmdJZj1cImNvbnRleHRNZW51cz8ub2JqZWN0Q29udGV4dE1lbnVpdGVtcz8ubGVuZ3RoXCJcclxuICAgICAgPlxyXG4gICAgICA8L2xpYi1iaW1wbHVzLWNvbnRleHQtbWVudT5cclxuICAgIDwvY2RrLXRyZWUtbm9kZT5cclxuICAgIDwhLS0gVGhpcyBpcyB0aGUgdHJlZSBub2RlIHRlbXBsYXRlIGZvciBleHBhbmRhYmxlIG5vZGVzIC0tPlxyXG4gICAgPGNkay10cmVlLW5vZGUgW21hdFRyZWVOb2RlUGFkZGluZ0luZGVudF09XCJwYWRkaW5nSW5kZW50XCJcclxuICAgICAgKm1hdFRyZWVOb2RlRGVmPVwibGV0IG5vZGU7d2hlbjogX2lzRXhwZW5kYWJsZVwiXHJcbiAgICAgIG1hdFRyZWVOb2RlUGFkZGluZ1xyXG4gICAgICAoY2xpY2spPVwiX3RvZ2xlTm9kZSgkZXZlbnQsIG5vZGUpXCJcclxuICAgICAgY2xhc3M9XCJmb2xkZXItbm9kZVwiXHJcbiAgICAgIFtjbGFzcy5kcmFnYWJsZS1ub2RlXT1cImVuYWJsZURyYWdBbmREcm9wICYmIG5vZGUubGV2ZWwgPiAwXCJcclxuICAgICAgW2NsYXNzLnNlbGVjdGVkLW5vZGVdPVwiX2lzU2VsZWN0ZWQobm9kZSlcIlxyXG4gICAgICBbYXR0ci5kYXRhLXRlc3RdPVwiZGF0YVRlc3RQcmVmaXggKyBub2RlLmlkXCJcclxuICAgICAgW3RpdGxlXT1cIm5vZGUubmFtZVwiXHJcbiAgICA+XHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICBtYXQtaWNvbi1idXR0b25cclxuICAgICAgICBtYXRUcmVlTm9kZVRvZ2dsZVxyXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ1RvZ2dsZSAnICsgbm9kZS5uYW1lXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxkaXZcclxuICAgICAgICAgIGNsYXNzPVwiaWNvbiBleHBhbmQtY29sbGFwc2UtaWNvblwiXHJcbiAgICAgICAgICBbY2xhc3MuZXhwYW5kLW1vcmUtaWNvbl09XCJfaGFzQ2hpbGRyZW4obm9kZSkgJiYgIV90cmVlQ29udHJvbC5pc0V4cGFuZGVkKG5vZGUpXCJcclxuICAgICAgICAgIFtjbGFzcy5jb2xsYXBzZS1pY29uXT1cIl9oYXNDaGlsZHJlbihub2RlKSAmJiBfdHJlZUNvbnRyb2wuaXNFeHBhbmRlZChub2RlKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgPGRpdiBjbGFzcz1cImljb24gZm9sZGVyLWljb25cIiAqbmdJZj1cInNob3dGb2xkZXJzSWNvbnNcIj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwibm9kZS1sYWJlbFwiXHJcbiAgICAgICAgW2NsYXNzLnNlbGVjdGVkLW5vZGVdPVwiX2lzU2VsZWN0ZWQobm9kZSlcIlxyXG4gICAgICAgIFtjbGFzcy5zZWxlY3RlZC1hbGwtZGVzY2VuZGFudHMtbm9kZXNdPVwiX2Rlc2NlbmRhbnRzQWxsU2VsZWN0ZWQobm9kZSkgJiYgX2lzU2VsZWN0ZWQobm9kZSkgJiYgZW5hYmxlUGFyZW50SGlnaGxpZ2h0aW5nXCJcclxuICAgICAgICBbY2xhc3Muc2VsZWN0ZWQtcGFydGlhbGx5LWRlc2NlbmRhbnRzLW5vZGVzXT1cIl9kZXNjZW5kYW50c1BhcnRpYWxseVNlbGVjdGVkKG5vZGUpICYmIGVuYWJsZVBhcmVudEhpZ2hsaWdodGluZ1wiXHJcbiAgICAgID5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY3VzdG9tLWRyYWctcGxhY2Vob2xkZXJcIiAqY2RrRHJhZ1BsYWNlaG9sZGVyPjwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJub2RlLWxhYmVsXCI+XHJcbiAgICAgICAgICB7e25vZGUubmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvc3Bhbj5cclxuICAgICAgPGxpYi1iaW1wbHVzLWNvbnRleHQtbWVudVxyXG4gICAgICAgIFtpdGVtc109XCJjb250ZXh0TWVudXM/LmZvbGRlckNvbnRleHRNZW51aXRlbXNcIlxyXG4gICAgICAgIFtkYXRhXT1cIm5vZGVcIlxyXG4gICAgICAgICpuZ0lmPVwiY29udGV4dE1lbnVzPy5mb2xkZXJDb250ZXh0TWVudWl0ZW1zPy5sZW5ndGhcIlxyXG4gICAgICA+XHJcbiAgICAgIDwvbGliLWJpbXBsdXMtY29udGV4dC1tZW51PlxyXG4gICAgPC9jZGstdHJlZS1ub2RlPlxyXG4gIDwvY2RrLXRyZWU+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
253
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmltcGx1cy1mbGF0LXRyZWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWJpbXBsdXMtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvYmltcGx1cy1mbGF0LXRyZWUvYmltcGx1cy1mbGF0LXRyZWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWJpbXBsdXMtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvYmltcGx1cy1mbGF0LXRyZWUvYmltcGx1cy1mbGF0LXRyZWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFNBQVMsRUFBVSxLQUFLLEVBQTJCLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEksT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEcsT0FBTyxFQUFFLGNBQWMsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU5QyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTyx3REFBd0QsQ0FBQzs7Ozs7QUFxQnRHLE1BQU0sT0FBTyx3QkFBd0I7SUFjbkMsWUFBb0IsRUFBYztRQUFkLE9BQUUsR0FBRixFQUFFLENBQVk7UUFiekIsd0JBQW1CLEdBQWtCLElB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QkFBcEIsS0FBSztnQkFRTyxRQUFRO3NCQUFwQixLQUFLO2dCQUtJLGFBQWE7c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbGVtZW50UmVmLCBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlLCBib29sZWFuQXR0cmlidXRlLCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdFRyZWVGbGF0RGF0YVNvdXJjZSwgTWF0VHJlZUZsYXR0ZW5lciwgTWF0VHJlZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RyZWUnO1xyXG5pbXBvcnQgeyBTZWxlY3Rpb25Nb2RlbH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvbGxlY3Rpb25zJztcclxuaW1wb3J0IHsgQ2RrVHJlZU1vZHVsZSwgRmxhdFRyZWVDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3RyZWUnO1xyXG5pbXBvcnQgeyBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgZmlyZUV2ZW50IH0gZnJvbSAnLi4vLi4vdXRpbHMvdXRpbHMnO1xyXG5pbXBvcnQgeyBUcmVlTm9kZSwgRmxhdE5vZGUsIEZsYXRUcmVlQ29udGV4dE1lbnVzIH0gZnJvbSAnLi9iaW1wbHVzLWZsYXQtdHJlZS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBCaW1wbHVzQ29udGV4dE1lbnVDb21wb25lbnQgfSBmcm9tICAnLi4vYmltcGx1cy1jb250ZXh0LW1lbnUvYmltcGx1cy1jb250ZXh0LW1lbnUuY29tcG9uZW50JztcclxuXHJcbmludGVyZmFjZSBCaW1wbHVzRmxhdFRyZWVDb21wb25lbnRBdHRyaWJ1dGUgIHtcclxuICBba2V5OiBzdHJpbmddOiB1bmtub3duOyAvLyBBZGQgaW5kZXggc2lnbmF0dXJlIGFsbG93aW5nIHN0cmluZyBpbmRleGluZ1xyXG4gICAvL090aGVyIHByb3BlcnRpZXMgYW5kIG1ldGhvZHMuLi5cclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItYmltcGx1cy1mbGF0LXRyZWUnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW01hdFRyZWVNb2R1bGVcclxuICAgICwgTWF0QnV0dG9uTW9kdWxlXHJcbiAgICAsIE1hdEljb25Nb2R1bGVcclxuICAgICwgQ2RrVHJlZU1vZHVsZVxyXG4gICAgLCBOZ0lmXHJcbiAgICAsIEJpbXBsdXNDb250ZXh0TWVudUNvbXBvbmVudFxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2JpbXBsdXMtZmxhdC10cmVlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vYmltcGx1cy1mbGF0LXRyZWUuY29tcG9uZW50Lmxlc3MnXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgQmltcGx1c0ZsYXRUcmVlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXN7XHJcbiAgQElucHV0KCkgdHJlZURhdGFTdHJpbmdpZmllZDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcbiAgQElucHV0KCkgdHJlZVRpdGxlIDogc3RyaW5nID0gXCJcIjtcclxuICBASW5wdXQoKSBwYWRkaW5nSW5kZW50IDogc3RyaW5nID0gXCIyLjhyZW1cIlxyXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBtdWx0aVNlbGVjdDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBvbmVMZXZlbE11bHRpU2VsZWN0OiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIHNob3dGb2xkZXJzSWNvbnM6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgc2hvd09iamVjdHNJY29uczogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBlbmFibGVTZWxlY3Q6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBlbmFibGVQYXJlbnRIaWdobGlnaHRpbmc6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBlbmFibGVEcmFnQW5kRHJvcDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGRhdGFUZXN0UHJlZml4IDogc3RyaW5nID0gXCJcIjtcclxuICBASW5wdXQoKSBjb250ZXh0TWVudXM6IEZsYXRUcmVlQ29udGV4dE1lbnVzIHwgbnVsbCB8IHVuZGVmaW5lZCA9IG51bGw7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYpIHt9XHJcblxyXG4gIGdldCB0cmVlRGF0YSgpIDogQXJyYXk8VHJlZU5vZGU+e1xyXG4gICAgcmV0dXJuIHRoaXMuX2RhdGFTb3VyY2UuZGF0YTtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIHNldCB0cmVlRGF0YShkYXRhOiBBcnJheTxUcmVlTm9kZT4pIHtcclxuICAgIHRoaXMudHJlZURhdGFTdHJpbmdpZmllZCA9IG51bGw7XHJcbiAgICB0aGlzLl9kYXRhU291cmNlLmRhdGEgPSBkYXRhO1xyXG4gIH1cclxuXHJcbiAgQE91dHB1dCgpIHNlbGVjdGVkTm9kZXMgPSBuZXcgRXZlbnRFbWl0dGVyPEZsYXROb2RlW10+KCk7XHJcblxyXG4gIHByaXZhdGUgX3NlbGVjdGlvbkxpc3Q6IFNlbGVjdGlvbk1vZGVsPEZsYXROb2RlPiB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcclxuXHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudDtcclxuICAgIGlmIChlbGVtZW50KSB7XHJcbiAgICAgIChlbGVtZW50IGFzIHVua25vd24gYXMgQmltcGx1c0ZsYXRUcmVlQ29tcG9uZW50QXR0cmlidXRlKVsnZ2V0X25vZGUnXSA9IHRoaXMuZ2V0X25vZGUuYmluZCh0aGlzKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLl9zZWxlY3Rpb25MaXN0ID0gbmV3IFNlbGVjdGlvbk1vZGVsPEZsYXROb2RlPih0aGlzLm11bHRpU2VsZWN0IHx8IHRoaXMub25lTGV2ZWxNdWx0aVNlbGVjdCk7XHJcbiAgICBpZih0aGlzLnRyZWVEYXRhU3RyaW5naWZpZWQpe1xyXG4gICAgICB0aGlzLl9zZXROZXdEYXRhKHRoaXMudHJlZURhdGFTdHJpbmdpZmllZClcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBleHBhbmRUcmVlKCl7XHJcbiAgICB0aGlzLl90cmVlQ29udHJvbC5leHBhbmRBbGwoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldE5vZGUoaWQ6IHN0cmluZywgbm9kZXM6IEFycmF5PFRyZWVOb2RlPik6IFRyZWVOb2RlIHwgbnVsbCB7XHJcbiAgICBmb3IoY29uc3Qgbm9kZSBvZiBub2Rlcykge1xyXG4gICAgICBpZihub2RlLmlkID09PSBpZCkge1xyXG4gICAgICAgIHJldHVybiBub2RlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmKG5vZGUuY2hpbGRyZW4pIHtcclxuICAgICAgICBjb25zdCBfbm9kZTogVHJlZU5vZGUgfCBudWxsID0gdGhpcy5fZ2V0Tm9kZShpZCwgbm9kZS5jaGlsZHJlbik7XHJcbiAgICAgICAgaWYoX25vZGUpIHtcclxuICAgICAgICAgIHJldHVybiBfbm9kZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldF9ub2RlKGlkOiB7IGlkOiBzdHJpbmcgfSB8IHN0cmluZywgZ2V0RE9NRWxlbWVudDogYm9vbGVhbiA9IGZhbHNlKTogVHJlZU5vZGUgfCBFbGVtZW50IHwgbnVsbCB7XHJcbiAgICBpZih0eXBlb2YgaWQgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLl9nZXROb2RlKGlkLCB0aGlzLl9kYXRhU291cmNlLmRhdGEpO1xyXG4gICAgfVxyXG4gICAgaWYoZ2V0RE9NRWxlbWVudCkge1xyXG4gICAgICBjb25zdCBfZWxlbWVudDogRWxlbWVudCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKGBbbm9kZS1pZD0nJHtpZC5pZH0nXWApO1xyXG4gICAgICByZXR1cm4gX2VsZW1lbnQ7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5fZ2V0Tm9kZShpZC5pZCwgdGhpcy5fZGF0YVNvdXJjZS5kYXRhKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3NldE5ld0RhdGEodHJlZURhdGFTdHJpbmdpZmllZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBjb25zdCBfdHJlZV9kYXRhID0gSlNPTi5wYXJzZSh0cmVlRGF0YVN0cmluZ2lmaWVkKTtcclxuICAgIHRoaXMuX2RhdGFTb3VyY2UuZGF0YSA9IF90cmVlX2RhdGFcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2NoYW5nZWRUcmVlRGF0YShjaGFuZ2U6IFNpbXBsZUNoYW5nZSkge1xyXG4gICAgdGhpcy5fc2V0TmV3RGF0YShjaGFuZ2UuY3VycmVudFZhbHVlKVxyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogeyBbcHJvcEtleTogc3RyaW5nXTogU2ltcGxlQ2hhbmdlIH0pOiB2b2lkIHtcclxuICAgIGlmKGNoYW5nZXNbJ211bHRpU2VsZWN0J10gfHwgY2hhbmdlc1snb25lTGV2ZWxNdWx0aVNlbGVjdCddKSB7XHJcbiAgICAgIHRoaXMuX3NlbGVjdGlvbkxpc3QgPSBuZXcgU2VsZWN0aW9uTW9kZWw8RmxhdE5vZGU+KHRoaXMubXVsdGlTZWxlY3QgfHwgdGhpcy5vbmVMZXZlbE11bHRpU2VsZWN0KTtcclxuICAgIH1cclxuICAgIGlmKGNoYW5nZXNbJ3RyZWVEYXRhU3RyaW5naWZpZWQnXSkge1xyXG4gICAgICB0aGlzLl9jaGFuZ2VkVHJlZURhdGEoY2hhbmdlc1sndHJlZURhdGFTdHJpbmdpZmllZCddKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfdHJhbnNmb3JtZXIgPSAobm9kZTogVHJlZU5vZGUsIGxldmVsOiBudW1iZXIpOiBGbGF0Tm9kZSA9PiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBleHBhbmRhYmxlOiBub2RlLmNoaWxkcmVuICE9PSB1bmRlZmluZWQsXHJcbiAgICAgIGNoaWxkcmVuX2NvdW50OiBub2RlLmNoaWxkcmVuPy5sZW5ndGgsXHJcbiAgICAgIG5hbWU6IG5vZGUubmFtZSxcclxuICAgICAgaWQ6IG5vZGUuaWQsXHJcbiAgICAgIGxldmVsOiBsZXZlbCxcclxuICAgICAgcGFyZW50OiBub2RlLnBhcmVudFxyXG4gICAgfTtcclxuICB9O1xyXG5cclxuICBwcm90ZWN0ZWQgX3RyZWVDb250cm9sID0gbmV3IEZsYXRUcmVlQ29udHJvbDxGbGF0Tm9kZT4oXHJcbiAgICBub2RlID0+IG5vZGUubGV2ZWwsXHJcbiAgICBub2RlID0+IG5vZGUuZXhwYW5kYWJsZSxcclxuICApO1xyXG5cclxuICBwcm90ZWN0ZWQgX3RyZWVGbGF0dGVuZXIgPSBuZXcgTWF0VHJlZUZsYXR0ZW5lcihcclxuICAgIHRoaXMuX3RyYW5zZm9ybWVyLFxyXG4gICAgbm9kZSA9PiBub2RlLmxldmVsLFxyXG4gICAgbm9kZSA9PiBub2RlLmV4cGFuZGFibGUsXHJcbiAgICBub2RlID0+IG5vZGUuY2hpbGRyZW5cclxuICApO1xyXG5cclxuICBwcm90ZWN0ZWQgX2RhdGFTb3VyY2UgPSBuZXcgTWF0VHJlZUZsYXREYXRhU291cmNlKHRoaXMuX3RyZWVDb250cm9sLCB0aGlzLl90cmVlRmxhdHRlbmVyKTtcclxuICBwcm90ZWN0ZWQgX2lzRXhwZW5kYWJsZSA9IChfOiBudW1iZXIsIG5vZGU6IEZsYXROb2RlKSA9PiBub2RlLmV4cGFuZGFibGU7XHJcblxyXG4gIHByb3RlY3RlZCBfaGFzQ2hpbGRyZW4obm9kZTogRmxhdE5vZGUpOiBib29sZWFuIHtcclxuICAgIGlmKCFub2RlLmV4cGFuZGFibGUpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgaWYobm9kZS5jaGlsZHJlbl9jb3VudCA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIG5vZGUuY2hpbGRyZW5fY291bnQgPiAwXHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgX2Rlc2NlbmRhbnRzQWxsU2VsZWN0ZWQobm9kZTogRmxhdE5vZGUpOiBib29sZWFuIHtcclxuICAgIGlmKCF0aGlzLl9zZWxlY3Rpb25MaXN0KSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBfc2VsZWN0aW9uTGlzdDogU2VsZWN0aW9uTW9kZWw8RmxhdE5vZGU+ID0gdGhpcy5fc2VsZWN0aW9uTGlzdDtcclxuXHJcbiAgICBjb25zdCBfZGVzY2VuZGFudHMgPSB0aGlzLl90cmVlQ29udHJvbC5nZXREZXNjZW5kYW50cyhub2RlKTtcclxuICAgIGlmKF9kZXNjZW5kYW50cy5sZW5ndGggPT09IDApIHtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgICBjb25zdCBfZGVzY0FsbFNlbGVjdGVkID0gX2Rlc2NlbmRhbnRzLmxlbmd0aCA+IDAgJiYgX2Rlc2NlbmRhbnRzLmV2ZXJ5KChjaGlsZCkgPT4ge1xyXG4gICAgICByZXR1cm4gX3NlbGVjdGlvbkxpc3QuaXNTZWxlY3RlZChjaGlsZCk7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBfZGVzY0FsbFNlbGVjdGVkO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIF9kZXNjZW5kYW50c1BhcnRpYWxseVNlbGVjdGVkKG5vZGU6IEZsYXROb2RlKTogYm9vbGVhbiB7XHJcbiAgICBpZighdGhpcy5fc2VsZWN0aW9uTGlzdCkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBjb25zdCBfc2VsZWN0aW9uTGlzdDogU2VsZWN0aW9uTW9kZWw8RmxhdE5vZGU+ID0gdGhpcy5fc2VsZWN0aW9uTGlzdDtcclxuXHJcbiAgICBjb25zdCBfZGVzY2VuZGFudHMgPSB0aGlzLl90cmVlQ29udHJvbC5nZXREZXNjZW5kYW50cyhub2RlKTtcclxuICAgIGNvbnN0IF9yZXN1bHQgPSBfZGVzY2VuZGFudHMuc29tZSgoY2hpbGQpID0+IHtcclxuICAgICAgcmV0dXJuIF9zZWxlY3Rpb25MaXN0LmlzU2VsZWN0ZWQoY2hpbGQpXHJcbiAgICB9KTtcclxuICAgIHJldHVybiBfcmVzdWx0ICYmICF0aGlzLl9kZXNjZW5kYW50c0FsbFNlbGVjdGVkKG5vZGUpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfdG9nZ2xlRGVzY2VuZGFudHNOb2Rlcyhub2RlOiBGbGF0Tm9kZSkge1xyXG4gICAgaWYoIXRoaXMuX3NlbGVjdGlvbkxpc3QpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IF9pc05vZGVTZWxlY3RlZCA9IHRoaXMuX3NlbGVjdGlvbkxpc3QuaXNTZWxlY3RlZChub2RlKTtcclxuICAgIGlmKF9pc05vZGVTZWxlY3RlZCkge1xyXG4gICAgICB0aGlzLl9zZWxlY3Rpb25MaXN0LnNlbGVjdCguLi50aGlzLl90cmVlQ29udHJvbC5nZXREZXNjZW5kYW50cyhub2RlKSk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgdGhpcy5fc2VsZWN0aW9uTGlzdC5kZXNlbGVjdCguLi50aGlzLl90cmVlQ29udHJvbC5nZXREZXNjZW5kYW50cyhub2RlKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF91cGRhdGVQYXJlbnRTZWxlY3Rpb25zKG5vZGU6IEZsYXROb2RlKSB7XHJcbiAgICBpZighdGhpcy5fc2VsZWN0aW9uTGlzdCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IF9wYXJlbnRJZCA9IG5vZGUucGFyZW50O1xyXG4gICAgbGV0IF9wYXJlbnROb2RlID0gdGhpcy5fdHJlZUNvbnRyb2wuZGF0YU5vZGVzLmZpbmQobiA9PiBuLmlkID09PSBfcGFyZW50SWQpXHJcbiAgICB3aGlsZShfcGFyZW50Tm9kZSkge1xyXG4gICAgICBpZih0aGlzLl9kZXNjZW5kYW50c0FsbFNlbGVjdGVkKF9wYXJlbnROb2RlKSkge1xyXG4gICAgICAgIHRoaXMuX3NlbGVjdGlvbkxpc3Quc2VsZWN0KF9wYXJlbnROb2RlKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNle1xyXG4gICAgICAgIHRoaXMuX3NlbGVjdGlvbkxpc3QuZGVzZWxlY3QoX3BhcmVudE5vZGUpO1xyXG4gICAgICB9XHJcbiAgICAgIF9wYXJlbnRJZCA9IF9wYXJlbnROb2RlLnBhcmVudDtcclxuICAgICAgX3BhcmVudE5vZGUgPSB0aGlzLl90cmVlQ29udHJvbC5kYXRhTm9kZXMuZmluZChuID0+IG4uaWQgPT09IF9wYXJlbnRJZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgX3RvZ2xlTm9kZShldmVudDogTW91c2VFdmVudCwgbm9kZTogRmxhdE5vZGUpIHtcclxuICAgIGlmKCFub2RlKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZighdGhpcy5lbmFibGVTZWxlY3QpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmKCF0aGlzLl9zZWxlY3Rpb25MaXN0KSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZighZXZlbnQ/LmN0cmxLZXkpIHtcclxuICAgICAgdGhpcy5fc2VsZWN0aW9uTGlzdC5jbGVhcigpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmKHRoaXMub25lTGV2ZWxNdWx0aVNlbGVjdCAmJiB0aGlzLl9zZWxlY3Rpb25MaXN0LnNlbGVjdGVkLmxlbmd0aCA+IDApIHtcclxuICAgICAgaWYodGhpcy5fc2VsZWN0aW9uTGlzdC5zZWxlY3RlZFswXS5wYXJlbnQgIT09IG5vZGUucGFyZW50KSB7XHJcbiAgICAgICAgdGhpcy5fc2VsZWN0aW9uTGlzdC5jbGVhcigpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5fc2VsZWN0aW9uTGlzdC50b2dnbGUobm9kZSk7XHJcbiAgICBpZighdGhpcy5tdWx0aVNlbGVjdCAmJiAhdGhpcy5vbmVMZXZlbE11bHRpU2VsZWN0KSB7XHJcbiAgICAgIGZpcmVFdmVudCh0aGlzLCBcInNlbGVjdGVkTm9kZXNcIiwgdGhpcy5fc2VsZWN0aW9uTGlzdC5zZWxlY3RlZCApO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYoIXRoaXMub25lTGV2ZWxNdWx0aVNlbGVjdCkge1xyXG4gICAgICB0aGlzLl90b2dnbGVEZXNjZW5kYW50c05vZGVzKG5vZGUpO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBpZih0aGlzLmVuYWJsZVBhcmVudEhpZ2hsaWdodGluZykge1xyXG4gICAgICB0aGlzLl91cGRhdGVQYXJlbnRTZWxlY3Rpb25zKG5vZGUpO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBmaXJlRXZlbnQodGhpcywgXCJzZWxlY3RlZE5vZGVzXCIsIHRoaXMuX3NlbGVjdGlvbkxpc3Quc2VsZWN0ZWQgKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBfaXNTZWxlY3RlZChub2RlOiBGbGF0Tm9kZSk6IGJvb2xlYW57XHJcbiAgICBpZighdGhpcy5fc2VsZWN0aW9uTGlzdCkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5fc2VsZWN0aW9uTGlzdD8uaXNTZWxlY3RlZChub2RlKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInRyZWUtY29udGFpbmVyXCI+XHJcbiAgPGRpdiAqbmdJZj1cInRyZWVUaXRsZVwiIGNsYXNzPVwidHJlZS10aXRsZVwiPnt7dHJlZVRpdGxlfX08L2Rpdj5cclxuICA8Y2RrLXRyZWUgW2RhdGFTb3VyY2VdPVwiX2RhdGFTb3VyY2VcIiBbdHJlZUNvbnRyb2xdPVwiX3RyZWVDb250cm9sXCI+XHJcbiAgICA8IS0tIFRoaXMgaXMgdGhlIHRyZWUgbm9kZSB0ZW1wbGF0ZSBmb3IgbGVhZiBub2RlcyAtLT5cclxuICAgIDxjZGstdHJlZS1ub2RlXHJcbiAgICAgIFttYXRUcmVlTm9kZVBhZGRpbmdJbmRlbnRdPVwicGFkZGluZ0luZGVudFwiXHJcbiAgICAgICptYXRUcmVlTm9kZURlZj1cImxldCBub2RlXCJcclxuICAgICAgbWF0VHJlZU5vZGVQYWRkaW5nXHJcbiAgICAgIChjbGljayk9XCJfdG9nbGVOb2RlKCRldmVudCwgbm9kZSlcIlxyXG4gICAgICBjbGFzcz1cIm9iamVjdC1ub2RlXCJcclxuICAgICAgW2NsYXNzLmRyYWdhYmxlLW5vZGVdPVwiZW5hYmxlRHJhZ0FuZERyb3AgJiYgbm9kZS5sZXZlbCA+IDBcIlxyXG4gICAgICBbY2xhc3Muc2VsZWN0ZWQtbm9kZV09XCJfaXNTZWxlY3RlZChub2RlKVwiXHJcbiAgICAgIFthdHRyLmRhdGEtdGVzdF09XCJkYXRhVGVzdFByZWZpeCArIG5vZGUuaWRcIlxyXG4gICAgICBbdGl0bGVdPVwibm9kZS5uYW1lXCJcclxuICAgICAgW2F0dHIubm9kZS1pZF09XCJub2RlLmlkXCJcclxuICAgID5cclxuICAgICAgPCEtLSB1c2UgYSBkaXNhYmxlZCBidXR0b24gdG8gcHJvdmlkZSBwYWRkaW5nIGZvciB0cmVlIGxlYWYgLS0+XHJcbiAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIGRpc2FibGVkPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgPGRpdiBjbGFzcz1cImljb24gb2JqZWN0LWljb25cIiAqbmdJZj1cInNob3dPYmplY3RzSWNvbnNcIj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxzcGFuXHJcbiAgICAgICAgY2xhc3M9XCJub2RlLWxhYmVsXCJcclxuICAgICAgICBbY2xhc3Muc2VsZWN0ZWQtbm9kZV09XCJfaXNTZWxlY3RlZChub2RlKVwiXHJcbiAgICAgID5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY3VzdG9tLWRyYWctcGxhY2Vob2xkZXJcIiAqY2RrRHJhZ1BsYWNlaG9sZGVyPjwvZGl2PlxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICB7e25vZGUubmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvc3Bhbj5cclxuICAgICAgPGxpYi1iaW1wbHVzLWNvbnRleHQtbWVudVxyXG4gICAgICAgIFtpdGVtc109XCJjb250ZXh0TWVudXM/Lm9iamVjdENvbnRleHRNZW51aXRlbXNcIlxyXG4gICAgICAgIFtkYXRhXT1cIm5vZGVcIlxyXG4gICAgICAgICpuZ0lmPVwiY29udGV4dE1lbnVzPy5vYmplY3RDb250ZXh0TWVudWl0ZW1zPy5sZW5ndGhcIlxyXG4gICAgICA+XHJcbiAgICAgIDwvbGliLWJpbXBsdXMtY29udGV4dC1tZW51PlxyXG4gICAgPC9jZGstdHJlZS1ub2RlPlxyXG4gICAgPCEtLSBUaGlzIGlzIHRoZSB0cmVlIG5vZGUgdGVtcGxhdGUgZm9yIGV4cGFuZGFibGUgbm9kZXMgLS0+XHJcbiAgICA8Y2RrLXRyZWUtbm9kZSBbbWF0VHJlZU5vZGVQYWRkaW5nSW5kZW50XT1cInBhZGRpbmdJbmRlbnRcIlxyXG4gICAgICAqbWF0VHJlZU5vZGVEZWY9XCJsZXQgbm9kZTt3aGVuOiBfaXNFeHBlbmRhYmxlXCJcclxuICAgICAgbWF0VHJlZU5vZGVQYWRkaW5nXHJcbiAgICAgIChjbGljayk9XCJfdG9nbGVOb2RlKCRldmVudCwgbm9kZSlcIlxyXG4gICAgICBjbGFzcz1cImZvbGRlci1ub2RlXCJcclxuICAgICAgW2NsYXNzLmRyYWdhYmxlLW5vZGVdPVwiZW5hYmxlRHJhZ0FuZERyb3AgJiYgbm9kZS5sZXZlbCA+IDBcIlxyXG4gICAgICBbY2xhc3Muc2VsZWN0ZWQtbm9kZV09XCJfaXNTZWxlY3RlZChub2RlKVwiXHJcbiAgICAgIFthdHRyLmRhdGEtdGVzdF09XCJkYXRhVGVzdFByZWZpeCArIG5vZGUuaWRcIlxyXG4gICAgICBbdGl0bGVdPVwibm9kZS5uYW1lXCJcclxuICAgICAgW2F0dHIubm9kZS1pZF09XCJub2RlLmlkXCJcclxuICAgID5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIG1hdC1pY29uLWJ1dHRvblxyXG4gICAgICAgIG1hdFRyZWVOb2RlVG9nZ2xlXHJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCInVG9nZ2xlICcgKyBub2RlLm5hbWVcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgY2xhc3M9XCJpY29uIGV4cGFuZC1jb2xsYXBzZS1pY29uXCJcclxuICAgICAgICAgIFtjbGFzcy5leHBhbmQtbW9yZS1pY29uXT1cIl9oYXNDaGlsZHJlbihub2RlKSAmJiAhX3RyZWVDb250cm9sLmlzRXhwYW5kZWQobm9kZSlcIlxyXG4gICAgICAgICAgW2NsYXNzLmNvbGxhcHNlLWljb25dPVwiX2hhc0NoaWxkcmVuKG5vZGUpICYmIF90cmVlQ29udHJvbC5pc0V4cGFuZGVkKG5vZGUpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaWNvbiBmb2xkZXItaWNvblwiICpuZ0lmPVwic2hvd0ZvbGRlcnNJY29uc1wiPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJub2RlLWxhYmVsXCJcclxuICAgICAgICBbY2xhc3Muc2VsZWN0ZWQtbm9kZV09XCJfaXNTZWxlY3RlZChub2RlKVwiXHJcbiAgICAgICAgW2NsYXNzLnNlbGVjdGVkLWFsbC1kZXNjZW5kYW50cy1ub2Rlc109XCJfZGVzY2VuZGFudHNBbGxTZWxlY3RlZChub2RlKSAmJiBfaXNTZWxlY3RlZChub2RlKSAmJiBlbmFibGVQYXJlbnRIaWdobGlnaHRpbmdcIlxyXG4gICAgICAgIFtjbGFzcy5zZWxlY3RlZC1wYXJ0aWFsbHktZGVzY2VuZGFudHMtbm9kZXNdPVwiX2Rlc2NlbmRhbnRzUGFydGlhbGx5U2VsZWN0ZWQobm9kZSkgJiYgZW5hYmxlUGFyZW50SGlnaGxpZ2h0aW5nXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjdXN0b20tZHJhZy1wbGFjZWhvbGRlclwiICpjZGtEcmFnUGxhY2Vob2xkZXI+PC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGUtbGFiZWxcIj5cclxuICAgICAgICAgIHt7bm9kZS5uYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9zcGFuPlxyXG4gICAgICA8bGliLWJpbXBsdXMtY29udGV4dC1tZW51XHJcbiAgICAgICAgW2l0ZW1zXT1cImNvbnRleHRNZW51cz8uZm9sZGVyQ29udGV4dE1lbnVpdGVtc1wiXHJcbiAgICAgICAgW2RhdGFdPVwibm9kZVwiXHJcbiAgICAgICAgKm5nSWY9XCJjb250ZXh0TWVudXM/LmZvbGRlckNvbnRleHRNZW51aXRlbXM/Lmxlbmd0aFwiXHJcbiAgICAgID5cclxuICAgICAgPC9saWItYmltcGx1cy1jb250ZXh0LW1lbnU+XHJcbiAgICA8L2Nkay10cmVlLW5vZGU+XHJcbiAgPC9jZGstdHJlZT5cclxuPC9kaXY+XHJcbiJdfQ==
|
package/esm2022/public-api.mjs
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
export * from './lib/ngx-bimplus-components.service';
|
|
5
5
|
export * from './lib/ngx-bimplus-components.component';
|
|
6
6
|
export * from './lib/components/bimplus-connection-designer/bimplus-connection-designer.component';
|
|
7
|
+
export * from './lib/components/bimplus-connection-designer/bimplus-connection-designer.interface';
|
|
7
8
|
export * from './lib/components/bimplus-contact/bimplus-contact.component';
|
|
8
9
|
export * from './lib/components/bimplus-floating-bar/bimplus-floating-bar.interface';
|
|
9
10
|
export * from './lib/components/project-models/project-models.interface';
|
|
@@ -31,4 +32,4 @@ export * from './lib/components/bimplus-object-navigator/bimplus-object-navigato
|
|
|
31
32
|
export * from './lib/components/bimplus-object-navigator/bimplus-object-navigator.interface';
|
|
32
33
|
export * from './lib/services/language-strings.service';
|
|
33
34
|
export * from './lib/types/types';
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1iaW1wbHVzLWNvbXBvbmVudHMvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxvRkFBb0YsQ0FBQztBQUNuRyxjQUFjLG9GQUFvRixDQUFDO0FBQ25HLGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyxzRUFBc0UsQ0FBQztBQUNyRixjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsZ0dBQWdHLENBQUM7QUFDL0csY0FBYywwR0FBMEcsQ0FBQztBQUN6SCxjQUFjLDBHQUEwRyxDQUFDO0FBQ3pILGNBQWMsd0VBQXdFLENBQUM7QUFDdkYsY0FBYyw4RUFBOEUsQ0FBQztBQUM3RixjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYywwRkFBMEYsQ0FBQztBQUN6RyxjQUFjLHNFQUFzRSxDQUFDO0FBQ3JGLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxnRUFBZ0UsQ0FBQztBQUMvRSxjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsc0VBQXNFLENBQUM7QUFDckYsY0FBYyxzRUFBc0UsQ0FBQztBQUNyRixjQUFjLDhFQUE4RSxDQUFDO0FBQzdGLGNBQWMsOEVBQThFLENBQUM7QUFDN0YsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG5neC1iaW1wbHVzLWNvbXBvbmVudHNcclxuICovXHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZ3gtYmltcGx1cy1jb21wb25lbnRzLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZ3gtYmltcGx1cy1jb21wb25lbnRzLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmltcGx1cy1jb25uZWN0aW9uLWRlc2lnbmVyL2JpbXBsdXMtY29ubmVjdGlvbi1kZXNpZ25lci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2JpbXBsdXMtY29ubmVjdGlvbi1kZXNpZ25lci9iaW1wbHVzLWNvbm5lY3Rpb24tZGVzaWduZXIuaW50ZXJmYWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iaW1wbHVzLWNvbnRhY3QvYmltcGx1cy1jb250YWN0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmltcGx1cy1mbG9hdGluZy1iYXIvYmltcGx1cy1mbG9hdGluZy1iYXIuaW50ZXJmYWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9wcm9qZWN0LW1vZGVscy9wcm9qZWN0LW1vZGVscy5pbnRlcmZhY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2JpbXBsdXMtZmxvYXRpbmctYmFyLWhpZGUtb2JqZWN0cy9iaW1wbHVzLWZsb2F0aW5nLWJhci1oaWRlLW9iamVjdHMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iaW1wbHVzLWZsb2F0aW5nLWJhci1pc29sYXRpb24tb2JqZWN0cy9iaW1wbHVzLWZsb2F0aW5nLWJhci1pc29sYXRpb24tb2JqZWN0cy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2JpbXBsdXMtZmxvYXRpbmctYmFyLXByb2plY3QtbmF2aWdhdG9yL2JpbXBsdXMtZmxvYXRpbmctYmFyLXByb2plY3QtbmF2aWdhdG9yLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmltcGx1cy1sYW5ndWFnZS1tZW51L2JpbXBsdXMtbGFuZ3VhZ2UtbWVudS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2JpbXBsdXMtbG9jYWxpemVkLXdpZGdldC9iaW1wbHVzLWxvY2FsaXplZC13aWRnZXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iaW1wbHVzLW1haW4tbWVudS9iaW1wbHVzLW1haW4tbWVudS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2JpbXBsdXMtbmF2YmFyL2JpbXBsdXMtbmF2YmFyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmltcGx1cy1uYXZiYXIvbG9nby1zdGF0ZS5lbnVtJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iaW1wbHVzLW5vdGlmeS9iaW1wbHVzLW5vdGlmeS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2JpbXBsdXMtc2lkZW5hdi9iaW1wbHVzLXNpZGVuYXYuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iaW1wbHVzLXNpZGVuYXYtZHJhd2VyLWNvbnRlbnQvYmltcGx1cy1zaWRlbmF2LWRyYXdlci1jb250ZW50LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmltcGx1cy1zdG9yYWdlLWluZm8vYmltcGx1cy1zdG9yYWdlLWluZm8uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iaW1wbHVzLXRvb2wtaHViL2JpbXBsdXMtdG9vbC1odWIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iaW1wbHVzLXRvb2wtaHViL2JpbXBsdXMtdG9vbC1odWIuaW50ZXJmYWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iaW1wbHVzLXVzZXItbWVudS9iaW1wbHVzLXVzZXItbWVudS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2JpbXBsdXMtem9vbS9iaW1wbHVzLXpvb20uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iaW1wbHVzLWZsYXQtdHJlZS9iaW1wbHVzLWZsYXQtdHJlZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2JpbXBsdXMtZmxhdC10cmVlL2JpbXBsdXMtZmxhdC10cmVlLmludGVyZmFjZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmltcGx1cy1jb250ZXh0LW1lbnUvYmltcGx1cy1jb250ZXh0LW1lbnUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iaW1wbHVzLWNvbnRleHQtbWVudS9iaW1wbHVzLWNvbnRleHQtbWVudS5pbnRlcmZhY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2JpbXBsdXMtb2JqZWN0LW5hdmlnYXRvci9iaW1wbHVzLW9iamVjdC1uYXZpZ2F0b3IuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iaW1wbHVzLW9iamVjdC1uYXZpZ2F0b3IvYmltcGx1cy1vYmplY3QtbmF2aWdhdG9yLmludGVyZmFjZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2xhbmd1YWdlLXN0cmluZ3Muc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3R5cGVzL3R5cGVzJztcclxuIl19
|