@tsi-developpement/tsi-shared-ui 1.10.3 → 1.10.5
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/esm2022/lib/end-points/endpoints.mjs +3 -1
- package/esm2022/lib/guards/index.mjs +1 -2
- package/esm2022/lib/models/workflow/workflow.mjs +3 -1
- package/esm2022/lib/services/workflow/workflow-configuration.service.mjs +4 -1
- package/esm2022/lib/tsi-base/components/tsi-form-base/tsi-form-base.component.mjs +23 -2
- package/esm2022/lib/tsi-components/create-or-edit-entity-informations/create-or-edit-entity-informations.component.mjs +1 -1
- package/esm2022/lib/tsi-components/create-or-edit-modele-import/create-or-edit-modele-import.component.mjs +3 -3
- package/esm2022/lib/tsi-components/manage-reporting/add-report-popup/add-report-popup.component.mjs +1 -1
- package/esm2022/lib/tsi-components/output-components/tsi-view-grid/tsi-view-grid.component.mjs +1 -1
- package/esm2022/lib/tsi-components/reporting/reporting.component.mjs +12 -3
- package/esm2022/lib/tsi-components/tsi-action-erp-create-or-edit/tsi-action-erp-create-or-edit.component.mjs +1 -1
- package/esm2022/lib/tsi-components/tsi-change-password/tsi-change-password.component.mjs +1 -1
- package/esm2022/lib/tsi-components/tsi-dynamic-form/create-or-edit-dynamic-form/create-or-edit-dynamic-form.component.mjs +1 -1
- package/esm2022/lib/tsi-components/tsi-form/tsi-form.component.mjs +9 -3
- package/esm2022/lib/tsi-components/tsi-generic-crud/tsi-generic-crud.component.mjs +1 -1
- package/esm2022/lib/tsi-components/tsi-notes-createoredit/tsi-notes.component.mjs +1 -1
- package/esm2022/lib/tsi-components/tsi-upload-fiche/tsi-upload-fiche.component.mjs +1 -1
- package/fesm2022/tsi-developpement-tsi-shared-ui.mjs +65 -55
- package/fesm2022/tsi-developpement-tsi-shared-ui.mjs.map +1 -1
- package/lib/consts/app-providers.d.ts +1 -1
- package/lib/end-points/endpoints.d.ts +2 -0
- package/lib/guards/index.d.ts +0 -1
- package/lib/models/workflow/workflow.d.ts +4 -0
- package/lib/providers/shared-ui-tsi.provider.d.ts +1 -1
- package/lib/services/workflow/workflow-configuration.service.d.ts +2 -1
- package/lib/tsi-base/components/tsi-form-base/tsi-form-base.component.d.ts +2 -0
- package/lib/tsi-components/manage-reporting/add-report-popup/add-report-popup.component.d.ts +1 -0
- package/lib/tsi-components/reporting/reporting.component.d.ts +4 -1
- package/lib/tsi-components/tsi-action-erp-create-or-edit/tsi-action-erp-create-or-edit.component.d.ts +1 -0
- package/lib/tsi-components/tsi-form/tsi-form.component.d.ts +3 -1
- package/lib/tsi-components/tsi-upload-fiche/tsi-upload-fiche.component.d.ts +1 -0
- package/package.json +1 -1
- package/esm2022/lib/guards/admin.guard.mjs +0 -37
- package/lib/guards/admin.guard.d.ts +0 -14
|
@@ -292,7 +292,7 @@ export class CreateOrEditEntityInformationsComponent extends TsiFormComponentBas
|
|
|
292
292
|
return comparison[field] || '';
|
|
293
293
|
}
|
|
294
294
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CreateOrEditEntityInformationsComponent, deps: [{ token: i1.EntityConfigurationService }, { token: i1.ErrorResponseManagerService }, { token: i2.DynamicDialogRef }, { token: i2.DynamicDialogConfig }, { token: i1.TsiNotificationService }, { token: i1.TsiConfirmationService }, { token: i1.ApiExplorerService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
295
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: CreateOrEditEntityInformationsComponent, selector: "app-create-or-edit-entity-informations", providers: [...appProviders], usesInheritance: true, ngImport: i0, template: "<tsi-form class=\"form-horizontal\" autocomplete=\"off\" (onSubmit)=\"save()\" [isLoading]=\"isloading\">\r\n <Tsi-Modal-Header [inputTitle]=\"header | modalLabel : mode : 'administration_entityRelations_title' | localize\"\r\n (onCloseClick)=\"hide()\">\r\n </Tsi-Modal-Header>\r\n\r\n <div *ngIf=\"uid\" class=\"flex align-items-center gap-2 mb-2\">\r\n <span class=\"font-semibold\">{{'administration_gestionEntityInformation_uid' | localize}} :</span>\r\n <span>{{ uid }}</span>\r\n </div>\r\n\r\n <p-tabView>\r\n <p-tabPanel [header]=\"'administration_tab_entityInformation' | localize\">\r\n <fieldset [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n <div class=\"modal-body\">\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\" [labelValue]=\"'administration_gestionEntityInformation_className'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'ClassName'\"\r\n [(inputField)]=\"entityWithRelations.entity.className\"\r\n (inputFieldChange)=\"getColonnesByClassNameAsKeyValuePair($event)\"\r\n [disabled]=\"isDeleteMode() || isConsultMode() || isEditMode()\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\" [labelValue]=\"'administration_gestionEntityInformation_formName'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-8\" [datasource]=\"componentsOptions\"\r\n [(bind)]=\"entityWithRelations.entity.formName\" id-field=\"key\" label-field=\"value\" [showClear]=\"true\"\r\n [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n </Tsi-Search-Combo>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_listComponent'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-8\" [datasource]=\"componentsOptions\"\r\n [(bind)]=\"entityWithRelations.entity.listComponent\" id-field=\"key\" label-field=\"value\"\r\n [showClear]=\"true\" [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n </Tsi-Search-Combo>\r\n\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\" [labelValue]=\"'administration_gestionEntityInformation_logged'\"></Tsi-Label>\r\n <Tsi-CheckBox class=\"col-8\" [inputName]=\"'Logged'\" [(inputField)]=\"entityWithRelations.entity.logged\">\r\n </Tsi-CheckBox>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\" [labelValue]=\"'administration_gestionEntityInformation_listRoute'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'ListRoute'\"\r\n [(inputField)]=\"entityWithRelations.entity.listRoute\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\" [labelValue]=\"'administration_gestionEntityInformation_formRoute'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'FormRoute'\"\r\n [(inputField)]=\"entityWithRelations.entity.formRoute\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_discriminatorPropertyName'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'DiscriminatorPropertyName'\"\r\n [(inputField)]=\"entityWithRelations.entity.discriminatorPropertyName\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_discriminatorClassName'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'DiscriminatorClassName'\"\r\n [(inputField)]=\"entityWithRelations.entity.discriminatorClassName\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_keyColumns'\"></Tsi-Label>\r\n <div class=\"col-8\">\r\n <p-multiSelect [options]=\"keyColumnOptions\" [(ngModel)]=\"entityWithRelations.entity.keyColumns\"\r\n optionValue=\"key\" optionLabel=\"value\" display=\"chip\" defaultLabel=\"Select columns\" [filter]=\"true\">\r\n </p-multiSelect>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_isWorkflow'\"></Tsi-Label>\r\n <Tsi-CheckBox class=\"col-8\" [inputName]=\"'IsWorkflow'\"\r\n [(inputField)]=\"entityWithRelations.entity.isWorkflow\">\r\n </Tsi-CheckBox>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_statusColumnName'\"></Tsi-Label>\r\n\r\n <Tsi-Search-Combo class=\"col-6\" [datasource]=\"keyColumnOptions\"\r\n [(bind)]=\"entityWithRelations.entity.statusColumnName\" id-field=\"key\" label-field=\"value\"\r\n [showClear]=\"true\" [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n\r\n </div>\r\n\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_statusEnumName'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'StatusEnumName'\"\r\n [(inputField)]=\"entityWithRelations.entity.statusEnumName\">\r\n </Tsi-Text-Box>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_defaultStatus'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'DefaultStatus'\"\r\n [(inputField)]=\"entityWithRelations.entity.defaultStatus\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_advancedSearchComponent'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-8\" [datasource]=\"componentsOptions\"\r\n [(bind)]=\"entityWithRelations.entity.advancedSearchComponent\" id-field=\"key\" label-field=\"value\"\r\n [showClear]=\"true\" [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_cardHeaderPhotoColumn'\"></Tsi-Label>\r\n\r\n <Tsi-Search-Combo class=\"col-6\" [datasource]=\"keyColumnOptions\"\r\n [(bind)]=\"entityWithRelations.entity.cardHeaderPhotoColumn\" id-field=\"key\" label-field=\"value\"\r\n [showClear]=\"true\" [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_cardTitleColumn'\"></Tsi-Label>\r\n\r\n <Tsi-Search-Combo class=\"col-6\" [datasource]=\"keyColumnOptions\"\r\n [(bind)]=\"entityWithRelations.entity.cardTitleColumn\" id-field=\"key\" label-field=\"value\"\r\n [showClear]=\"true\" [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_cardSubHeaderColumn'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-6\" [datasource]=\"keyColumnOptions\"\r\n [(bind)]=\"entityWithRelations.entity.cardSubHeaderColumn\" id-field=\"key\" label-field=\"value\"\r\n [showClear]=\"true\" [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_cardDescriptionColumn'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-6\" [datasource]=\"keyColumnOptions\"\r\n [(bind)]=\"entityWithRelations.entity.cardDescriptionColumn\" id-field=\"key\" label-field=\"value\"\r\n [showClear]=\"true\" [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_calendarStartDate'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'CalendarStartDate'\"\r\n [(inputField)]=\"entityWithRelations.entity.calendarStartDateColumn\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_calendarEndDate'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'CalenderEndDate'\"\r\n [(inputField)]=\"entityWithRelations.entity.calendarEndDateColumn\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\" [labelValue]=\"'administration_gestionEntityInformation_frequent'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'Frequent'\"\r\n [(inputField)]=\"entityWithRelations.entity.frequent\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </fieldset>\r\n </p-tabPanel>\r\n <p-tabPanel [header]=\"'administration_tab_relations' | localize\">\r\n <div class=\"grid\">\r\n <Tsi-Generic-Editable-Grid [columns]=\"entitiesRelationsColumns\" [gridData]=\"entityWithRelations.relations\"\r\n [parent]=\"this\" (addedRowEventEmitter)=\"onAddRelation()\" [showAddButton]=\"isEditMode()\">\r\n </Tsi-Generic-Editable-Grid>\r\n </div>\r\n </p-tabPanel>\r\n <p-tabPanel [header]=\"'administration_tab_permissions' | localize\">\r\n <div class=\"grid\">\r\n <tsi-view-grid [header]=\"entityWithRelations.entity.className ?? ''\" class=\"col-12 mb-3\"\r\n [columns]=\"permissionsGridColumns\" [getDataFromApi]=\"false\" [gridData]=\"endpointInfos\">\r\n </tsi-view-grid>\r\n </div>\r\n </p-tabPanel>\r\n <p-tabPanel [header]=\"'administration_tab_properties' | localize\">\r\n <div class=\"flex align-items-center gap-2 mb-3\">\r\n <span class=\"p-input-icon-left\">\r\n <i class=\"pi pi-search\"></i>\r\n <input pInputText type=\"text\" [(ngModel)]=\"propertiesSearchText\" (ngModelChange)=\"onPropertiesSearch()\"\r\n [placeholder]=\"'administration_properties_searchPlaceholder' | localize\" class=\"p-inputtext-sm\" />\r\n </span>\r\n </div>\r\n\r\n <div class=\"properties-grid-section mb-3\">\r\n <h4 class=\"properties-grid-title\">{{ 'administration_properties_modelColumns_title' | localize }}</h4>\r\n <p-table [value]=\"pagedModelColumns\" styleClass=\"p-datatable-sm p-datatable-gridlines\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th *ngFor=\"let col of propertiesGridColumns\">{{ (col.header ?? '') | localize }}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-row>\r\n <tr>\r\n <td *ngFor=\"let col of propertiesGridColumns\" [ngClass]=\"getComparisonClass('model', row, col.field)\">\r\n <span *ngIf=\"col.type !== 'checkBox'\">{{ row[col.field] }}</span>\r\n <p-checkbox *ngIf=\"col.type === 'checkBox'\" [ngModel]=\"row[col.field]\" [disabled]=\"true\"\r\n [binary]=\"true\"></p-checkbox>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr>\r\n <td [attr.colspan]=\"propertiesGridColumns.length\" class=\"text-center\">\r\n {{'administration_properties_emptyMessage' | localize}}</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n\r\n <div class=\"properties-grid-section mb-3\">\r\n <h4 class=\"properties-grid-title\">{{ 'administration_properties_projectDbColumns_title' | localize }}</h4>\r\n <p-table [value]=\"pagedDbColumns\" styleClass=\"p-datatable-sm p-datatable-gridlines\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th *ngFor=\"let col of propertiesGridColumns\">{{ (col.header ?? '') | localize }}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-row>\r\n <tr>\r\n <td *ngFor=\"let col of propertiesGridColumns\" [ngClass]=\"getComparisonClass('db', row, col.field)\">\r\n <span *ngIf=\"col.type !== 'checkBox'\">{{ row[col.field] }}</span>\r\n <Tsi-CheckBox *ngIf=\"col.type === 'checkBox'\" [ngModel]=\"row[col.field]\"\r\n [disabled]=\"true\"></Tsi-CheckBox>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr>\r\n <td [attr.colspan]=\"propertiesGridColumns.length\" class=\"text-center\">\r\n {{'administration_properties_emptyMessage' | localize}}</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n\r\n <div class=\"properties-grid-section mb-3\">\r\n <h4 class=\"properties-grid-title\">{{ 'administration_properties_sqlColumns_title' | localize }}</h4>\r\n <p-table [value]=\"pagedSqlColumns\" styleClass=\"p-datatable-sm p-datatable-gridlines\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th *ngFor=\"let col of propertiesGridColumns\">{{ (col.header ?? '') | localize }}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-row>\r\n <tr>\r\n <td *ngFor=\"let col of propertiesGridColumns\" [ngClass]=\"getComparisonClass('sql', row, col.field)\">\r\n <span *ngIf=\"col.type !== 'checkBox'\">{{ row[col.field] }}</span>\r\n <p-checkbox *ngIf=\"col.type === 'checkBox'\" [ngModel]=\"row[col.field]\" [disabled]=\"true\"\r\n [binary]=\"true\"></p-checkbox>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr>\r\n <td [attr.colspan]=\"propertiesGridColumns.length\" class=\"text-center\">\r\n {{'administration_properties_emptyMessage' | localize}}</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n\r\n <p-paginator [rows]=\"propertiesPageSize\" [totalRecords]=\"propertiesTotalRecords\" [first]=\"propertiesFirst\"\r\n (onPageChange)=\"onPropertiesPageChange($event)\" [rowsPerPageOptions]=\"[10, 25, 50]\">\r\n </p-paginator>\r\n\r\n <div class=\"comparison-legend mt-3\">\r\n <span class=\"legend-item comparison-missing-legend\">{{ 'administration_properties_comparison_missing' | localize\r\n }}</span>\r\n <span class=\"legend-item comparison-type-mismatch-legend\">{{ 'administration_properties_comparison_type' |\r\n localize }}</span>\r\n <span class=\"legend-item comparison-length-mismatch-legend\">{{ 'administration_properties_comparison_length' |\r\n localize }}</span>\r\n </div>\r\n </p-tabPanel>\r\n </p-tabView>\r\n\r\n <Tsi-Modal-Footer [isConsult]=\"isConsultMode()\" [cancelDisabled]=\"saving\" [saveDisabled]=\"isSubmitDisabled()\"\r\n (onCancelClick)=\"hide()\" [showSaveAndCloseButton]=\"false\">\r\n </Tsi-Modal-Footer>\r\n</tsi-form>", styles: [":host ::ng-deep .comparison-missing{background-color:#ef9a9a!important}:host ::ng-deep .comparison-type-mismatch{background-color:#ffcdd2!important}:host ::ng-deep .comparison-length-mismatch{background-color:#fff9c4!important}.properties-grid-section{border:1px solid #dee2e6;border-radius:6px;overflow:hidden}.properties-grid-title{margin:0;padding:.75rem 1rem;background-color:#f8f9fa;border-bottom:1px solid #dee2e6;font-size:.95rem;font-weight:600}.comparison-legend{display:flex;gap:1rem;flex-wrap:wrap}.comparison-legend .legend-item{padding:.25rem .75rem;border-radius:4px;font-size:.8rem}.comparison-legend .comparison-missing-legend{background-color:#ef9a9a}.comparison-legend .comparison-type-mismatch-legend{background-color:#ffcdd2}.comparison-legend .comparison-length-mismatch-legend{background-color:#fff9c4}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i5.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i6.Checkbox, selector: "p-checkbox", inputs: ["value", "name", "disabled", "binary", "label", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "style", "styleClass", "labelStyleClass", "formControl", "checkboxIcon", "readonly", "required", "autofocus", "trueValue", "falseValue", "variant"], outputs: ["onChange", "onFocus", "onBlur"] }, { kind: "directive", type: i7.InputText, selector: "[pInputText]", inputs: ["variant"] }, { kind: "component", type: i8.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "component", type: i9.TabView, selector: "p-tabView", inputs: ["style", "styleClass", "controlClose", "scrollable", "activeIndex", "selectOnFocus", "nextButtonAriaLabel", "prevButtonAriaLabel", "autoHideButtons", "tabindex"], outputs: ["onChange", "onClose", "activeIndexChange"] }, { kind: "component", type: i9.TabPanel, selector: "p-tabPanel", inputs: ["closable", "headerStyle", "headerStyleClass", "cache", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "selected", "disabled", "header", "leftIcon", "rightIcon"] }, { kind: "component", type: i10.MultiSelect, selector: "p-multiSelect", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }, { kind: "component", type: i11.Paginator, selector: "p-paginator", inputs: ["pageLinkSize", "style", "styleClass", "alwaysShow", "dropdownAppendTo", "templateLeft", "templateRight", "appendTo", "dropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showFirstLastIcon", "totalRecords", "rows", "rowsPerPageOptions", "showJumpToPageDropdown", "showJumpToPageInput", "jumpToPageItemTemplate", "showPageLinks", "locale", "dropdownItemTemplate", "first"], outputs: ["onPageChange"] }, { kind: "component", type: i12.EditableGridComponent, selector: "Tsi-Generic-Editable-Grid", inputs: ["selectedItems", "configuration", "key", "items", "saveEvent", "showGlobalSearch", "showAddButton", "showDeleteButton", "showEditButton", "showRowSummary", "scrollHeight", "sizingMode", "rowPerPage", "pageSize", "entityPrimaryKeyName", "columns", "gridData", "isTableLoading", "parent", "showSaveButton", "showActionColumn", "enableRowDisabling", "rowSummaryConfig", "showHaveSumary", "showRowSumary", "selectKeyOnly", "selectionMode", "showConsultButton", "editableGridBusinessClass", "orderColumn", "deleteLineButtonDisabled", "showDuplicateButton", "id"], outputs: ["refreshEventEmitter", "saveDataEventEmitter", "rowChangedEventEmitter", "selectedRowEventEmitter", "addedRowEventEmitter", "focusOutEventEmitter", "cellChanged", "rowDeletedEventEmitter", "selectedItemsChange", "onRowSelect", "focusOutRow", "onConsultClicked", "rowDuplicatedEventEmitter"] }, { kind: "component", type: i13.TsiSearchComboComponent, selector: "Tsi-Search-Combo", inputs: ["elementSourceUrl", "listSourceUrl", "listSourceParams", "id-field", "label-field", "multiple", "sort", "showClear", "reloadDataSource", "isFiltered", "selectedLabel", "maxWidth", "businessClass", "searchDebounceTime", "comboType", "statusMetadata", "currentRowItem", "datasource", "bind", "maxSelectedLabels", "tooltipMaxDisplayedItems", "bindMode", "showSearchButton", "showAddButton", "showConsultButton", "showUpdateButton"], outputs: ["bindChange", "datasource-loaded", "init", "isLoaded", "selectedLabelChange", "onClick", "onSearchButtonClick", "selectionChange"] }, { kind: "component", type: i14.TsiCheckboxComponent, selector: "Tsi-CheckBox", inputs: ["class", "isBinary", "checked", "tooltipText", "tooltipPosition"], outputs: ["inputFieldChange", "checkedChange"] }, { kind: "component", type: i15.TsiTextBoxComponent, selector: "Tsi-Text-Box", inputs: ["textBoxType", "autocomplete"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i16.TsiLabelComponent, selector: "Tsi-Label", inputs: ["labelValue", "styleClass", "infoText"] }, { kind: "component", type: i17.TsiViewGridComponent, selector: "tsi-view-grid", inputs: ["columns", "gridConfiguration", "viewComponent", "crudService", "header", "modalSize", "showConsultButton", "showSearchField", "searchFields", "formEndpoint", "formName", "id", "showImportExportButton", "targetBusinessClass", "getDataFromApi", "gridData", "isSearchButtonDisabled", "selectKeyOnly", "selectionMode", "selectedItems", "key", "showGlobalSearch", "showExportButton", "showCalenderView", "showHeaderFilters", "showFilterButton", "selectAll", "checkedByField", "sortMode", "sizingMode", "searchOnInit"], outputs: ["summariesChange", "selectedItemsChange", "buttonColumnClicked", "searchFieldsValueChanged", "getAllPagedResultChanged"] }, { kind: "component", type: i18.TsiModalFooterComponent, selector: "Tsi-Modal-Footer", inputs: ["cancelDisabled", "saveDisabled", "cancelLabel", "saveLabel", "isConsult", "isDuplicate", "isOnlyCreate", "additionalButtonLabel", "additionalButtonIcon", "additionalButtonDisabled", "showAdditionalButton", "showSaveAndCloseButton", "mode"], outputs: ["onCancelClick", "onSaveClick", "onAdditionalButtonClick"] }, { kind: "component", type: i19.TsiModalHeaderComponent, selector: "Tsi-Modal-Header", inputs: ["inputTitle"], outputs: ["onCloseClick"] }, { kind: "component", type: i20.TsiFormComponent, selector: "tsi-form", inputs: ["class", "autocomplete", "optionalEndpoints", "disabled", "isLoading", "modalSize", "formEndpoint", "formName", "isReportingToolbarDisabled", "isCreateOnly", "statusInputDisabled"], outputs: ["onSave", "onSubmit", "onSubmitFormWorkflowConfiguration", "formRefChange", "onStatusChange"] }, { kind: "pipe", type: i21.LocalizePipe, name: "localize" }, { kind: "pipe", type: i22.ModalLabelPipe, name: "modalLabel" }] }); }
|
|
295
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: CreateOrEditEntityInformationsComponent, selector: "app-create-or-edit-entity-informations", providers: [...appProviders], usesInheritance: true, ngImport: i0, template: "<tsi-form class=\"form-horizontal\" autocomplete=\"off\" (onSubmit)=\"save()\" [isLoading]=\"isloading\">\r\n <Tsi-Modal-Header [inputTitle]=\"header | modalLabel : mode : 'administration_entityRelations_title' | localize\"\r\n (onCloseClick)=\"hide()\">\r\n </Tsi-Modal-Header>\r\n\r\n <div *ngIf=\"uid\" class=\"flex align-items-center gap-2 mb-2\">\r\n <span class=\"font-semibold\">{{'administration_gestionEntityInformation_uid' | localize}} :</span>\r\n <span>{{ uid }}</span>\r\n </div>\r\n\r\n <p-tabView>\r\n <p-tabPanel [header]=\"'administration_tab_entityInformation' | localize\">\r\n <fieldset [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n <div class=\"modal-body\">\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\" [labelValue]=\"'administration_gestionEntityInformation_className'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'ClassName'\"\r\n [(inputField)]=\"entityWithRelations.entity.className\"\r\n (inputFieldChange)=\"getColonnesByClassNameAsKeyValuePair($event)\"\r\n [disabled]=\"isDeleteMode() || isConsultMode() || isEditMode()\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\" [labelValue]=\"'administration_gestionEntityInformation_formName'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-8\" [datasource]=\"componentsOptions\"\r\n [(bind)]=\"entityWithRelations.entity.formName\" id-field=\"key\" label-field=\"value\" [showClear]=\"true\"\r\n [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n </Tsi-Search-Combo>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_listComponent'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-8\" [datasource]=\"componentsOptions\"\r\n [(bind)]=\"entityWithRelations.entity.listComponent\" id-field=\"key\" label-field=\"value\"\r\n [showClear]=\"true\" [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n </Tsi-Search-Combo>\r\n\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\" [labelValue]=\"'administration_gestionEntityInformation_logged'\"></Tsi-Label>\r\n <Tsi-CheckBox class=\"col-8\" [inputName]=\"'Logged'\" [(inputField)]=\"entityWithRelations.entity.logged\">\r\n </Tsi-CheckBox>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\" [labelValue]=\"'administration_gestionEntityInformation_listRoute'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'ListRoute'\"\r\n [(inputField)]=\"entityWithRelations.entity.listRoute\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\" [labelValue]=\"'administration_gestionEntityInformation_formRoute'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'FormRoute'\"\r\n [(inputField)]=\"entityWithRelations.entity.formRoute\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_discriminatorPropertyName'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'DiscriminatorPropertyName'\"\r\n [(inputField)]=\"entityWithRelations.entity.discriminatorPropertyName\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_discriminatorClassName'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'DiscriminatorClassName'\"\r\n [(inputField)]=\"entityWithRelations.entity.discriminatorClassName\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_keyColumns'\"></Tsi-Label>\r\n <div class=\"col-8\">\r\n <p-multiSelect [options]=\"keyColumnOptions\" [(ngModel)]=\"entityWithRelations.entity.keyColumns\"\r\n optionValue=\"key\" optionLabel=\"value\" display=\"chip\" defaultLabel=\"Select columns\" [filter]=\"true\">\r\n </p-multiSelect>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_isWorkflow'\"></Tsi-Label>\r\n <Tsi-CheckBox class=\"col-8\" [inputName]=\"'IsWorkflow'\"\r\n [(inputField)]=\"entityWithRelations.entity.isWorkflow\">\r\n </Tsi-CheckBox>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_statusColumnName'\"></Tsi-Label>\r\n\r\n <Tsi-Search-Combo class=\"col-6\" [datasource]=\"keyColumnOptions\"\r\n [(bind)]=\"entityWithRelations.entity.statusColumnName\" id-field=\"key\" label-field=\"value\"\r\n [showClear]=\"true\" [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n\r\n </div>\r\n\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_statusEnumName'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'StatusEnumName'\"\r\n [(inputField)]=\"entityWithRelations.entity.statusEnumName\">\r\n </Tsi-Text-Box>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_defaultStatus'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'DefaultStatus'\"\r\n [(inputField)]=\"entityWithRelations.entity.defaultStatus\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_advancedSearchComponent'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-8\" [datasource]=\"componentsOptions\"\r\n [(bind)]=\"entityWithRelations.entity.advancedSearchComponent\" id-field=\"key\" label-field=\"value\"\r\n [showClear]=\"true\" [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_cardHeaderPhotoColumn'\"></Tsi-Label>\r\n\r\n <Tsi-Search-Combo class=\"col-6\" [datasource]=\"keyColumnOptions\"\r\n [(bind)]=\"entityWithRelations.entity.cardHeaderPhotoColumn\" id-field=\"key\" label-field=\"value\"\r\n [showClear]=\"true\" [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_cardTitleColumn'\"></Tsi-Label>\r\n\r\n <Tsi-Search-Combo class=\"col-6\" [datasource]=\"keyColumnOptions\"\r\n [(bind)]=\"entityWithRelations.entity.cardTitleColumn\" id-field=\"key\" label-field=\"value\"\r\n [showClear]=\"true\" [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_cardSubHeaderColumn'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-6\" [datasource]=\"keyColumnOptions\"\r\n [(bind)]=\"entityWithRelations.entity.cardSubHeaderColumn\" id-field=\"key\" label-field=\"value\"\r\n [showClear]=\"true\" [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_cardDescriptionColumn'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-6\" [datasource]=\"keyColumnOptions\"\r\n [(bind)]=\"entityWithRelations.entity.cardDescriptionColumn\" id-field=\"key\" label-field=\"value\"\r\n [showClear]=\"true\" [disabled]=\"isDeleteMode() || isConsultMode()\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_calendarStartDate'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'CalendarStartDate'\"\r\n [(inputField)]=\"entityWithRelations.entity.calendarStartDateColumn\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\"\r\n [labelValue]=\"'administration_gestionEntityInformation_calendarEndDate'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'CalenderEndDate'\"\r\n [(inputField)]=\"entityWithRelations.entity.calendarEndDateColumn\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid\">\r\n <Tsi-Label class=\"col-4\" [labelValue]=\"'administration_gestionEntityInformation_frequent'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'Frequent'\"\r\n [(inputField)]=\"entityWithRelations.entity.frequent\">\r\n </Tsi-Text-Box>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </fieldset>\r\n </p-tabPanel>\r\n <p-tabPanel [header]=\"'administration_tab_relations' | localize\">\r\n <div class=\"grid\">\r\n <Tsi-Generic-Editable-Grid [columns]=\"entitiesRelationsColumns\" [gridData]=\"entityWithRelations.relations\"\r\n [parent]=\"this\" (addedRowEventEmitter)=\"onAddRelation()\" [showAddButton]=\"isEditMode()\">\r\n </Tsi-Generic-Editable-Grid>\r\n </div>\r\n </p-tabPanel>\r\n <p-tabPanel [header]=\"'administration_tab_permissions' | localize\">\r\n <div class=\"grid\">\r\n <tsi-view-grid [header]=\"entityWithRelations.entity.className ?? ''\" class=\"col-12 mb-3\"\r\n [columns]=\"permissionsGridColumns\" [getDataFromApi]=\"false\" [gridData]=\"endpointInfos\">\r\n </tsi-view-grid>\r\n </div>\r\n </p-tabPanel>\r\n <p-tabPanel [header]=\"'administration_tab_properties' | localize\">\r\n <div class=\"flex align-items-center gap-2 mb-3\">\r\n <span class=\"p-input-icon-left\">\r\n <i class=\"pi pi-search\"></i>\r\n <input pInputText type=\"text\" [(ngModel)]=\"propertiesSearchText\" (ngModelChange)=\"onPropertiesSearch()\"\r\n [placeholder]=\"'administration_properties_searchPlaceholder' | localize\" class=\"p-inputtext-sm\" />\r\n </span>\r\n </div>\r\n\r\n <div class=\"properties-grid-section mb-3\">\r\n <h4 class=\"properties-grid-title\">{{ 'administration_properties_modelColumns_title' | localize }}</h4>\r\n <p-table [value]=\"pagedModelColumns\" styleClass=\"p-datatable-sm p-datatable-gridlines\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th *ngFor=\"let col of propertiesGridColumns\">{{ (col.header ?? '') | localize }}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-row>\r\n <tr>\r\n <td *ngFor=\"let col of propertiesGridColumns\" [ngClass]=\"getComparisonClass('model', row, col.field)\">\r\n <span *ngIf=\"col.type !== 'checkBox'\">{{ row[col.field] }}</span>\r\n <p-checkbox *ngIf=\"col.type === 'checkBox'\" [ngModel]=\"row[col.field]\" [disabled]=\"true\"\r\n [binary]=\"true\"></p-checkbox>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr>\r\n <td [attr.colspan]=\"propertiesGridColumns.length\" class=\"text-center\">\r\n {{'administration_properties_emptyMessage' | localize}}</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n\r\n <div class=\"properties-grid-section mb-3\">\r\n <h4 class=\"properties-grid-title\">{{ 'administration_properties_projectDbColumns_title' | localize }}</h4>\r\n <p-table [value]=\"pagedDbColumns\" styleClass=\"p-datatable-sm p-datatable-gridlines\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th *ngFor=\"let col of propertiesGridColumns\">{{ (col.header ?? '') | localize }}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-row>\r\n <tr>\r\n <td *ngFor=\"let col of propertiesGridColumns\" [ngClass]=\"getComparisonClass('db', row, col.field)\">\r\n <span *ngIf=\"col.type !== 'checkBox'\">{{ row[col.field] }}</span>\r\n <Tsi-CheckBox *ngIf=\"col.type === 'checkBox'\" [ngModel]=\"row[col.field]\"\r\n [disabled]=\"true\"></Tsi-CheckBox>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr>\r\n <td [attr.colspan]=\"propertiesGridColumns.length\" class=\"text-center\">\r\n {{'administration_properties_emptyMessage' | localize}}</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n\r\n <div class=\"properties-grid-section mb-3\">\r\n <h4 class=\"properties-grid-title\">{{ 'administration_properties_sqlColumns_title' | localize }}</h4>\r\n <p-table [value]=\"pagedSqlColumns\" styleClass=\"p-datatable-sm p-datatable-gridlines\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th *ngFor=\"let col of propertiesGridColumns\">{{ (col.header ?? '') | localize }}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-row>\r\n <tr>\r\n <td *ngFor=\"let col of propertiesGridColumns\" [ngClass]=\"getComparisonClass('sql', row, col.field)\">\r\n <span *ngIf=\"col.type !== 'checkBox'\">{{ row[col.field] }}</span>\r\n <p-checkbox *ngIf=\"col.type === 'checkBox'\" [ngModel]=\"row[col.field]\" [disabled]=\"true\"\r\n [binary]=\"true\"></p-checkbox>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr>\r\n <td [attr.colspan]=\"propertiesGridColumns.length\" class=\"text-center\">\r\n {{'administration_properties_emptyMessage' | localize}}</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n\r\n <p-paginator [rows]=\"propertiesPageSize\" [totalRecords]=\"propertiesTotalRecords\" [first]=\"propertiesFirst\"\r\n (onPageChange)=\"onPropertiesPageChange($event)\" [rowsPerPageOptions]=\"[10, 25, 50]\">\r\n </p-paginator>\r\n\r\n <div class=\"comparison-legend mt-3\">\r\n <span class=\"legend-item comparison-missing-legend\">{{ 'administration_properties_comparison_missing' | localize\r\n }}</span>\r\n <span class=\"legend-item comparison-type-mismatch-legend\">{{ 'administration_properties_comparison_type' |\r\n localize }}</span>\r\n <span class=\"legend-item comparison-length-mismatch-legend\">{{ 'administration_properties_comparison_length' |\r\n localize }}</span>\r\n </div>\r\n </p-tabPanel>\r\n </p-tabView>\r\n\r\n <Tsi-Modal-Footer [isConsult]=\"isConsultMode()\" [cancelDisabled]=\"saving\" [saveDisabled]=\"isSubmitDisabled()\"\r\n (onCancelClick)=\"hide()\" [showSaveAndCloseButton]=\"false\">\r\n </Tsi-Modal-Footer>\r\n</tsi-form>", styles: [":host ::ng-deep .comparison-missing{background-color:#ef9a9a!important}:host ::ng-deep .comparison-type-mismatch{background-color:#ffcdd2!important}:host ::ng-deep .comparison-length-mismatch{background-color:#fff9c4!important}.properties-grid-section{border:1px solid #dee2e6;border-radius:6px;overflow:hidden}.properties-grid-title{margin:0;padding:.75rem 1rem;background-color:#f8f9fa;border-bottom:1px solid #dee2e6;font-size:.95rem;font-weight:600}.comparison-legend{display:flex;gap:1rem;flex-wrap:wrap}.comparison-legend .legend-item{padding:.25rem .75rem;border-radius:4px;font-size:.8rem}.comparison-legend .comparison-missing-legend{background-color:#ef9a9a}.comparison-legend .comparison-type-mismatch-legend{background-color:#ffcdd2}.comparison-legend .comparison-length-mismatch-legend{background-color:#fff9c4}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i5.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i6.Checkbox, selector: "p-checkbox", inputs: ["value", "name", "disabled", "binary", "label", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "style", "styleClass", "labelStyleClass", "formControl", "checkboxIcon", "readonly", "required", "autofocus", "trueValue", "falseValue", "variant"], outputs: ["onChange", "onFocus", "onBlur"] }, { kind: "directive", type: i7.InputText, selector: "[pInputText]", inputs: ["variant"] }, { kind: "component", type: i8.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "component", type: i9.TabView, selector: "p-tabView", inputs: ["style", "styleClass", "controlClose", "scrollable", "activeIndex", "selectOnFocus", "nextButtonAriaLabel", "prevButtonAriaLabel", "autoHideButtons", "tabindex"], outputs: ["onChange", "onClose", "activeIndexChange"] }, { kind: "component", type: i9.TabPanel, selector: "p-tabPanel", inputs: ["closable", "headerStyle", "headerStyleClass", "cache", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "selected", "disabled", "header", "leftIcon", "rightIcon"] }, { kind: "component", type: i10.MultiSelect, selector: "p-multiSelect", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }, { kind: "component", type: i11.Paginator, selector: "p-paginator", inputs: ["pageLinkSize", "style", "styleClass", "alwaysShow", "dropdownAppendTo", "templateLeft", "templateRight", "appendTo", "dropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showFirstLastIcon", "totalRecords", "rows", "rowsPerPageOptions", "showJumpToPageDropdown", "showJumpToPageInput", "jumpToPageItemTemplate", "showPageLinks", "locale", "dropdownItemTemplate", "first"], outputs: ["onPageChange"] }, { kind: "component", type: i12.EditableGridComponent, selector: "Tsi-Generic-Editable-Grid", inputs: ["selectedItems", "configuration", "key", "items", "saveEvent", "showGlobalSearch", "showAddButton", "showDeleteButton", "showEditButton", "showRowSummary", "scrollHeight", "sizingMode", "rowPerPage", "pageSize", "entityPrimaryKeyName", "columns", "gridData", "isTableLoading", "parent", "showSaveButton", "showActionColumn", "enableRowDisabling", "rowSummaryConfig", "showHaveSumary", "showRowSumary", "selectKeyOnly", "selectionMode", "showConsultButton", "editableGridBusinessClass", "orderColumn", "deleteLineButtonDisabled", "showDuplicateButton", "id"], outputs: ["refreshEventEmitter", "saveDataEventEmitter", "rowChangedEventEmitter", "selectedRowEventEmitter", "addedRowEventEmitter", "focusOutEventEmitter", "cellChanged", "rowDeletedEventEmitter", "selectedItemsChange", "onRowSelect", "focusOutRow", "onConsultClicked", "rowDuplicatedEventEmitter"] }, { kind: "component", type: i13.TsiSearchComboComponent, selector: "Tsi-Search-Combo", inputs: ["elementSourceUrl", "listSourceUrl", "listSourceParams", "id-field", "label-field", "multiple", "sort", "showClear", "reloadDataSource", "isFiltered", "selectedLabel", "maxWidth", "businessClass", "searchDebounceTime", "comboType", "statusMetadata", "currentRowItem", "datasource", "bind", "maxSelectedLabels", "tooltipMaxDisplayedItems", "bindMode", "showSearchButton", "showAddButton", "showConsultButton", "showUpdateButton"], outputs: ["bindChange", "datasource-loaded", "init", "isLoaded", "selectedLabelChange", "onClick", "onSearchButtonClick", "selectionChange"] }, { kind: "component", type: i14.TsiCheckboxComponent, selector: "Tsi-CheckBox", inputs: ["class", "isBinary", "checked", "tooltipText", "tooltipPosition"], outputs: ["inputFieldChange", "checkedChange"] }, { kind: "component", type: i15.TsiTextBoxComponent, selector: "Tsi-Text-Box", inputs: ["textBoxType", "autocomplete"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i16.TsiLabelComponent, selector: "Tsi-Label", inputs: ["labelValue", "styleClass", "infoText"] }, { kind: "component", type: i17.TsiViewGridComponent, selector: "tsi-view-grid", inputs: ["columns", "gridConfiguration", "viewComponent", "crudService", "header", "modalSize", "showConsultButton", "showSearchField", "searchFields", "formEndpoint", "formName", "id", "showImportExportButton", "targetBusinessClass", "getDataFromApi", "gridData", "isSearchButtonDisabled", "selectKeyOnly", "selectionMode", "selectedItems", "key", "showGlobalSearch", "showExportButton", "showCalenderView", "showHeaderFilters", "showFilterButton", "selectAll", "checkedByField", "sortMode", "sizingMode", "searchOnInit"], outputs: ["summariesChange", "selectedItemsChange", "buttonColumnClicked", "searchFieldsValueChanged", "getAllPagedResultChanged"] }, { kind: "component", type: i18.TsiModalFooterComponent, selector: "Tsi-Modal-Footer", inputs: ["cancelDisabled", "saveDisabled", "cancelLabel", "saveLabel", "isConsult", "isDuplicate", "isOnlyCreate", "additionalButtonLabel", "additionalButtonIcon", "additionalButtonDisabled", "showAdditionalButton", "showSaveAndCloseButton", "mode"], outputs: ["onCancelClick", "onSaveClick", "onAdditionalButtonClick"] }, { kind: "component", type: i19.TsiModalHeaderComponent, selector: "Tsi-Modal-Header", inputs: ["inputTitle"], outputs: ["onCloseClick"] }, { kind: "component", type: i20.TsiFormComponent, selector: "tsi-form", inputs: ["class", "autocomplete", "optionalEndpoints", "disabled", "isLoading", "modalSize", "showManageWorkflowButton", "formEndpoint", "formName", "isReportingToolbarDisabled", "isCreateOnly", "statusInputDisabled"], outputs: ["onSave", "openWorkflow", "onSubmit", "onSubmitFormWorkflowConfiguration", "formRefChange", "onStatusChange"] }, { kind: "pipe", type: i21.LocalizePipe, name: "localize" }, { kind: "pipe", type: i22.ModalLabelPipe, name: "modalLabel" }] }); }
|
|
296
296
|
}
|
|
297
297
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CreateOrEditEntityInformationsComponent, decorators: [{
|
|
298
298
|
type: Component,
|
|
@@ -201,10 +201,10 @@ export class CreateOrEditModeleImportComponent extends TsiFormComponentBaseCompo
|
|
|
201
201
|
}
|
|
202
202
|
}
|
|
203
203
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CreateOrEditModeleImportComponent, deps: [{ token: i1.ModeleImportService }, { token: i1.TsiNotificationService }, { token: i2.DynamicDialogConfig }, { token: i2.DynamicDialogRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
204
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: CreateOrEditModeleImportComponent, selector: "app-create-or-edit-modele-import", providers: [...appProviders], usesInheritance: true, ngImport: i0, template: "<tsi-form class=\"form-horizontal\" [isLoading]=\"isloading\" autocomplete=\"off\">\r\n <Tsi-Modal-Header [inputTitle]=\"header | modalLabel : mode : 'Mod\u00E8le import'\"\r\n (onCloseClick)=\"hide()\"></Tsi-Modal-Header>\r\n\r\n <fieldset [disabled]=\"isDeleteMode() || isConsultMode() \">\r\n\r\n <div class=\"modal-body\">\r\n <div class=\"grid\">\r\n <div class=\"col-8\">\r\n <div class=\"grid\">\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Nom Modele'\"></Tsi-Label>\r\n <Tsi-Text-Box [(inputField)]=\"modeleImport.nom\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'nomModele'\"></Tsi-Text-Box>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Nom Form'\"></Tsi-Label>\r\n <Tsi-Text-Box [(inputField)]=\"modeleImport.form\" [disabled]=\"true\" class=\"col-9\"\r\n [inputName]=\"'nomForm'\"></Tsi-Text-Box>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Nom Classe'\"></Tsi-Label>\r\n <Tsi-Text-Box [(inputField)]=\"modeleImport.classe\" [disabled]=\"true\" class=\"col-9\"\r\n [inputName]=\"'nomClasse'\"></Tsi-Text-Box>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Premiere Ligne Import'\"></Tsi-Label>\r\n <Tsi-Integer [(inputField)]=\"modeleImport.premiereLigneImport\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'premiereLigneImport'\"></Tsi-Integer>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Derniere Ligne Import'\"></Tsi-Label>\r\n <Tsi-Integer [(inputField)]=\"modeleImport.dernierLigneImport\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'dernierLigneImport'\"></Tsi-Integer>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Arrete lors de premier erreur '\"></Tsi-Label>\r\n <Tsi-CheckBox [(inputField)]=\"modeleImport.arretePremierErreur\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'arretePremierErreur'\"></Tsi-CheckBox>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Mode mise \u00E0 jour'\"></Tsi-Label>\r\n <Tsi-CheckBox [(inputField)]=\"modeleImport.modeMiseAJour\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'modeMiseAJour'\" [isBinary]=\"true\"></Tsi-CheckBox>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Ordre Ou Titre Colonne'\"></Tsi-Label>\r\n <Tsi-Search-Combo (bindChange)=\"typeImportChange($event)\" class=\"col-9\" [listSourceUrl]=\"\r\n modeleImportEndPoints.getTypeNatureDocumentEnum()\r\n \" [(bind)]=\"modeleImport.ordreOuTitreColonne\" id-field=\"key\" label-field=\"value\">\r\n </Tsi-Search-Combo>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Type de fichier'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-9\" [listSourceUrl]=\"\r\n modeleImportEndPoints.getImportFileTypeEnum()\r\n \" [(bind)]=\"modeleImport.fileType\" id-field=\"key\" label-field=\"value\">\r\n </Tsi-Search-Combo>\r\n\r\n <Tsi-Label *ngIf=\"modeleImport.fileType == fileTypeImportEnumRef.CSV\" class=\"col-3\"\r\n [labelValue]=\"'S\u00E9parateur de fichier CSV'\"></Tsi-Label>\r\n <Tsi-Search-Combo *ngIf=\"modeleImport.fileType == fileTypeImportEnumRef.CSV\" class=\"col-9\"\r\n [listSourceUrl]=\"\r\n modeleImportEndPoints.getCsvFileSeparatorEnum()\r\n \" [(bind)]=\"modeleImport.csvFileSeparator\" id-field=\"key\" label-field=\"value\">\r\n </Tsi-Search-Combo>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n <div *ngIf=\"showModeleImportDetails\">\r\n <Tsi-Generic-Editable-Grid [gridData]=\"modeleImport.modeleImportDetails\"\r\n [saveEvent]=\"eventsSubjectModeleImportDetail.asObservable()\"\r\n (rowDeletedEventEmitter)=\"onSaveModeleImportDetails($event)\" [columns]=\"modeleImportDetailColumns\"\r\n [parent]=\"this\" [showSaveButton]=\"false\"
|
|
204
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: CreateOrEditModeleImportComponent, selector: "app-create-or-edit-modele-import", providers: [...appProviders], usesInheritance: true, ngImport: i0, template: "<tsi-form class=\"form-horizontal\" [isLoading]=\"isloading\" autocomplete=\"off\">\r\n <Tsi-Modal-Header [inputTitle]=\"header | modalLabel : mode : 'Mod\u00E8le import'\"\r\n (onCloseClick)=\"hide()\"></Tsi-Modal-Header>\r\n\r\n <fieldset [disabled]=\"isDeleteMode() || isConsultMode() \">\r\n\r\n <div class=\"modal-body\">\r\n <div class=\"grid\">\r\n <div class=\"col-8\">\r\n <div class=\"grid\">\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Nom Modele'\"></Tsi-Label>\r\n <Tsi-Text-Box [(inputField)]=\"modeleImport.nom\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'nomModele'\"></Tsi-Text-Box>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Nom Form'\"></Tsi-Label>\r\n <Tsi-Text-Box [(inputField)]=\"modeleImport.form\" [disabled]=\"true\" class=\"col-9\"\r\n [inputName]=\"'nomForm'\"></Tsi-Text-Box>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Nom Classe'\"></Tsi-Label>\r\n <Tsi-Text-Box [(inputField)]=\"modeleImport.classe\" [disabled]=\"true\" class=\"col-9\"\r\n [inputName]=\"'nomClasse'\"></Tsi-Text-Box>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Premiere Ligne Import'\"></Tsi-Label>\r\n <Tsi-Integer [(inputField)]=\"modeleImport.premiereLigneImport\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'premiereLigneImport'\"></Tsi-Integer>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Derniere Ligne Import'\"></Tsi-Label>\r\n <Tsi-Integer [(inputField)]=\"modeleImport.dernierLigneImport\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'dernierLigneImport'\"></Tsi-Integer>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Arrete lors de premier erreur '\"></Tsi-Label>\r\n <Tsi-CheckBox [(inputField)]=\"modeleImport.arretePremierErreur\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'arretePremierErreur'\"></Tsi-CheckBox>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Mode mise \u00E0 jour'\"></Tsi-Label>\r\n <Tsi-CheckBox [(inputField)]=\"modeleImport.modeMiseAJour\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'modeMiseAJour'\" [isBinary]=\"true\"></Tsi-CheckBox>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Ordre Ou Titre Colonne'\"></Tsi-Label>\r\n <Tsi-Search-Combo (bindChange)=\"typeImportChange($event)\" class=\"col-9\" [listSourceUrl]=\"\r\n modeleImportEndPoints.getTypeNatureDocumentEnum()\r\n \" [(bind)]=\"modeleImport.ordreOuTitreColonne\" id-field=\"key\" label-field=\"value\">\r\n </Tsi-Search-Combo>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Type de fichier'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-9\" [listSourceUrl]=\"\r\n modeleImportEndPoints.getImportFileTypeEnum()\r\n \" [(bind)]=\"modeleImport.fileType\" id-field=\"key\" label-field=\"value\">\r\n </Tsi-Search-Combo>\r\n\r\n <Tsi-Label *ngIf=\"modeleImport.fileType == fileTypeImportEnumRef.CSV\" class=\"col-3\"\r\n [labelValue]=\"'S\u00E9parateur de fichier CSV'\"></Tsi-Label>\r\n <Tsi-Search-Combo *ngIf=\"modeleImport.fileType == fileTypeImportEnumRef.CSV\" class=\"col-9\"\r\n [listSourceUrl]=\"\r\n modeleImportEndPoints.getCsvFileSeparatorEnum()\r\n \" [(bind)]=\"modeleImport.csvFileSeparator\" id-field=\"key\" label-field=\"value\">\r\n </Tsi-Search-Combo>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n <div *ngIf=\"showModeleImportDetails\">\r\n <Tsi-Generic-Editable-Grid [gridData]=\"modeleImport.modeleImportDetails\"\r\n [saveEvent]=\"eventsSubjectModeleImportDetail.asObservable()\"\r\n (rowDeletedEventEmitter)=\"onSaveModeleImportDetails($event)\" [columns]=\"modeleImportDetailColumns\"\r\n [parent]=\"this\" [showSaveButton]=\"false\">\r\n </Tsi-Generic-Editable-Grid>\r\n </div>\r\n\r\n\r\n </fieldset>\r\n\r\n <Tsi-Modal-Footer [cancelDisabled]=\"saving\" [saveDisabled]=\"isSubmitDisabled()\" (onCancelClick)=\"hide()\"\r\n (onSaveClick)=\"save()\" [showSaveAndCloseButton]=\"mode == modeRef.delete\"></Tsi-Modal-Footer>\r\n\r\n</tsi-form>", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.EditableGridComponent, selector: "Tsi-Generic-Editable-Grid", inputs: ["selectedItems", "configuration", "key", "items", "saveEvent", "showGlobalSearch", "showAddButton", "showDeleteButton", "showEditButton", "showRowSummary", "scrollHeight", "sizingMode", "rowPerPage", "pageSize", "entityPrimaryKeyName", "columns", "gridData", "isTableLoading", "parent", "showSaveButton", "showActionColumn", "enableRowDisabling", "rowSummaryConfig", "showHaveSumary", "showRowSumary", "selectKeyOnly", "selectionMode", "showConsultButton", "editableGridBusinessClass", "orderColumn", "deleteLineButtonDisabled", "showDuplicateButton", "id"], outputs: ["refreshEventEmitter", "saveDataEventEmitter", "rowChangedEventEmitter", "selectedRowEventEmitter", "addedRowEventEmitter", "focusOutEventEmitter", "cellChanged", "rowDeletedEventEmitter", "selectedItemsChange", "onRowSelect", "focusOutRow", "onConsultClicked", "rowDuplicatedEventEmitter"] }, { kind: "component", type: i5.TsiSearchComboComponent, selector: "Tsi-Search-Combo", inputs: ["elementSourceUrl", "listSourceUrl", "listSourceParams", "id-field", "label-field", "multiple", "sort", "showClear", "reloadDataSource", "isFiltered", "selectedLabel", "maxWidth", "businessClass", "searchDebounceTime", "comboType", "statusMetadata", "currentRowItem", "datasource", "bind", "maxSelectedLabels", "tooltipMaxDisplayedItems", "bindMode", "showSearchButton", "showAddButton", "showConsultButton", "showUpdateButton"], outputs: ["bindChange", "datasource-loaded", "init", "isLoaded", "selectedLabelChange", "onClick", "onSearchButtonClick", "selectionChange"] }, { kind: "component", type: i6.TsiCheckboxComponent, selector: "Tsi-CheckBox", inputs: ["class", "isBinary", "checked", "tooltipText", "tooltipPosition"], outputs: ["inputFieldChange", "checkedChange"] }, { kind: "component", type: i7.TsiIntegerComponent, selector: "Tsi-Integer", inputs: ["class", "minValue", "maxValue", "delayChangeTime"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i8.TsiTextBoxComponent, selector: "Tsi-Text-Box", inputs: ["textBoxType", "autocomplete"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i9.TsiLabelComponent, selector: "Tsi-Label", inputs: ["labelValue", "styleClass", "infoText"] }, { kind: "component", type: i10.TsiModalFooterComponent, selector: "Tsi-Modal-Footer", inputs: ["cancelDisabled", "saveDisabled", "cancelLabel", "saveLabel", "isConsult", "isDuplicate", "isOnlyCreate", "additionalButtonLabel", "additionalButtonIcon", "additionalButtonDisabled", "showAdditionalButton", "showSaveAndCloseButton", "mode"], outputs: ["onCancelClick", "onSaveClick", "onAdditionalButtonClick"] }, { kind: "component", type: i11.TsiModalHeaderComponent, selector: "Tsi-Modal-Header", inputs: ["inputTitle"], outputs: ["onCloseClick"] }, { kind: "component", type: i12.TsiFormComponent, selector: "tsi-form", inputs: ["class", "autocomplete", "optionalEndpoints", "disabled", "isLoading", "modalSize", "showManageWorkflowButton", "formEndpoint", "formName", "isReportingToolbarDisabled", "isCreateOnly", "statusInputDisabled"], outputs: ["onSave", "openWorkflow", "onSubmit", "onSubmitFormWorkflowConfiguration", "formRefChange", "onStatusChange"] }, { kind: "pipe", type: i13.ModalLabelPipe, name: "modalLabel" }] }); }
|
|
205
205
|
}
|
|
206
206
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CreateOrEditModeleImportComponent, decorators: [{
|
|
207
207
|
type: Component,
|
|
208
|
-
args: [{ selector: 'app-create-or-edit-modele-import', providers: [...appProviders], template: "<tsi-form class=\"form-horizontal\" [isLoading]=\"isloading\" autocomplete=\"off\">\r\n <Tsi-Modal-Header [inputTitle]=\"header | modalLabel : mode : 'Mod\u00E8le import'\"\r\n (onCloseClick)=\"hide()\"></Tsi-Modal-Header>\r\n\r\n <fieldset [disabled]=\"isDeleteMode() || isConsultMode() \">\r\n\r\n <div class=\"modal-body\">\r\n <div class=\"grid\">\r\n <div class=\"col-8\">\r\n <div class=\"grid\">\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Nom Modele'\"></Tsi-Label>\r\n <Tsi-Text-Box [(inputField)]=\"modeleImport.nom\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'nomModele'\"></Tsi-Text-Box>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Nom Form'\"></Tsi-Label>\r\n <Tsi-Text-Box [(inputField)]=\"modeleImport.form\" [disabled]=\"true\" class=\"col-9\"\r\n [inputName]=\"'nomForm'\"></Tsi-Text-Box>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Nom Classe'\"></Tsi-Label>\r\n <Tsi-Text-Box [(inputField)]=\"modeleImport.classe\" [disabled]=\"true\" class=\"col-9\"\r\n [inputName]=\"'nomClasse'\"></Tsi-Text-Box>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Premiere Ligne Import'\"></Tsi-Label>\r\n <Tsi-Integer [(inputField)]=\"modeleImport.premiereLigneImport\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'premiereLigneImport'\"></Tsi-Integer>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Derniere Ligne Import'\"></Tsi-Label>\r\n <Tsi-Integer [(inputField)]=\"modeleImport.dernierLigneImport\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'dernierLigneImport'\"></Tsi-Integer>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Arrete lors de premier erreur '\"></Tsi-Label>\r\n <Tsi-CheckBox [(inputField)]=\"modeleImport.arretePremierErreur\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'arretePremierErreur'\"></Tsi-CheckBox>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Mode mise \u00E0 jour'\"></Tsi-Label>\r\n <Tsi-CheckBox [(inputField)]=\"modeleImport.modeMiseAJour\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'modeMiseAJour'\" [isBinary]=\"true\"></Tsi-CheckBox>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Ordre Ou Titre Colonne'\"></Tsi-Label>\r\n <Tsi-Search-Combo (bindChange)=\"typeImportChange($event)\" class=\"col-9\" [listSourceUrl]=\"\r\n modeleImportEndPoints.getTypeNatureDocumentEnum()\r\n \" [(bind)]=\"modeleImport.ordreOuTitreColonne\" id-field=\"key\" label-field=\"value\">\r\n </Tsi-Search-Combo>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Type de fichier'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-9\" [listSourceUrl]=\"\r\n modeleImportEndPoints.getImportFileTypeEnum()\r\n \" [(bind)]=\"modeleImport.fileType\" id-field=\"key\" label-field=\"value\">\r\n </Tsi-Search-Combo>\r\n\r\n <Tsi-Label *ngIf=\"modeleImport.fileType == fileTypeImportEnumRef.CSV\" class=\"col-3\"\r\n [labelValue]=\"'S\u00E9parateur de fichier CSV'\"></Tsi-Label>\r\n <Tsi-Search-Combo *ngIf=\"modeleImport.fileType == fileTypeImportEnumRef.CSV\" class=\"col-9\"\r\n [listSourceUrl]=\"\r\n modeleImportEndPoints.getCsvFileSeparatorEnum()\r\n \" [(bind)]=\"modeleImport.csvFileSeparator\" id-field=\"key\" label-field=\"value\">\r\n </Tsi-Search-Combo>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n <div *ngIf=\"showModeleImportDetails\">\r\n <Tsi-Generic-Editable-Grid [gridData]=\"modeleImport.modeleImportDetails\"\r\n [saveEvent]=\"eventsSubjectModeleImportDetail.asObservable()\"\r\n (rowDeletedEventEmitter)=\"onSaveModeleImportDetails($event)\" [columns]=\"modeleImportDetailColumns\"\r\n [parent]=\"this\" [showSaveButton]=\"false\"
|
|
208
|
+
args: [{ selector: 'app-create-or-edit-modele-import', providers: [...appProviders], template: "<tsi-form class=\"form-horizontal\" [isLoading]=\"isloading\" autocomplete=\"off\">\r\n <Tsi-Modal-Header [inputTitle]=\"header | modalLabel : mode : 'Mod\u00E8le import'\"\r\n (onCloseClick)=\"hide()\"></Tsi-Modal-Header>\r\n\r\n <fieldset [disabled]=\"isDeleteMode() || isConsultMode() \">\r\n\r\n <div class=\"modal-body\">\r\n <div class=\"grid\">\r\n <div class=\"col-8\">\r\n <div class=\"grid\">\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Nom Modele'\"></Tsi-Label>\r\n <Tsi-Text-Box [(inputField)]=\"modeleImport.nom\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'nomModele'\"></Tsi-Text-Box>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Nom Form'\"></Tsi-Label>\r\n <Tsi-Text-Box [(inputField)]=\"modeleImport.form\" [disabled]=\"true\" class=\"col-9\"\r\n [inputName]=\"'nomForm'\"></Tsi-Text-Box>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Nom Classe'\"></Tsi-Label>\r\n <Tsi-Text-Box [(inputField)]=\"modeleImport.classe\" [disabled]=\"true\" class=\"col-9\"\r\n [inputName]=\"'nomClasse'\"></Tsi-Text-Box>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Premiere Ligne Import'\"></Tsi-Label>\r\n <Tsi-Integer [(inputField)]=\"modeleImport.premiereLigneImport\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'premiereLigneImport'\"></Tsi-Integer>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Derniere Ligne Import'\"></Tsi-Label>\r\n <Tsi-Integer [(inputField)]=\"modeleImport.dernierLigneImport\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'dernierLigneImport'\"></Tsi-Integer>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Arrete lors de premier erreur '\"></Tsi-Label>\r\n <Tsi-CheckBox [(inputField)]=\"modeleImport.arretePremierErreur\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'arretePremierErreur'\"></Tsi-CheckBox>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Mode mise \u00E0 jour'\"></Tsi-Label>\r\n <Tsi-CheckBox [(inputField)]=\"modeleImport.modeMiseAJour\" [disabled]=\"false\" class=\"col-9\"\r\n [inputName]=\"'modeMiseAJour'\" [isBinary]=\"true\"></Tsi-CheckBox>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Ordre Ou Titre Colonne'\"></Tsi-Label>\r\n <Tsi-Search-Combo (bindChange)=\"typeImportChange($event)\" class=\"col-9\" [listSourceUrl]=\"\r\n modeleImportEndPoints.getTypeNatureDocumentEnum()\r\n \" [(bind)]=\"modeleImport.ordreOuTitreColonne\" id-field=\"key\" label-field=\"value\">\r\n </Tsi-Search-Combo>\r\n\r\n <Tsi-Label class=\"col-3\" [labelValue]=\"'Type de fichier'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-9\" [listSourceUrl]=\"\r\n modeleImportEndPoints.getImportFileTypeEnum()\r\n \" [(bind)]=\"modeleImport.fileType\" id-field=\"key\" label-field=\"value\">\r\n </Tsi-Search-Combo>\r\n\r\n <Tsi-Label *ngIf=\"modeleImport.fileType == fileTypeImportEnumRef.CSV\" class=\"col-3\"\r\n [labelValue]=\"'S\u00E9parateur de fichier CSV'\"></Tsi-Label>\r\n <Tsi-Search-Combo *ngIf=\"modeleImport.fileType == fileTypeImportEnumRef.CSV\" class=\"col-9\"\r\n [listSourceUrl]=\"\r\n modeleImportEndPoints.getCsvFileSeparatorEnum()\r\n \" [(bind)]=\"modeleImport.csvFileSeparator\" id-field=\"key\" label-field=\"value\">\r\n </Tsi-Search-Combo>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n <div *ngIf=\"showModeleImportDetails\">\r\n <Tsi-Generic-Editable-Grid [gridData]=\"modeleImport.modeleImportDetails\"\r\n [saveEvent]=\"eventsSubjectModeleImportDetail.asObservable()\"\r\n (rowDeletedEventEmitter)=\"onSaveModeleImportDetails($event)\" [columns]=\"modeleImportDetailColumns\"\r\n [parent]=\"this\" [showSaveButton]=\"false\">\r\n </Tsi-Generic-Editable-Grid>\r\n </div>\r\n\r\n\r\n </fieldset>\r\n\r\n <Tsi-Modal-Footer [cancelDisabled]=\"saving\" [saveDisabled]=\"isSubmitDisabled()\" (onCancelClick)=\"hide()\"\r\n (onSaveClick)=\"save()\" [showSaveAndCloseButton]=\"mode == modeRef.delete\"></Tsi-Modal-Footer>\r\n\r\n</tsi-form>" }]
|
|
209
209
|
}], ctorParameters: () => [{ type: i1.ModeleImportService }, { type: i1.TsiNotificationService }, { type: i2.DynamicDialogConfig }, { type: i2.DynamicDialogRef }] });
|
|
210
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW9yLWVkaXQtbW9kZWxlLWltcG9ydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90c2ktc2hhcmVkLXVpL3NyYy9saWIvdHNpLWNvbXBvbmVudHMvY3JlYXRlLW9yLWVkaXQtbW9kZWxlLWltcG9ydC9jcmVhdGUtb3ItZWRpdC1tb2RlbGUtaW1wb3J0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy9jcmVhdGUtb3ItZWRpdC1tb2RlbGUtaW1wb3J0L2NyZWF0ZS1vci1lZGl0LW1vZGVsZS1pbXBvcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlFQUFpRSxDQUFDO0FBQ2hILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVoRSxPQUFPLEVBQUUseUJBQXlCLEVBQXNCLE1BQU0sY0FBYyxDQUFDO0FBRTdFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBUXZFLE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSw2QkFBNkI7SUFjbEYsWUFBb0Isb0JBQXlDLEVBQ25ELG9CQUE0QyxFQUNwQyxNQUEyQixFQUFrQixH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LG1CQUFtQixDQUFDLENBQUMsQ0FBQztvQkFDaEYsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDaEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztvQkFDbkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7Z0JBQ3pCLENBQUM7YUFDRixDQUNGLENBQUE7UUFDSCxDQUFDO0lBQ0gsQ0FBQzsrR0FsTVUsaUNBQWlDO21HQUFqQyxpQ0FBaUMsMkRBRmpDLENBQUMsR0FBRyxZQUFZLENBQUMsaURDakI5Qix5NElBK0VXOzs0RkQ1REUsaUNBQWlDO2tCQU43QyxTQUFTOytCQUNFLGtDQUFrQyxhQUdqQyxDQUFDLEdBQUcsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBUc2lGb3JtQ29tcG9uZW50QmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL3RzaS1iYXNlL2NvbXBvbmVudHMvdHNpLWZvcm0tYmFzZS90c2ktZm9ybS1iYXNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExvY2FsaXphdGlvbktleXMgfSBmcm9tICcuLi8uLi9jb25zdHMvbG9jYWxpemF0aW9uLWtleSc7XHJcbmltcG9ydCB7IE1vZGVzLCBUeXBlSW1wb3J0RW51bSwgSW5wdXRUeXBlcyB9IGZyb20gJy4uLy4uL2VudW1zJztcclxuaW1wb3J0IHsgR3JpZENvbHVtbiB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBNb2RlbGVJbXBvcnRDcmVhdGVSZXF1ZXN0LCBNb2RlbGVJbXBvcnREZXRhaWwgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBNb2RlbGVJbXBvcnRTZXJ2aWNlLCBUc2lOb3RpZmljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xyXG5pbXBvcnQgeyBJbXBvcnRFeHBvcnRFbmRQb2ludHMgfSBmcm9tICcuLi8uLi9lbmQtcG9pbnRzL2ltcG9ydC1leHBvcnQtZW5kcG9pbnQnO1xyXG5pbXBvcnQgeyBhcHBQcm92aWRlcnMgfSBmcm9tICcuLi8uLi9jb25zdHMvYXBwLXByb3ZpZGVycyc7XHJcbmltcG9ydCB7IER5bmFtaWNEaWFsb2dDb25maWcsIER5bmFtaWNEaWFsb2dSZWYgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xyXG5pbXBvcnQgeyBGaWxlVHlwZUltcG9ydEVudW0gfSBmcm9tICcuLi8uLi9lbnVtcy9maWxlLXR5cGUtaW1wb3J0LWVudW0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtY3JlYXRlLW9yLWVkaXQtbW9kZWxlLWltcG9ydCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NyZWF0ZS1vci1lZGl0LW1vZGVsZS1pbXBvcnQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NyZWF0ZS1vci1lZGl0LW1vZGVsZS1pbXBvcnQuY29tcG9uZW50LnNjc3MnXSxcclxuICBwcm92aWRlcnM6IFsuLi5hcHBQcm92aWRlcnNdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDcmVhdGVPckVkaXRNb2RlbGVJbXBvcnRDb21wb25lbnQgZXh0ZW5kcyBUc2lGb3JtQ29tcG9uZW50QmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIG1vZGVsZUltcG9ydERldGFpbENvbHVtbnM6IEFycmF5PEdyaWRDb2x1bW4+ID0gW107XHJcbiAgbW9kZWxlSW1wb3J0OiBNb2RlbGVJbXBvcnRDcmVhdGVSZXF1ZXN0ID0gbmV3IE1vZGVsZUltcG9ydENyZWF0ZVJlcXVlc3QoKVxyXG4gIGdldENvbG9ubmVCeUNsYXNzTmFtZUVuZFBvaW50OiBzdHJpbmcgPSBcIlwiXHJcbiAgZ2V0Q2xhc3NDaGlsZHNCeUNsYXNzTmFtZUVuZFBvaW50OiBzdHJpbmcgPSBcIlwiXHJcbiAgbW9kZWxlSW1wb3J0RW5kUG9pbnRzID0gSW1wb3J0RXhwb3J0RW5kUG9pbnRzXHJcbiAgX2J1c2lubmVzc0NsYXNzTmFtZTogc3RyaW5nID0gXCJcIlxyXG4gIGV2ZW50c1N1YmplY3RNb2RlbGVJbXBvcnREZXRhaWw6IFN1YmplY3Q8dm9pZD47XHJcbiAgb3BlbmVkTW9kZTogYW55XHJcbiAgc2hvd01vZGVsZUltcG9ydERldGFpbHM6IGJvb2xlYW4gPSBmYWxzZVxyXG4gIGZpbGVUeXBlSW1wb3J0RW51bVJlZiA9IEZpbGVUeXBlSW1wb3J0RW51bVxyXG4gIG1vZGVSZWYgPSBNb2RlcztcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfbW9kZWxlSW1wb3J0U2VydmljZTogTW9kZWxlSW1wb3J0U2VydmljZSxcclxuICAgIHByaXZhdGUgX25vdGlmaWNhdGlvblNlcnZpY2U6IFRzaU5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbiAgICBwdWJsaWMgb3ZlcnJpZGUgY29uZmlnOiBEeW5hbWljRGlhbG9nQ29uZmlnLCBwdWJsaWMgb3ZlcnJpZGUgcmVmPzogRHluYW1pY0RpYWxvZ1JlZiwpIHtcclxuICAgIHN1cGVyKHJlZiwgY29uZmlnKTtcclxuICAgIHRoaXMuZXZlbnRzU3ViamVjdE1vZGVsZUltcG9ydERldGFpbCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgICB0aGlzLl9idXNpbm5lc3NDbGFzc05hbWUgPSBjb25maWc/LmRhdGE/LmVudGl0eUJ1c2luZXNzQ2xhc3NcclxuICAgIHRoaXMuZ2V0Q2xhc3NDaGlsZHNCeUNsYXNzTmFtZUVuZFBvaW50ID0gSW1wb3J0RXhwb3J0RW5kUG9pbnRzLmdldENsYXNzQ2hpbGRzQXNLZXlWYWx1ZVBhaXIodGhpcy5fYnVzaW5uZXNzQ2xhc3NOYW1lKVxyXG4gICAgdGhpcy5pbml0TW9kZWxlSW1wb3J0RGV0YWlsQ29sdW1ucygpXHJcbiAgICB0aGlzLm9wZW5lZE1vZGUgPSB0aGlzLmNvbmZpZy5kYXRhPy5tb2RlIFxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfdXBkYXRlTW9kZWxlSW1wb3J0RnJvbUdyaWQoKSB7XHJcbiAgICB0aGlzLmV2ZW50c1N1YmplY3RNb2RlbGVJbXBvcnREZXRhaWwubmV4dCgpO1xyXG4gIH1cclxuXHJcbiAgb25TYXZlTW9kZWxlSW1wb3J0RGV0YWlscyhncmlkRGF0YTogQXJyYXk8TW9kZWxlSW1wb3J0RGV0YWlsPikge1xyXG4gICAgdGhpcy5tb2RlbGVJbXBvcnQubW9kZWxlSW1wb3J0RGV0YWlscyA9IGdyaWREYXRhXHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHN1cGVyLm5nT25Jbml0KClcclxuICAgIGlmICh0aGlzLmNvbmZpZy5kYXRhICE9IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLm1vZGVsZUltcG9ydC5jbGFzc2UgPSB0aGlzLmNvbmZpZz8uZGF0YT8uZW50aXR5QnVzaW5lc3NDbGFzc1xyXG4gICAgICB0aGlzLm1vZGVsZUltcG9ydC5mb3JtID0gdGhpcy5mb3JtTmFtZVxyXG5cclxuICAgICAgaWYgKHRoaXMub3BlbmVkTW9kZSA9PSBNb2Rlcy5lZGl0ICYmIHRoaXMuY29uZmlnLmRhdGE/LmlkICE9IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIHRoaXMuX21vZGVsZUltcG9ydFNlcnZpY2UuZ2V0QnlJZCh0aGlzLmNvbmZpZy5kYXRhPy5pZClcclxuICAgICAgICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICAgICAgICBuZXh0OiAoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMubW9kZWxlSW1wb3J0ID0gZGF0YVxyXG4gICAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsdWVzV2l0aFBhcmVudENvbHVtTmFtZSgpXHJcbiAgICAgICAgICAgICAgdGhpcy50eXBlSW1wb3J0Q2hhbmdlKHRoaXMubW9kZWxlSW1wb3J0Lm9yZHJlT3VUaXRyZUNvbG9ubmUpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHVwZGF0ZVZhbHVlc1dpdGhQYXJlbnRDb2x1bU5hbWUoKSB7XHJcbiAgICBsZXQgZmlsdHJlZERhdGEgPSB0aGlzLm1vZGVsZUltcG9ydC5tb2RlbGVJbXBvcnREZXRhaWxzXHJcbiAgICAgIC5maWx0ZXIoeCA9PiB4Lm5vbUNsYXNzZURldGFpbCA9PSB1bmRlZmluZWQgfHwgeC5ub21DbGFzc2VEZXRhaWwgPT0gJycpXHJcbiAgICBmaWx0cmVkRGF0YS5mb3JFYWNoKGl0ZW0gPT4ge1xyXG4gICAgICBpdGVtLm5vbUNsYXNzZURldGFpbCA9IHRoaXMuX2J1c2lubmVzc0NsYXNzTmFtZVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHR5cGVJbXBvcnRDaGFuZ2UoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5pbml0TW9kZWxlSW1wb3J0RGV0YWlsQ29sdW1ucygpXHJcbiAgICBpZiAoZXZlbnQgPT0gVHlwZUltcG9ydEVudW0uVGl0cmVDb2xvbm5lKSB7XHJcbiAgICAgIGxldCBpbmRleCA9IHRoaXMubW9kZWxlSW1wb3J0RGV0YWlsQ29sdW1ucy5maW5kSW5kZXgoeCA9PiB4LmZpZWxkID09IFwibnVtZXJvXCIpXHJcbiAgICAgIGlmIChpbmRleCAhPSAtMSkge1xyXG4gICAgICAgIHRoaXMubW9kZWxlSW1wb3J0RGV0YWlsQ29sdW1ucy5zcGxpY2UoaW5kZXgsIDEpXHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAoZXZlbnQgPT0gVHlwZUltcG9ydEVudW0uT3JkcmVDb2xvbm5lKSB7XHJcbiAgICAgIGxldCBpbmRleCA9IHRoaXMubW9kZWxlSW1wb3J0RGV0YWlsQ29sdW1ucy5maW5kSW5kZXgoeCA9PiB4LmZpZWxkID09IFwibm9tQ29sb25uZUZpY2hpZXJcIilcclxuICAgICAgaWYgKGluZGV4ICE9IC0xKSB7XHJcbiAgICAgICAgdGhpcy5tb2RlbGVJbXBvcnREZXRhaWxDb2x1bW5zLnNwbGljZShpbmRleCwgMSlcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKGV2ZW50ICE9IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLnNob3dNb2RlbGVJbXBvcnREZXRhaWxzID0gdHJ1ZVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zaG93TW9kZWxlSW1wb3J0RGV0YWlscyA9IGZhbHNlXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXRNb2RlbGVJbXBvcnREZXRhaWxDb2x1bW5zKCkge1xyXG4gICAgdGhpcy5tb2RlbGVJbXBvcnREZXRhaWxDb2x1bW5zID0gW1xyXG4gICAgICB7XHJcbiAgICAgICAgZmllbGQ6IFwibm9tQ2xhc3NlRGV0YWlsXCIsXHJcbiAgICAgICAgaGVhZGVyOiBcIk5vbSBDbGFzc2UgRGV0YWlsXCIsXHJcbiAgICAgICAgdHlwZTogSW5wdXRUeXBlcy5TRUFSQ0hfQ09NQk8sXHJcbiAgICAgICAgbGlzdFNvdXJjZVVybDogdGhpcy5nZXRDbGFzc0NoaWxkc0J5Q2xhc3NOYW1lRW5kUG9pbnQsXHJcbiAgICAgICAgaWRGaWVsZDogXCJ2YWx1ZVwiLFxyXG4gICAgICAgIGxhYmVsRmllbGQ6IFwidmFsdWVcIixcclxuICAgICAgICBpc0ZpbHRlcmVkOiBmYWxzZSxcclxuICAgICAgICB3YXRjaEZvckNoYW5nZXM6IHRydWUsXHJcbiAgICAgICAgd2lkdGg6ICcyMHZ3J1xyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgZmllbGQ6IFwiY29sb25uZUNsYXNzZVwiLFxyXG4gICAgICAgIGhlYWRlcjogXCJDb2xvbm5lIENsYXNzZVwiLFxyXG4gICAgICAgIHR5cGU6IElucHV0VHlwZXMuU0VBUkNIX0NPTUJPLFxyXG4gICAgICAgIGxpc3RTb3VyY2VVcmw6IHRoaXMuYnVpbGRHZXRDaGlsZENsYXNzQ29sdW1ucyxcclxuICAgICAgICBpZEZpZWxkOiBcInZhbHVlXCIsXHJcbiAgICAgICAgbGFiZWxGaWVsZDogXCJ2YWx1ZVwiLFxyXG4gICAgICAgIGlzRmlsdGVyZWQ6IGZhbHNlLFxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgZmllbGQ6IFwibnVtZXJvXCIsXHJcbiAgICAgICAgaGVhZGVyOiBcIk9yZHJlXCIsXHJcbiAgICAgICAgdHlwZTogSW5wdXRUeXBlcy5JTlRFR0VSLFxyXG4gICAgICAgIHdhdGNoRm9yQ2hhbmdlczogdHJ1ZVxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgZmllbGQ6IFwibm9tQ29sb25uZUZpY2hpZXJcIixcclxuICAgICAgICBoZWFkZXI6IFwiTm9tIENvbG9ubmUgRmljaGllclwiLFxyXG4gICAgICAgIHR5cGU6IElucHV0VHlwZXMuVEVYVF9CT1gsXHJcbiAgICAgICAgd2F0Y2hGb3JDaGFuZ2VzOiB0cnVlXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBmaWVsZDogXCJub21Db2xvbm5lQ2xlZkV0cmFuZ2VyZVwiLFxyXG4gICAgICAgIGhlYWRlcjogXCJOb20gQ29sb25uZSBDbGUgRXRyYW5nw6hyZVwiLFxyXG4gICAgICAgIHdhdGNoRm9yQ2hhbmdlczogdHJ1ZSxcclxuICAgICAgICB0eXBlOiBJbnB1dFR5cGVzLlNFQVJDSF9DT01CTyxcclxuICAgICAgICBsaXN0U291cmNlVXJsOiB0aGlzLmJ1aWxkR2V0Q29sdW1tbkZvckZvcmVpZ25LZXlDbGFzcyxcclxuICAgICAgICBpZEZpZWxkOiBcImtleVwiLFxyXG4gICAgICAgIGxhYmVsRmllbGQ6IFwidmFsdWVcIixcclxuICAgICAgICBpc0ZpbHRlcmVkOiBmYWxzZSxcclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIGZpZWxkOiBcImNsZWZNaXNlQUpvdXJcIixcclxuICAgICAgICBoZWFkZXI6IFwiQ2zDqSBkZSBtaXNlIMOgIGpvdXJcIixcclxuICAgICAgICB0eXBlOiBJbnB1dFR5cGVzLkNIRUNLQk9YLFxyXG4gICAgICAgIHdhdGNoRm9yQ2hhbmdlczogdHJ1ZSxcclxuICAgICAgICBpc0JpbmFyeTogdHJ1ZVxyXG4gICAgICB9LFxyXG4gICAgXVxyXG4gIH1cclxuXHJcbiAgYnVpbGRHZXRDb2x1bW1uRm9yRm9yZWlnbktleUNsYXNzKGN1cnJlbnRSb3dJdGVtOiBNb2RlbGVJbXBvcnREZXRhaWwpIHtcclxuICAgIGxldCBjb2x1bW5OYW1lID0gY3VycmVudFJvd0l0ZW0/LmNvbG9ubmVDbGFzc2UgPz8gXCJcIlxyXG4gICAgbGV0IHBhcmVudEVudGl0eU5hbWUgPSBjdXJyZW50Um93SXRlbT8ubm9tQ2xhc3NlRGV0YWlsID8/IFwiXCJcclxuICAgIHJldHVybiBJbXBvcnRFeHBvcnRFbmRQb2ludHMuZ2V0Q29sb25uZXNCeUNsYXNzTmFtZUFzS2V5VmFsdWVQYWlyKHBhcmVudEVudGl0eU5hbWUsIGNvbHVtbk5hbWUpXHJcbiAgfVxyXG5cclxuICBidWlsZEdldENoaWxkQ2xhc3NDb2x1bW5zKGN1cnJlbnRSb3dJdGVtOiBNb2RlbGVJbXBvcnREZXRhaWwpIHtcclxuICAgIGxldCBwYXJlbnRFbnRpdHlOYW1lID0gY3VycmVudFJvd0l0ZW0/Lm5vbUNsYXNzZURldGFpbCA/PyBcIlwiXHJcbiAgICAvLyBpZiAocGFyZW50RW50aXR5TmFtZT8uZW5kc1dpdGgoJ3MnKSkge1xyXG4gICAgLy8gICBwYXJlbnRFbnRpdHlOYW1lID0gcGFyZW50RW50aXR5TmFtZS5zbGljZSgwLCAtMSk7XHJcbiAgICAvLyB9XHJcbiAgICByZXR1cm4gSW1wb3J0RXhwb3J0RW5kUG9pbnRzLmdldENvbG9ubmVzQnlDbGFzc05hbWVBc0tleVZhbHVlUGFpcihwYXJlbnRFbnRpdHlOYW1lLCBcIlwiKVxyXG4gIH1cclxuXHJcbiAgYnVpbGRHZXRDaGlsZENoaWxkQ2xhc3MoY3VycmVudFJvd0l0ZW06IE1vZGVsZUltcG9ydERldGFpbCkge1xyXG4gICAgbGV0IGNsYXNzTmFtZSA9IGN1cnJlbnRSb3dJdGVtPy5ub21DbGFzc2VEZXRhaWxcclxuICAgIGlmIChjbGFzc05hbWU/LmVuZHNXaXRoKCdzJykpIHtcclxuICAgICAgY2xhc3NOYW1lID0gY2xhc3NOYW1lLnNsaWNlKDAsIC0xKTtcclxuICAgIH1cclxuICAgIHJldHVybiBJbXBvcnRFeHBvcnRFbmRQb2ludHMuZ2V0Q2xhc3NDaGlsZHNBc0tleVZhbHVlUGFpcihjbGFzc05hbWUpXHJcbiAgfVxyXG5cclxuICBkZWxldGVWYWx1ZUZyb21QYXJlbnRNb2RlbCgpIHtcclxuICAgIGxldCBmaWx0cmVkRGF0YSA9IHRoaXMubW9kZWxlSW1wb3J0Lm1vZGVsZUltcG9ydERldGFpbHNcclxuICAgICAgLmZpbHRlcih4ID0+IHgubm9tQ2xhc3NlRGV0YWlsID09IHRoaXMuX2J1c2luZXNzQ2xhc3MpXHJcbiAgICBmaWx0cmVkRGF0YS5mb3JFYWNoKGl0ZW0gPT4ge1xyXG4gICAgICBpdGVtLm5vbUNsYXNzZURldGFpbCA9IHVuZGVmaW5lZFxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIHNhdmUoKTogdm9pZCB7XHJcbiAgICBzdXBlci5zYXZlKClcclxuICAgIHRoaXMuc2F2aW5nID0gdHJ1ZVxyXG4gICAgdGhpcy5pc2xvYWRpbmcgPSB0cnVlXHJcbiAgICB0aGlzLl91cGRhdGVNb2RlbGVJbXBvcnRGcm9tR3JpZCgpXHJcbiAgICB0aGlzLmRlbGV0ZVZhbHVlRnJvbVBhcmVudE1vZGVsKClcclxuICAgIGlmICh0aGlzLm9wZW5lZE1vZGUgPT0gTW9kZXMuY3JlYXRlKSB7XHJcbiAgICAgIHRoaXMuX21vZGVsZUltcG9ydFNlcnZpY2UuY3JlYXRlKHRoaXMubW9kZWxlSW1wb3J0KS5zdWJzY3JpYmUoXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbmV4dDogKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9ub3RpZmljYXRpb25TZXJ2aWNlLnN1Y2Nlc3ModGhpcy5sKExvY2FsaXphdGlvbktleXMuc2F2ZWRTdWNjZXNzZnVsbHkpKTtcclxuICAgICAgICAgICAgdGhpcy5oaWRlKHRydWUpO1xyXG4gICAgICAgICAgICB0aGlzLm9uU2F2ZS5lbWl0KCk7XHJcbiAgICAgICAgICAgIHRoaXMuaXNsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICApXHJcbiAgICB9XHJcbiAgICBlbHNlIGlmICh0aGlzLm9wZW5lZE1vZGUgPT0gTW9kZXMuZWRpdCAmJiB0aGlzLm1vZGVsZUltcG9ydC51aWQgIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuX21vZGVsZUltcG9ydFNlcnZpY2UudXBkYXRlKHRoaXMubW9kZWxlSW1wb3J0LCB0aGlzLm1vZGVsZUltcG9ydC51aWQpLnN1YnNjcmliZShcclxuICAgICAgICB7XHJcbiAgICAgICAgICBuZXh0OiAoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9ub3RpZmljYXRpb25TZXJ2aWNlLnN1Y2Nlc3ModGhpcy5sKExvY2FsaXphdGlvbktleXMudXBkYXRlZFN1Y2Nlc3NmdWxseSkpO1xyXG4gICAgICAgICAgICB0aGlzLmhpZGUodHJ1ZSk7XHJcbiAgICAgICAgICAgIHRoaXMub25TYXZlLmVtaXQoKTtcclxuICAgICAgICAgICAgdGhpcy5pc2xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIClcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiIsIjx0c2ktZm9ybSBjbGFzcz1cImZvcm0taG9yaXpvbnRhbFwiIFtpc0xvYWRpbmddPVwiaXNsb2FkaW5nXCIgYXV0b2NvbXBsZXRlPVwib2ZmXCI+XHJcbiAgPFRzaS1Nb2RhbC1IZWFkZXIgW2lucHV0VGl0bGVdPVwiaGVhZGVyIHwgbW9kYWxMYWJlbCA6IG1vZGUgOiAnTW9kw6hsZSBpbXBvcnQnXCJcclxuICAgIChvbkNsb3NlQ2xpY2spPVwiaGlkZSgpXCI+PC9Uc2ktTW9kYWwtSGVhZGVyPlxyXG5cclxuICA8ZmllbGRzZXQgW2Rpc2FibGVkXT1cImlzRGVsZXRlTW9kZSgpIHx8IGlzQ29uc3VsdE1vZGUoKSBcIj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwibW9kYWwtYm9keVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZ3JpZFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtOFwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdyaWRcIj5cclxuXHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgY2xhc3M9XCJjb2wtM1wiIFtsYWJlbFZhbHVlXT1cIidOb20gTW9kZWxlJ1wiPjwvVHNpLUxhYmVsPlxyXG4gICAgICAgICAgICA8VHNpLVRleHQtQm94IFsoaW5wdXRGaWVsZCldPVwibW9kZWxlSW1wb3J0Lm5vbVwiIFtkaXNhYmxlZF09XCJmYWxzZVwiIGNsYXNzPVwiY29sLTlcIlxyXG4gICAgICAgICAgICAgIFtpbnB1dE5hbWVdPVwiJ25vbU1vZGVsZSdcIj48L1RzaS1UZXh0LUJveD5cclxuXHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgY2xhc3M9XCJjb2wtM1wiIFtsYWJlbFZhbHVlXT1cIidOb20gRm9ybSdcIj48L1RzaS1MYWJlbD5cclxuICAgICAgICAgICAgPFRzaS1UZXh0LUJveCBbKGlucHV0RmllbGQpXT1cIm1vZGVsZUltcG9ydC5mb3JtXCIgW2Rpc2FibGVkXT1cInRydWVcIiBjbGFzcz1cImNvbC05XCJcclxuICAgICAgICAgICAgICBbaW5wdXROYW1lXT1cIidub21Gb3JtJ1wiPjwvVHNpLVRleHQtQm94PlxyXG5cclxuICAgICAgICAgICAgPFRzaS1MYWJlbCBjbGFzcz1cImNvbC0zXCIgW2xhYmVsVmFsdWVdPVwiJ05vbSBDbGFzc2UnXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgIDxUc2ktVGV4dC1Cb3ggWyhpbnB1dEZpZWxkKV09XCJtb2RlbGVJbXBvcnQuY2xhc3NlXCIgW2Rpc2FibGVkXT1cInRydWVcIiBjbGFzcz1cImNvbC05XCJcclxuICAgICAgICAgICAgICBbaW5wdXROYW1lXT1cIidub21DbGFzc2UnXCI+PC9Uc2ktVGV4dC1Cb3g+XHJcblxyXG4gICAgICAgICAgICA8VHNpLUxhYmVsIGNsYXNzPVwiY29sLTNcIiBbbGFiZWxWYWx1ZV09XCInUHJlbWllcmUgTGlnbmUgSW1wb3J0J1wiPjwvVHNpLUxhYmVsPlxyXG4gICAgICAgICAgICA8VHNpLUludGVnZXIgWyhpbnB1dEZpZWxkKV09XCJtb2RlbGVJbXBvcnQucHJlbWllcmVMaWduZUltcG9ydFwiIFtkaXNhYmxlZF09XCJmYWxzZVwiIGNsYXNzPVwiY29sLTlcIlxyXG4gICAgICAgICAgICAgIFtpbnB1dE5hbWVdPVwiJ3ByZW1pZXJlTGlnbmVJbXBvcnQnXCI+PC9Uc2ktSW50ZWdlcj5cclxuXHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgY2xhc3M9XCJjb2wtM1wiIFtsYWJlbFZhbHVlXT1cIidEZXJuaWVyZSBMaWduZSBJbXBvcnQnXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgIDxUc2ktSW50ZWdlciBbKGlucHV0RmllbGQpXT1cIm1vZGVsZUltcG9ydC5kZXJuaWVyTGlnbmVJbXBvcnRcIiBbZGlzYWJsZWRdPVwiZmFsc2VcIiBjbGFzcz1cImNvbC05XCJcclxuICAgICAgICAgICAgICBbaW5wdXROYW1lXT1cIidkZXJuaWVyTGlnbmVJbXBvcnQnXCI+PC9Uc2ktSW50ZWdlcj5cclxuXHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgY2xhc3M9XCJjb2wtM1wiIFtsYWJlbFZhbHVlXT1cIidBcnJldGUgbG9ycyBkZSBwcmVtaWVyIGVycmV1ciAnXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgIDxUc2ktQ2hlY2tCb3ggWyhpbnB1dEZpZWxkKV09XCJtb2RlbGVJbXBvcnQuYXJyZXRlUHJlbWllckVycmV1clwiIFtkaXNhYmxlZF09XCJmYWxzZVwiIGNsYXNzPVwiY29sLTlcIlxyXG4gICAgICAgICAgICAgIFtpbnB1dE5hbWVdPVwiJ2FycmV0ZVByZW1pZXJFcnJldXInXCI+PC9Uc2ktQ2hlY2tCb3g+XHJcblxyXG4gICAgICAgICAgICA8VHNpLUxhYmVsIGNsYXNzPVwiY29sLTNcIiBbbGFiZWxWYWx1ZV09XCInTW9kZSBtaXNlIMOgIGpvdXInXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgIDxUc2ktQ2hlY2tCb3ggWyhpbnB1dEZpZWxkKV09XCJtb2RlbGVJbXBvcnQubW9kZU1pc2VBSm91clwiIFtkaXNhYmxlZF09XCJmYWxzZVwiIGNsYXNzPVwiY29sLTlcIlxyXG4gICAgICAgICAgICAgIFtpbnB1dE5hbWVdPVwiJ21vZGVNaXNlQUpvdXInXCIgW2lzQmluYXJ5XT1cInRydWVcIj48L1RzaS1DaGVja0JveD5cclxuXHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgY2xhc3M9XCJjb2wtM1wiIFtsYWJlbFZhbHVlXT1cIidPcmRyZSBPdSBUaXRyZSBDb2xvbm5lJ1wiPjwvVHNpLUxhYmVsPlxyXG4gICAgICAgICAgICA8VHNpLVNlYXJjaC1Db21ibyAoYmluZENoYW5nZSk9XCJ0eXBlSW1wb3J0Q2hhbmdlKCRldmVudClcIiBjbGFzcz1cImNvbC05XCIgW2xpc3RTb3VyY2VVcmxdPVwiXHJcbiAgICAgICAgICAgICAgICAgIG1vZGVsZUltcG9ydEVuZFBvaW50cy5nZXRUeXBlTmF0dXJlRG9jdW1lbnRFbnVtKClcclxuICAgICAgICAgICAgICAgIFwiIFsoYmluZCldPVwibW9kZWxlSW1wb3J0Lm9yZHJlT3VUaXRyZUNvbG9ubmVcIiBpZC1maWVsZD1cImtleVwiIGxhYmVsLWZpZWxkPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgPC9Uc2ktU2VhcmNoLUNvbWJvPlxyXG5cclxuICAgICAgICAgICAgPFRzaS1MYWJlbCBjbGFzcz1cImNvbC0zXCIgW2xhYmVsVmFsdWVdPVwiJ1R5cGUgZGUgZmljaGllcidcIj48L1RzaS1MYWJlbD5cclxuICAgICAgICAgICAgPFRzaS1TZWFyY2gtQ29tYm8gY2xhc3M9XCJjb2wtOVwiIFtsaXN0U291cmNlVXJsXT1cIlxyXG4gICAgICAgICAgICAgICAgICBtb2RlbGVJbXBvcnRFbmRQb2ludHMuZ2V0SW1wb3J0RmlsZVR5cGVFbnVtKClcclxuICAgICAgICAgICAgICAgIFwiIFsoYmluZCldPVwibW9kZWxlSW1wb3J0LmZpbGVUeXBlXCIgaWQtZmllbGQ9XCJrZXlcIiBsYWJlbC1maWVsZD1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgIDwvVHNpLVNlYXJjaC1Db21ibz5cclxuXHJcbiAgICAgICAgICAgICAgPFRzaS1MYWJlbCAqbmdJZj1cIm1vZGVsZUltcG9ydC5maWxlVHlwZSA9PSBmaWxlVHlwZUltcG9ydEVudW1SZWYuQ1NWXCIgY2xhc3M9XCJjb2wtM1wiXHJcbiAgICAgICAgICAgICAgICBbbGFiZWxWYWx1ZV09XCInU8OpcGFyYXRldXIgZGUgZmljaGllciBDU1YnXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgICAgPFRzaS1TZWFyY2gtQ29tYm8gKm5nSWY9XCJtb2RlbGVJbXBvcnQuZmlsZVR5cGUgPT0gZmlsZVR5cGVJbXBvcnRFbnVtUmVmLkNTVlwiIGNsYXNzPVwiY29sLTlcIlxyXG4gICAgICAgICAgICAgICAgW2xpc3RTb3VyY2VVcmxdPVwiXHJcbiAgICAgICAgICAgICAgICAgIG1vZGVsZUltcG9ydEVuZFBvaW50cy5nZXRDc3ZGaWxlU2VwYXJhdG9yRW51bSgpXHJcbiAgICAgICAgICAgICAgICBcIiBbKGJpbmQpXT1cIm1vZGVsZUltcG9ydC5jc3ZGaWxlU2VwYXJhdG9yXCIgaWQtZmllbGQ9XCJrZXlcIiBsYWJlbC1maWVsZD1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgPC9Uc2ktU2VhcmNoLUNvbWJvPlxyXG5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuXHJcbiAgICA8ZGl2ICpuZ0lmPVwic2hvd01vZGVsZUltcG9ydERldGFpbHNcIj5cclxuICAgICAgPFRzaS1HZW5lcmljLUVkaXRhYmxlLUdyaWQgW2dyaWREYXRhXT1cIm1vZGVsZUltcG9ydC5tb2RlbGVJbXBvcnREZXRhaWxzXCJcclxuICAgICAgICBbc2F2ZUV2ZW50XT1cImV2ZW50c1N1YmplY3RNb2RlbGVJbXBvcnREZXRhaWwuYXNPYnNlcnZhYmxlKClcIlxyXG4gICAgICAgIChyb3dEZWxldGVkRXZlbnRFbWl0dGVyKT1cIm9uU2F2ZU1vZGVsZUltcG9ydERldGFpbHMoJGV2ZW50KVwiIFtjb2x1bW5zXT1cIm1vZGVsZUltcG9ydERldGFpbENvbHVtbnNcIlxyXG4gICAgICAgIFtwYXJlbnRdPVwidGhpc1wiIFtzaG93U2F2ZUJ1dHRvbl09XCJmYWxzZVwiIFtrZXldPVwiJ251bUxpZ25lJ1wiPlxyXG4gICAgICA8L1RzaS1HZW5lcmljLUVkaXRhYmxlLUdyaWQ+XHJcbiAgICA8L2Rpdj5cclxuXHJcblxyXG4gIDwvZmllbGRzZXQ+XHJcblxyXG4gIDxUc2ktTW9kYWwtRm9vdGVyIFtjYW5jZWxEaXNhYmxlZF09XCJzYXZpbmdcIiBbc2F2ZURpc2FibGVkXT1cImlzU3VibWl0RGlzYWJsZWQoKVwiIChvbkNhbmNlbENsaWNrKT1cImhpZGUoKVwiXHJcbiAgICAob25TYXZlQ2xpY2spPVwic2F2ZSgpXCIgW3Nob3dTYXZlQW5kQ2xvc2VCdXR0b25dPVwibW9kZSA9PSBtb2RlUmVmLmRlbGV0ZVwiPjwvVHNpLU1vZGFsLUZvb3Rlcj5cclxuXHJcbjwvdHNpLWZvcm0+Il19
|
|
210
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW9yLWVkaXQtbW9kZWxlLWltcG9ydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90c2ktc2hhcmVkLXVpL3NyYy9saWIvdHNpLWNvbXBvbmVudHMvY3JlYXRlLW9yLWVkaXQtbW9kZWxlLWltcG9ydC9jcmVhdGUtb3ItZWRpdC1tb2RlbGUtaW1wb3J0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy9jcmVhdGUtb3ItZWRpdC1tb2RlbGUtaW1wb3J0L2NyZWF0ZS1vci1lZGl0LW1vZGVsZS1pbXBvcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlFQUFpRSxDQUFDO0FBQ2hILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVoRSxPQUFPLEVBQUUseUJBQXlCLEVBQXNCLE1BQU0sY0FBYyxDQUFDO0FBRTdFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBUXZFLE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSw2QkFBNkI7SUFjbEYsWUFBb0Isb0JBQXlDLEVBQ25ELG9CQUE0QyxFQUNwQyxNQUEyQixFQUFrQixH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LG1CQUFtQixDQUFDLENBQUMsQ0FBQztvQkFDaEYsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDaEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztvQkFDbkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7Z0JBQ3pCLENBQUM7YUFDRixDQUNGLENBQUE7UUFDSCxDQUFDO0lBQ0gsQ0FBQzsrR0FsTVUsaUNBQWlDO21HQUFqQyxpQ0FBaUMsMkRBRmpDLENBQUMsR0FBRyxZQUFZLENBQUMsaURDakI5QixvM0lBK0VXOzs0RkQ1REUsaUNBQWlDO2tCQU43QyxTQUFTOytCQUNFLGtDQUFrQyxhQUdqQyxDQUFDLEdBQUcsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBUc2lGb3JtQ29tcG9uZW50QmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL3RzaS1iYXNlL2NvbXBvbmVudHMvdHNpLWZvcm0tYmFzZS90c2ktZm9ybS1iYXNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExvY2FsaXphdGlvbktleXMgfSBmcm9tICcuLi8uLi9jb25zdHMvbG9jYWxpemF0aW9uLWtleSc7XHJcbmltcG9ydCB7IE1vZGVzLCBUeXBlSW1wb3J0RW51bSwgSW5wdXRUeXBlcyB9IGZyb20gJy4uLy4uL2VudW1zJztcclxuaW1wb3J0IHsgR3JpZENvbHVtbiB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBNb2RlbGVJbXBvcnRDcmVhdGVSZXF1ZXN0LCBNb2RlbGVJbXBvcnREZXRhaWwgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBNb2RlbGVJbXBvcnRTZXJ2aWNlLCBUc2lOb3RpZmljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xyXG5pbXBvcnQgeyBJbXBvcnRFeHBvcnRFbmRQb2ludHMgfSBmcm9tICcuLi8uLi9lbmQtcG9pbnRzL2ltcG9ydC1leHBvcnQtZW5kcG9pbnQnO1xyXG5pbXBvcnQgeyBhcHBQcm92aWRlcnMgfSBmcm9tICcuLi8uLi9jb25zdHMvYXBwLXByb3ZpZGVycyc7XHJcbmltcG9ydCB7IER5bmFtaWNEaWFsb2dDb25maWcsIER5bmFtaWNEaWFsb2dSZWYgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xyXG5pbXBvcnQgeyBGaWxlVHlwZUltcG9ydEVudW0gfSBmcm9tICcuLi8uLi9lbnVtcy9maWxlLXR5cGUtaW1wb3J0LWVudW0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtY3JlYXRlLW9yLWVkaXQtbW9kZWxlLWltcG9ydCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NyZWF0ZS1vci1lZGl0LW1vZGVsZS1pbXBvcnQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NyZWF0ZS1vci1lZGl0LW1vZGVsZS1pbXBvcnQuY29tcG9uZW50LnNjc3MnXSxcclxuICBwcm92aWRlcnM6IFsuLi5hcHBQcm92aWRlcnNdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDcmVhdGVPckVkaXRNb2RlbGVJbXBvcnRDb21wb25lbnQgZXh0ZW5kcyBUc2lGb3JtQ29tcG9uZW50QmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIG1vZGVsZUltcG9ydERldGFpbENvbHVtbnM6IEFycmF5PEdyaWRDb2x1bW4+ID0gW107XHJcbiAgbW9kZWxlSW1wb3J0OiBNb2RlbGVJbXBvcnRDcmVhdGVSZXF1ZXN0ID0gbmV3IE1vZGVsZUltcG9ydENyZWF0ZVJlcXVlc3QoKVxyXG4gIGdldENvbG9ubmVCeUNsYXNzTmFtZUVuZFBvaW50OiBzdHJpbmcgPSBcIlwiXHJcbiAgZ2V0Q2xhc3NDaGlsZHNCeUNsYXNzTmFtZUVuZFBvaW50OiBzdHJpbmcgPSBcIlwiXHJcbiAgbW9kZWxlSW1wb3J0RW5kUG9pbnRzID0gSW1wb3J0RXhwb3J0RW5kUG9pbnRzXHJcbiAgX2J1c2lubmVzc0NsYXNzTmFtZTogc3RyaW5nID0gXCJcIlxyXG4gIGV2ZW50c1N1YmplY3RNb2RlbGVJbXBvcnREZXRhaWw6IFN1YmplY3Q8dm9pZD47XHJcbiAgb3BlbmVkTW9kZTogYW55XHJcbiAgc2hvd01vZGVsZUltcG9ydERldGFpbHM6IGJvb2xlYW4gPSBmYWxzZVxyXG4gIGZpbGVUeXBlSW1wb3J0RW51bVJlZiA9IEZpbGVUeXBlSW1wb3J0RW51bVxyXG4gIG1vZGVSZWYgPSBNb2RlcztcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfbW9kZWxlSW1wb3J0U2VydmljZTogTW9kZWxlSW1wb3J0U2VydmljZSxcclxuICAgIHByaXZhdGUgX25vdGlmaWNhdGlvblNlcnZpY2U6IFRzaU5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbiAgICBwdWJsaWMgb3ZlcnJpZGUgY29uZmlnOiBEeW5hbWljRGlhbG9nQ29uZmlnLCBwdWJsaWMgb3ZlcnJpZGUgcmVmPzogRHluYW1pY0RpYWxvZ1JlZiwpIHtcclxuICAgIHN1cGVyKHJlZiwgY29uZmlnKTtcclxuICAgIHRoaXMuZXZlbnRzU3ViamVjdE1vZGVsZUltcG9ydERldGFpbCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgICB0aGlzLl9idXNpbm5lc3NDbGFzc05hbWUgPSBjb25maWc/LmRhdGE/LmVudGl0eUJ1c2luZXNzQ2xhc3NcclxuICAgIHRoaXMuZ2V0Q2xhc3NDaGlsZHNCeUNsYXNzTmFtZUVuZFBvaW50ID0gSW1wb3J0RXhwb3J0RW5kUG9pbnRzLmdldENsYXNzQ2hpbGRzQXNLZXlWYWx1ZVBhaXIodGhpcy5fYnVzaW5uZXNzQ2xhc3NOYW1lKVxyXG4gICAgdGhpcy5pbml0TW9kZWxlSW1wb3J0RGV0YWlsQ29sdW1ucygpXHJcbiAgICB0aGlzLm9wZW5lZE1vZGUgPSB0aGlzLmNvbmZpZy5kYXRhPy5tb2RlIFxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfdXBkYXRlTW9kZWxlSW1wb3J0RnJvbUdyaWQoKSB7XHJcbiAgICB0aGlzLmV2ZW50c1N1YmplY3RNb2RlbGVJbXBvcnREZXRhaWwubmV4dCgpO1xyXG4gIH1cclxuXHJcbiAgb25TYXZlTW9kZWxlSW1wb3J0RGV0YWlscyhncmlkRGF0YTogQXJyYXk8TW9kZWxlSW1wb3J0RGV0YWlsPikge1xyXG4gICAgdGhpcy5tb2RlbGVJbXBvcnQubW9kZWxlSW1wb3J0RGV0YWlscyA9IGdyaWREYXRhXHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHN1cGVyLm5nT25Jbml0KClcclxuICAgIGlmICh0aGlzLmNvbmZpZy5kYXRhICE9IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLm1vZGVsZUltcG9ydC5jbGFzc2UgPSB0aGlzLmNvbmZpZz8uZGF0YT8uZW50aXR5QnVzaW5lc3NDbGFzc1xyXG4gICAgICB0aGlzLm1vZGVsZUltcG9ydC5mb3JtID0gdGhpcy5mb3JtTmFtZVxyXG5cclxuICAgICAgaWYgKHRoaXMub3BlbmVkTW9kZSA9PSBNb2Rlcy5lZGl0ICYmIHRoaXMuY29uZmlnLmRhdGE/LmlkICE9IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIHRoaXMuX21vZGVsZUltcG9ydFNlcnZpY2UuZ2V0QnlJZCh0aGlzLmNvbmZpZy5kYXRhPy5pZClcclxuICAgICAgICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICAgICAgICBuZXh0OiAoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMubW9kZWxlSW1wb3J0ID0gZGF0YVxyXG4gICAgICAgICAgICAgIHRoaXMudXBkYXRlVmFsdWVzV2l0aFBhcmVudENvbHVtTmFtZSgpXHJcbiAgICAgICAgICAgICAgdGhpcy50eXBlSW1wb3J0Q2hhbmdlKHRoaXMubW9kZWxlSW1wb3J0Lm9yZHJlT3VUaXRyZUNvbG9ubmUpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHVwZGF0ZVZhbHVlc1dpdGhQYXJlbnRDb2x1bU5hbWUoKSB7XHJcbiAgICBsZXQgZmlsdHJlZERhdGEgPSB0aGlzLm1vZGVsZUltcG9ydC5tb2RlbGVJbXBvcnREZXRhaWxzXHJcbiAgICAgIC5maWx0ZXIoeCA9PiB4Lm5vbUNsYXNzZURldGFpbCA9PSB1bmRlZmluZWQgfHwgeC5ub21DbGFzc2VEZXRhaWwgPT0gJycpXHJcbiAgICBmaWx0cmVkRGF0YS5mb3JFYWNoKGl0ZW0gPT4ge1xyXG4gICAgICBpdGVtLm5vbUNsYXNzZURldGFpbCA9IHRoaXMuX2J1c2lubmVzc0NsYXNzTmFtZVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHR5cGVJbXBvcnRDaGFuZ2UoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5pbml0TW9kZWxlSW1wb3J0RGV0YWlsQ29sdW1ucygpXHJcbiAgICBpZiAoZXZlbnQgPT0gVHlwZUltcG9ydEVudW0uVGl0cmVDb2xvbm5lKSB7XHJcbiAgICAgIGxldCBpbmRleCA9IHRoaXMubW9kZWxlSW1wb3J0RGV0YWlsQ29sdW1ucy5maW5kSW5kZXgoeCA9PiB4LmZpZWxkID09IFwibnVtZXJvXCIpXHJcbiAgICAgIGlmIChpbmRleCAhPSAtMSkge1xyXG4gICAgICAgIHRoaXMubW9kZWxlSW1wb3J0RGV0YWlsQ29sdW1ucy5zcGxpY2UoaW5kZXgsIDEpXHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAoZXZlbnQgPT0gVHlwZUltcG9ydEVudW0uT3JkcmVDb2xvbm5lKSB7XHJcbiAgICAgIGxldCBpbmRleCA9IHRoaXMubW9kZWxlSW1wb3J0RGV0YWlsQ29sdW1ucy5maW5kSW5kZXgoeCA9PiB4LmZpZWxkID09IFwibm9tQ29sb25uZUZpY2hpZXJcIilcclxuICAgICAgaWYgKGluZGV4ICE9IC0xKSB7XHJcbiAgICAgICAgdGhpcy5tb2RlbGVJbXBvcnREZXRhaWxDb2x1bW5zLnNwbGljZShpbmRleCwgMSlcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKGV2ZW50ICE9IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLnNob3dNb2RlbGVJbXBvcnREZXRhaWxzID0gdHJ1ZVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zaG93TW9kZWxlSW1wb3J0RGV0YWlscyA9IGZhbHNlXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXRNb2RlbGVJbXBvcnREZXRhaWxDb2x1bW5zKCkge1xyXG4gICAgdGhpcy5tb2RlbGVJbXBvcnREZXRhaWxDb2x1bW5zID0gW1xyXG4gICAgICB7XHJcbiAgICAgICAgZmllbGQ6IFwibm9tQ2xhc3NlRGV0YWlsXCIsXHJcbiAgICAgICAgaGVhZGVyOiBcIk5vbSBDbGFzc2UgRGV0YWlsXCIsXHJcbiAgICAgICAgdHlwZTogSW5wdXRUeXBlcy5TRUFSQ0hfQ09NQk8sXHJcbiAgICAgICAgbGlzdFNvdXJjZVVybDogdGhpcy5nZXRDbGFzc0NoaWxkc0J5Q2xhc3NOYW1lRW5kUG9pbnQsXHJcbiAgICAgICAgaWRGaWVsZDogXCJ2YWx1ZVwiLFxyXG4gICAgICAgIGxhYmVsRmllbGQ6IFwidmFsdWVcIixcclxuICAgICAgICBpc0ZpbHRlcmVkOiBmYWxzZSxcclxuICAgICAgICB3YXRjaEZvckNoYW5nZXM6IHRydWUsXHJcbiAgICAgICAgd2lkdGg6ICcyMHZ3J1xyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgZmllbGQ6IFwiY29sb25uZUNsYXNzZVwiLFxyXG4gICAgICAgIGhlYWRlcjogXCJDb2xvbm5lIENsYXNzZVwiLFxyXG4gICAgICAgIHR5cGU6IElucHV0VHlwZXMuU0VBUkNIX0NPTUJPLFxyXG4gICAgICAgIGxpc3RTb3VyY2VVcmw6IHRoaXMuYnVpbGRHZXRDaGlsZENsYXNzQ29sdW1ucyxcclxuICAgICAgICBpZEZpZWxkOiBcInZhbHVlXCIsXHJcbiAgICAgICAgbGFiZWxGaWVsZDogXCJ2YWx1ZVwiLFxyXG4gICAgICAgIGlzRmlsdGVyZWQ6IGZhbHNlLFxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgZmllbGQ6IFwibnVtZXJvXCIsXHJcbiAgICAgICAgaGVhZGVyOiBcIk9yZHJlXCIsXHJcbiAgICAgICAgdHlwZTogSW5wdXRUeXBlcy5JTlRFR0VSLFxyXG4gICAgICAgIHdhdGNoRm9yQ2hhbmdlczogdHJ1ZVxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgZmllbGQ6IFwibm9tQ29sb25uZUZpY2hpZXJcIixcclxuICAgICAgICBoZWFkZXI6IFwiTm9tIENvbG9ubmUgRmljaGllclwiLFxyXG4gICAgICAgIHR5cGU6IElucHV0VHlwZXMuVEVYVF9CT1gsXHJcbiAgICAgICAgd2F0Y2hGb3JDaGFuZ2VzOiB0cnVlXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBmaWVsZDogXCJub21Db2xvbm5lQ2xlZkV0cmFuZ2VyZVwiLFxyXG4gICAgICAgIGhlYWRlcjogXCJOb20gQ29sb25uZSBDbGUgRXRyYW5nw6hyZVwiLFxyXG4gICAgICAgIHdhdGNoRm9yQ2hhbmdlczogdHJ1ZSxcclxuICAgICAgICB0eXBlOiBJbnB1dFR5cGVzLlNFQVJDSF9DT01CTyxcclxuICAgICAgICBsaXN0U291cmNlVXJsOiB0aGlzLmJ1aWxkR2V0Q29sdW1tbkZvckZvcmVpZ25LZXlDbGFzcyxcclxuICAgICAgICBpZEZpZWxkOiBcImtleVwiLFxyXG4gICAgICAgIGxhYmVsRmllbGQ6IFwidmFsdWVcIixcclxuICAgICAgICBpc0ZpbHRlcmVkOiBmYWxzZSxcclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIGZpZWxkOiBcImNsZWZNaXNlQUpvdXJcIixcclxuICAgICAgICBoZWFkZXI6IFwiQ2zDqSBkZSBtaXNlIMOgIGpvdXJcIixcclxuICAgICAgICB0eXBlOiBJbnB1dFR5cGVzLkNIRUNLQk9YLFxyXG4gICAgICAgIHdhdGNoRm9yQ2hhbmdlczogdHJ1ZSxcclxuICAgICAgICBpc0JpbmFyeTogdHJ1ZVxyXG4gICAgICB9LFxyXG4gICAgXVxyXG4gIH1cclxuXHJcbiAgYnVpbGRHZXRDb2x1bW1uRm9yRm9yZWlnbktleUNsYXNzKGN1cnJlbnRSb3dJdGVtOiBNb2RlbGVJbXBvcnREZXRhaWwpIHtcclxuICAgIGxldCBjb2x1bW5OYW1lID0gY3VycmVudFJvd0l0ZW0/LmNvbG9ubmVDbGFzc2UgPz8gXCJcIlxyXG4gICAgbGV0IHBhcmVudEVudGl0eU5hbWUgPSBjdXJyZW50Um93SXRlbT8ubm9tQ2xhc3NlRGV0YWlsID8/IFwiXCJcclxuICAgIHJldHVybiBJbXBvcnRFeHBvcnRFbmRQb2ludHMuZ2V0Q29sb25uZXNCeUNsYXNzTmFtZUFzS2V5VmFsdWVQYWlyKHBhcmVudEVudGl0eU5hbWUsIGNvbHVtbk5hbWUpXHJcbiAgfVxyXG5cclxuICBidWlsZEdldENoaWxkQ2xhc3NDb2x1bW5zKGN1cnJlbnRSb3dJdGVtOiBNb2RlbGVJbXBvcnREZXRhaWwpIHtcclxuICAgIGxldCBwYXJlbnRFbnRpdHlOYW1lID0gY3VycmVudFJvd0l0ZW0/Lm5vbUNsYXNzZURldGFpbCA/PyBcIlwiXHJcbiAgICAvLyBpZiAocGFyZW50RW50aXR5TmFtZT8uZW5kc1dpdGgoJ3MnKSkge1xyXG4gICAgLy8gICBwYXJlbnRFbnRpdHlOYW1lID0gcGFyZW50RW50aXR5TmFtZS5zbGljZSgwLCAtMSk7XHJcbiAgICAvLyB9XHJcbiAgICByZXR1cm4gSW1wb3J0RXhwb3J0RW5kUG9pbnRzLmdldENvbG9ubmVzQnlDbGFzc05hbWVBc0tleVZhbHVlUGFpcihwYXJlbnRFbnRpdHlOYW1lLCBcIlwiKVxyXG4gIH1cclxuXHJcbiAgYnVpbGRHZXRDaGlsZENoaWxkQ2xhc3MoY3VycmVudFJvd0l0ZW06IE1vZGVsZUltcG9ydERldGFpbCkge1xyXG4gICAgbGV0IGNsYXNzTmFtZSA9IGN1cnJlbnRSb3dJdGVtPy5ub21DbGFzc2VEZXRhaWxcclxuICAgIGlmIChjbGFzc05hbWU/LmVuZHNXaXRoKCdzJykpIHtcclxuICAgICAgY2xhc3NOYW1lID0gY2xhc3NOYW1lLnNsaWNlKDAsIC0xKTtcclxuICAgIH1cclxuICAgIHJldHVybiBJbXBvcnRFeHBvcnRFbmRQb2ludHMuZ2V0Q2xhc3NDaGlsZHNBc0tleVZhbHVlUGFpcihjbGFzc05hbWUpXHJcbiAgfVxyXG5cclxuICBkZWxldGVWYWx1ZUZyb21QYXJlbnRNb2RlbCgpIHtcclxuICAgIGxldCBmaWx0cmVkRGF0YSA9IHRoaXMubW9kZWxlSW1wb3J0Lm1vZGVsZUltcG9ydERldGFpbHNcclxuICAgICAgLmZpbHRlcih4ID0+IHgubm9tQ2xhc3NlRGV0YWlsID09IHRoaXMuX2J1c2luZXNzQ2xhc3MpXHJcbiAgICBmaWx0cmVkRGF0YS5mb3JFYWNoKGl0ZW0gPT4ge1xyXG4gICAgICBpdGVtLm5vbUNsYXNzZURldGFpbCA9IHVuZGVmaW5lZFxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIHNhdmUoKTogdm9pZCB7XHJcbiAgICBzdXBlci5zYXZlKClcclxuICAgIHRoaXMuc2F2aW5nID0gdHJ1ZVxyXG4gICAgdGhpcy5pc2xvYWRpbmcgPSB0cnVlXHJcbiAgICB0aGlzLl91cGRhdGVNb2RlbGVJbXBvcnRGcm9tR3JpZCgpXHJcbiAgICB0aGlzLmRlbGV0ZVZhbHVlRnJvbVBhcmVudE1vZGVsKClcclxuICAgIGlmICh0aGlzLm9wZW5lZE1vZGUgPT0gTW9kZXMuY3JlYXRlKSB7XHJcbiAgICAgIHRoaXMuX21vZGVsZUltcG9ydFNlcnZpY2UuY3JlYXRlKHRoaXMubW9kZWxlSW1wb3J0KS5zdWJzY3JpYmUoXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbmV4dDogKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9ub3RpZmljYXRpb25TZXJ2aWNlLnN1Y2Nlc3ModGhpcy5sKExvY2FsaXphdGlvbktleXMuc2F2ZWRTdWNjZXNzZnVsbHkpKTtcclxuICAgICAgICAgICAgdGhpcy5oaWRlKHRydWUpO1xyXG4gICAgICAgICAgICB0aGlzLm9uU2F2ZS5lbWl0KCk7XHJcbiAgICAgICAgICAgIHRoaXMuaXNsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICApXHJcbiAgICB9XHJcbiAgICBlbHNlIGlmICh0aGlzLm9wZW5lZE1vZGUgPT0gTW9kZXMuZWRpdCAmJiB0aGlzLm1vZGVsZUltcG9ydC51aWQgIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuX21vZGVsZUltcG9ydFNlcnZpY2UudXBkYXRlKHRoaXMubW9kZWxlSW1wb3J0LCB0aGlzLm1vZGVsZUltcG9ydC51aWQpLnN1YnNjcmliZShcclxuICAgICAgICB7XHJcbiAgICAgICAgICBuZXh0OiAoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9ub3RpZmljYXRpb25TZXJ2aWNlLnN1Y2Nlc3ModGhpcy5sKExvY2FsaXphdGlvbktleXMudXBkYXRlZFN1Y2Nlc3NmdWxseSkpO1xyXG4gICAgICAgICAgICB0aGlzLmhpZGUodHJ1ZSk7XHJcbiAgICAgICAgICAgIHRoaXMub25TYXZlLmVtaXQoKTtcclxuICAgICAgICAgICAgdGhpcy5pc2xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIClcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiIsIjx0c2ktZm9ybSBjbGFzcz1cImZvcm0taG9yaXpvbnRhbFwiIFtpc0xvYWRpbmddPVwiaXNsb2FkaW5nXCIgYXV0b2NvbXBsZXRlPVwib2ZmXCI+XHJcbiAgPFRzaS1Nb2RhbC1IZWFkZXIgW2lucHV0VGl0bGVdPVwiaGVhZGVyIHwgbW9kYWxMYWJlbCA6IG1vZGUgOiAnTW9kw6hsZSBpbXBvcnQnXCJcclxuICAgIChvbkNsb3NlQ2xpY2spPVwiaGlkZSgpXCI+PC9Uc2ktTW9kYWwtSGVhZGVyPlxyXG5cclxuICA8ZmllbGRzZXQgW2Rpc2FibGVkXT1cImlzRGVsZXRlTW9kZSgpIHx8IGlzQ29uc3VsdE1vZGUoKSBcIj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwibW9kYWwtYm9keVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZ3JpZFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtOFwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdyaWRcIj5cclxuXHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgY2xhc3M9XCJjb2wtM1wiIFtsYWJlbFZhbHVlXT1cIidOb20gTW9kZWxlJ1wiPjwvVHNpLUxhYmVsPlxyXG4gICAgICAgICAgICA8VHNpLVRleHQtQm94IFsoaW5wdXRGaWVsZCldPVwibW9kZWxlSW1wb3J0Lm5vbVwiIFtkaXNhYmxlZF09XCJmYWxzZVwiIGNsYXNzPVwiY29sLTlcIlxyXG4gICAgICAgICAgICAgIFtpbnB1dE5hbWVdPVwiJ25vbU1vZGVsZSdcIj48L1RzaS1UZXh0LUJveD5cclxuXHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgY2xhc3M9XCJjb2wtM1wiIFtsYWJlbFZhbHVlXT1cIidOb20gRm9ybSdcIj48L1RzaS1MYWJlbD5cclxuICAgICAgICAgICAgPFRzaS1UZXh0LUJveCBbKGlucHV0RmllbGQpXT1cIm1vZGVsZUltcG9ydC5mb3JtXCIgW2Rpc2FibGVkXT1cInRydWVcIiBjbGFzcz1cImNvbC05XCJcclxuICAgICAgICAgICAgICBbaW5wdXROYW1lXT1cIidub21Gb3JtJ1wiPjwvVHNpLVRleHQtQm94PlxyXG5cclxuICAgICAgICAgICAgPFRzaS1MYWJlbCBjbGFzcz1cImNvbC0zXCIgW2xhYmVsVmFsdWVdPVwiJ05vbSBDbGFzc2UnXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgIDxUc2ktVGV4dC1Cb3ggWyhpbnB1dEZpZWxkKV09XCJtb2RlbGVJbXBvcnQuY2xhc3NlXCIgW2Rpc2FibGVkXT1cInRydWVcIiBjbGFzcz1cImNvbC05XCJcclxuICAgICAgICAgICAgICBbaW5wdXROYW1lXT1cIidub21DbGFzc2UnXCI+PC9Uc2ktVGV4dC1Cb3g+XHJcblxyXG4gICAgICAgICAgICA8VHNpLUxhYmVsIGNsYXNzPVwiY29sLTNcIiBbbGFiZWxWYWx1ZV09XCInUHJlbWllcmUgTGlnbmUgSW1wb3J0J1wiPjwvVHNpLUxhYmVsPlxyXG4gICAgICAgICAgICA8VHNpLUludGVnZXIgWyhpbnB1dEZpZWxkKV09XCJtb2RlbGVJbXBvcnQucHJlbWllcmVMaWduZUltcG9ydFwiIFtkaXNhYmxlZF09XCJmYWxzZVwiIGNsYXNzPVwiY29sLTlcIlxyXG4gICAgICAgICAgICAgIFtpbnB1dE5hbWVdPVwiJ3ByZW1pZXJlTGlnbmVJbXBvcnQnXCI+PC9Uc2ktSW50ZWdlcj5cclxuXHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgY2xhc3M9XCJjb2wtM1wiIFtsYWJlbFZhbHVlXT1cIidEZXJuaWVyZSBMaWduZSBJbXBvcnQnXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgIDxUc2ktSW50ZWdlciBbKGlucHV0RmllbGQpXT1cIm1vZGVsZUltcG9ydC5kZXJuaWVyTGlnbmVJbXBvcnRcIiBbZGlzYWJsZWRdPVwiZmFsc2VcIiBjbGFzcz1cImNvbC05XCJcclxuICAgICAgICAgICAgICBbaW5wdXROYW1lXT1cIidkZXJuaWVyTGlnbmVJbXBvcnQnXCI+PC9Uc2ktSW50ZWdlcj5cclxuXHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgY2xhc3M9XCJjb2wtM1wiIFtsYWJlbFZhbHVlXT1cIidBcnJldGUgbG9ycyBkZSBwcmVtaWVyIGVycmV1ciAnXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgIDxUc2ktQ2hlY2tCb3ggWyhpbnB1dEZpZWxkKV09XCJtb2RlbGVJbXBvcnQuYXJyZXRlUHJlbWllckVycmV1clwiIFtkaXNhYmxlZF09XCJmYWxzZVwiIGNsYXNzPVwiY29sLTlcIlxyXG4gICAgICAgICAgICAgIFtpbnB1dE5hbWVdPVwiJ2FycmV0ZVByZW1pZXJFcnJldXInXCI+PC9Uc2ktQ2hlY2tCb3g+XHJcblxyXG4gICAgICAgICAgICA8VHNpLUxhYmVsIGNsYXNzPVwiY29sLTNcIiBbbGFiZWxWYWx1ZV09XCInTW9kZSBtaXNlIMOgIGpvdXInXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgIDxUc2ktQ2hlY2tCb3ggWyhpbnB1dEZpZWxkKV09XCJtb2RlbGVJbXBvcnQubW9kZU1pc2VBSm91clwiIFtkaXNhYmxlZF09XCJmYWxzZVwiIGNsYXNzPVwiY29sLTlcIlxyXG4gICAgICAgICAgICAgIFtpbnB1dE5hbWVdPVwiJ21vZGVNaXNlQUpvdXInXCIgW2lzQmluYXJ5XT1cInRydWVcIj48L1RzaS1DaGVja0JveD5cclxuXHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgY2xhc3M9XCJjb2wtM1wiIFtsYWJlbFZhbHVlXT1cIidPcmRyZSBPdSBUaXRyZSBDb2xvbm5lJ1wiPjwvVHNpLUxhYmVsPlxyXG4gICAgICAgICAgICA8VHNpLVNlYXJjaC1Db21ibyAoYmluZENoYW5nZSk9XCJ0eXBlSW1wb3J0Q2hhbmdlKCRldmVudClcIiBjbGFzcz1cImNvbC05XCIgW2xpc3RTb3VyY2VVcmxdPVwiXHJcbiAgICAgICAgICAgICAgICAgIG1vZGVsZUltcG9ydEVuZFBvaW50cy5nZXRUeXBlTmF0dXJlRG9jdW1lbnRFbnVtKClcclxuICAgICAgICAgICAgICAgIFwiIFsoYmluZCldPVwibW9kZWxlSW1wb3J0Lm9yZHJlT3VUaXRyZUNvbG9ubmVcIiBpZC1maWVsZD1cImtleVwiIGxhYmVsLWZpZWxkPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgPC9Uc2ktU2VhcmNoLUNvbWJvPlxyXG5cclxuICAgICAgICAgICAgPFRzaS1MYWJlbCBjbGFzcz1cImNvbC0zXCIgW2xhYmVsVmFsdWVdPVwiJ1R5cGUgZGUgZmljaGllcidcIj48L1RzaS1MYWJlbD5cclxuICAgICAgICAgICAgPFRzaS1TZWFyY2gtQ29tYm8gY2xhc3M9XCJjb2wtOVwiIFtsaXN0U291cmNlVXJsXT1cIlxyXG4gICAgICAgICAgICAgICAgICBtb2RlbGVJbXBvcnRFbmRQb2ludHMuZ2V0SW1wb3J0RmlsZVR5cGVFbnVtKClcclxuICAgICAgICAgICAgICAgIFwiIFsoYmluZCldPVwibW9kZWxlSW1wb3J0LmZpbGVUeXBlXCIgaWQtZmllbGQ9XCJrZXlcIiBsYWJlbC1maWVsZD1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgIDwvVHNpLVNlYXJjaC1Db21ibz5cclxuXHJcbiAgICAgICAgICAgICAgPFRzaS1MYWJlbCAqbmdJZj1cIm1vZGVsZUltcG9ydC5maWxlVHlwZSA9PSBmaWxlVHlwZUltcG9ydEVudW1SZWYuQ1NWXCIgY2xhc3M9XCJjb2wtM1wiXHJcbiAgICAgICAgICAgICAgICBbbGFiZWxWYWx1ZV09XCInU8OpcGFyYXRldXIgZGUgZmljaGllciBDU1YnXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgICAgPFRzaS1TZWFyY2gtQ29tYm8gKm5nSWY9XCJtb2RlbGVJbXBvcnQuZmlsZVR5cGUgPT0gZmlsZVR5cGVJbXBvcnRFbnVtUmVmLkNTVlwiIGNsYXNzPVwiY29sLTlcIlxyXG4gICAgICAgICAgICAgICAgW2xpc3RTb3VyY2VVcmxdPVwiXHJcbiAgICAgICAgICAgICAgICAgIG1vZGVsZUltcG9ydEVuZFBvaW50cy5nZXRDc3ZGaWxlU2VwYXJhdG9yRW51bSgpXHJcbiAgICAgICAgICAgICAgICBcIiBbKGJpbmQpXT1cIm1vZGVsZUltcG9ydC5jc3ZGaWxlU2VwYXJhdG9yXCIgaWQtZmllbGQ9XCJrZXlcIiBsYWJlbC1maWVsZD1cInZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgPC9Uc2ktU2VhcmNoLUNvbWJvPlxyXG5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuXHJcbiAgICA8ZGl2ICpuZ0lmPVwic2hvd01vZGVsZUltcG9ydERldGFpbHNcIj5cclxuICAgICAgPFRzaS1HZW5lcmljLUVkaXRhYmxlLUdyaWQgW2dyaWREYXRhXT1cIm1vZGVsZUltcG9ydC5tb2RlbGVJbXBvcnREZXRhaWxzXCJcclxuICAgICAgICBbc2F2ZUV2ZW50XT1cImV2ZW50c1N1YmplY3RNb2RlbGVJbXBvcnREZXRhaWwuYXNPYnNlcnZhYmxlKClcIlxyXG4gICAgICAgIChyb3dEZWxldGVkRXZlbnRFbWl0dGVyKT1cIm9uU2F2ZU1vZGVsZUltcG9ydERldGFpbHMoJGV2ZW50KVwiIFtjb2x1bW5zXT1cIm1vZGVsZUltcG9ydERldGFpbENvbHVtbnNcIlxyXG4gICAgICAgIFtwYXJlbnRdPVwidGhpc1wiIFtzaG93U2F2ZUJ1dHRvbl09XCJmYWxzZVwiPlxyXG4gICAgICA8L1RzaS1HZW5lcmljLUVkaXRhYmxlLUdyaWQ+XHJcbiAgICA8L2Rpdj5cclxuXHJcblxyXG4gIDwvZmllbGRzZXQ+XHJcblxyXG4gIDxUc2ktTW9kYWwtRm9vdGVyIFtjYW5jZWxEaXNhYmxlZF09XCJzYXZpbmdcIiBbc2F2ZURpc2FibGVkXT1cImlzU3VibWl0RGlzYWJsZWQoKVwiIChvbkNhbmNlbENsaWNrKT1cImhpZGUoKVwiXHJcbiAgICAob25TYXZlQ2xpY2spPVwic2F2ZSgpXCIgW3Nob3dTYXZlQW5kQ2xvc2VCdXR0b25dPVwibW9kZSA9PSBtb2RlUmVmLmRlbGV0ZVwiPjwvVHNpLU1vZGFsLUZvb3Rlcj5cclxuXHJcbjwvdHNpLWZvcm0+Il19
|
package/esm2022/lib/tsi-components/manage-reporting/add-report-popup/add-report-popup.component.mjs
CHANGED
|
@@ -199,7 +199,7 @@ export class AddReportPopupComponent extends TsiFormComponentBaseComponent {
|
|
|
199
199
|
});
|
|
200
200
|
}
|
|
201
201
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AddReportPopupComponent, deps: [{ token: i1.DynamicDialogRef }, { token: i2.ReportingService }, { token: i1.DynamicDialogConfig }, { token: i3.TsiNotificationService }, { token: i4.DashboardModuleService }, { token: i5.TsiConfirmationService }, { token: i6.HttpClient }, { token: i7.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
202
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: AddReportPopupComponent, selector: "app-add-report-popup", providers: [...appProviders], usesInheritance: true, ngImport: i0, template: "<tsi-form class=\"form-horizontal\" autocomplete=\"off\" (onSubmit)=\"save()\">\r\n <h4>\r\n <Tsi-Label [labelValue]=\"'Nouveau Rapport'\"></Tsi-Label>\r\n </h4>\r\n <p-panel header=\"Informations\">\r\n <div class=\"grid \">\r\n <!-- Type -->\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_type\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-9\">\r\n <Tsi-Search-Combo [disabled]=\"this.mode !== modes.create\" id-field=\"key\" label-field=\"value\"\r\n [(bind)]=\"report.reportType\" [datasource]=\"dataSource\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n <!-- Nom du rapport -->\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_reportName\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-9\">\r\n <Tsi-Text-Box [inputName]=\"'reportName'\" [(inputField)]=\"report.reportName\"></Tsi-Text-Box>\r\n </div>\r\n <!-- Nom abr\u00E9g\u00E9 -->\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_reportNameAbrege\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-3\">\r\n <Tsi-Text-Box [inputName]=\"'reportNameAbrege'\" [(inputField)]=\"report.reportNameAbrege\"></Tsi-Text-Box>\r\n </div>\r\n <div class=\"flex col-6\">\r\n <!-- Ordre de tri -->\r\n <div class=\"flex gap-4 w-6\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_triOrdre\"></Tsi-Label>\r\n <Tsi-Integer [inputName]=\"'triOrdre'\" [(inputField)]=\"report.triOrdre\"></Tsi-Integer>\r\n </div>\r\n <!-- Afficher dashboard -->\r\n <div class=\"flex gap-4 w-6\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_display\"></Tsi-Label>\r\n <Tsi-CheckBox [inputName]=\"'display'\" [(inputField)]=\"report.display\"></Tsi-CheckBox>\r\n </div>\r\n </div>\r\n <!-- Module -->\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_Module\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-9\">\r\n <Tsi-Search-Combo id-field=\"code\" label-field=\"libelle\" [multiple]=\"false\" [(bind)]=\"report.module\"\r\n [datasource]=\"modules\" [isFiltered]=\"false\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n <!-- Deuxi\u00E9me Impress -->\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_imppress\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-5\">\r\n <Tsi-Text-Box [disabled]=\"true\" [inputName]=\"'imppress'\" [(inputField)]=\"report.impress\"></Tsi-Text-Box>\r\n </div>\r\n <!-- Edition unique -->\r\n <div class=\"col-4 col-form-label flx\">\r\n <Tsi-CheckBox [inputName]=\"'EditionUnique'\" [(inputField)]=\"report.editionUnique\"></Tsi-CheckBox> \r\n <Tsi-Label labelValue=\"administration_edition_personnalise_EditionUnique\"></Tsi-Label>\r\n </div>\r\n <!-- Endpoint -->\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_endpoint\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-9\">\r\n <Tsi-Search-Combo *ngIf=\"!isReportForFiche && !enableMultiSelectEndpoints\" id-field=\"key\" label-field=\"value\"\r\n [disabled]=\"modes.edit === mode || isEditionPersonnalise === false\"\r\n (selectedLabelChange)=\"selectedEndpointChange($event)\" [(bind)]=\"report.endPointKey\"\r\n [elementSourceUrl]=\"administrationEndpoints.getApiAsKeyValuePair()\"\r\n [listSourceUrl]=\"administrationEndpoints.getAllApiAsKeyValuePair()\" [isFiltered]=\"true\">\r\n </Tsi-Search-Combo>\r\n\r\n <Tsi-Search-Combo *ngIf=\"customReportingMode && !enableMultiSelectEndpoints \" id-field=\"value\" label-field=\"value\"\r\n (selectedLabelChange)=\"selectedEndpointChange($event)\" [(bind)]=\"report.endPointKey\"\r\n [listSourceUrl]=\"administrationEndpoints.getAllApiAsKeyValuePairByBusinessClassName(this.reportBusinessClass)\"\r\n [isFiltered]=\"false\">\r\n </Tsi-Search-Combo>\r\n\r\n <Tsi-Search-Combo *ngIf=\"isReportForFiche\"\r\n id-field=\"value\"\r\n label-field=\"value\"\r\n [(bind)]=\"selectedEndpoints\"\r\n [listSourceUrl]=\"administrationEndpoints.getAllApiAsKeyValuePairByBusinessClassName(this.reportBusinessClass)\"\r\n [isFiltered]=\"false\"\r\n [multiple]=\"true\"\r\n (selectedLabelChange)=\"selectedEndpointChange($event)\">\r\n </Tsi-Search-Combo>\r\n\r\n <p-multiSelect *ngIf=\"!isReportForFiche && enableMultiSelectEndpoints\" [options]=\"endpointsOptions\" [(ngModel)]=\"selectedEndpoints\"\r\n selectedItemsLabel=\"{0} {{ 'endpoint_selected' | localize }}\" optionLabel=\"value\"\r\n optionValue=\"value\"\r\n [style]=\"{'min-width': '180px'}\" placeholder=\"{{ 'shared_reporting_choose_endpoints' | localize }}\"\r\n (onPanelShow)=\"handleOpen()\"\r\n [filter]=\"true\"\r\n (onFilter)=\"onFilter($event)\"\r\n display=\"chip\"\r\n class=\"rounded-multiselect\">\r\n <ng-template let-option pTemplate=\"item\">\r\n <div class=\"flex items-center gap-2\">\r\n <span>{{ option.value}}</span>\r\n </div>\r\n </ng-template>\r\n </p-multiSelect>\r\n </div>\r\n\r\n\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_formName\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-6\">\r\n <Tsi-Text-Box [disabled]=\"true\" [inputName]=\"'formName'\"\r\n [(inputField)]=\"report.formName\"></Tsi-Text-Box>\r\n </div>\r\n <!-- Param -->\r\n <div *ngIf=\"isGetByIdRequest\" class=\"col-3 col-form-label\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_param\"></Tsi-Label>\r\n </div>\r\n <div *ngIf=\"isGetByIdRequest\" class=\"col-9\">\r\n <Tsi-Text-Box [inputName]=\"'param'\" [(inputField)]=\"report.param\"></Tsi-Text-Box>\r\n </div>\r\n </div>\r\n </p-panel>\r\n <br />\r\n <p-panel header=\"Configuration Pivot Grid\">\r\n <div class=\"grid \">\r\n <!-- Class or view -->\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label [labelValue]=\"'Class or view'\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-9\">\r\n <Tsi-Text-Box [inputName]=\"'dddd'\"></Tsi-Text-Box>\r\n </div>\r\n <!-- Query -->\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label [labelValue]=\"'Query'\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-9 col-form-label\">\r\n <Tsi-Text-Area [rows]=\"2\"></Tsi-Text-Area>\r\n </div>\r\n </div>\r\n </p-panel>\r\n\r\n <Tsi-Modal-Footer [cancelDisabled]=\"saving\" [saveDisabled]=\"saving\" (onCancelClick)=\"hide()\" \r\n [showSaveAndCloseButton]=\"false\"></Tsi-Modal-Footer>\r\n</tsi-form>", styles: [".flx{display:flex;justify-content:center;align-items:center}::ng-deep .rounded-multiselect .p-multiselect{border-radius:12px!important}::ng-deep .rounded-multiselect .p-multiselect-label{border-radius:12px!important}\n"], dependencies: [{ kind: "directive", type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i9.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i10.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i11.MultiSelect, selector: "p-multiSelect", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }, { kind: "component", type: i12.Panel, selector: "p-panel", inputs: ["toggleable", "header", "collapsed", "style", "styleClass", "iconPos", "expandIcon", "collapseIcon", "showHeader", "toggler", "transitionOptions"], outputs: ["collapsedChange", "onBeforeToggle", "onAfterToggle"] }, { kind: "component", type: i13.TsiSearchComboComponent, selector: "Tsi-Search-Combo", inputs: ["elementSourceUrl", "listSourceUrl", "listSourceParams", "id-field", "label-field", "multiple", "sort", "showClear", "reloadDataSource", "isFiltered", "selectedLabel", "maxWidth", "businessClass", "searchDebounceTime", "comboType", "statusMetadata", "currentRowItem", "datasource", "bind", "maxSelectedLabels", "tooltipMaxDisplayedItems", "bindMode", "showSearchButton", "showAddButton", "showConsultButton", "showUpdateButton"], outputs: ["bindChange", "datasource-loaded", "init", "isLoaded", "selectedLabelChange", "onClick", "onSearchButtonClick", "selectionChange"] }, { kind: "component", type: i14.TsiCheckboxComponent, selector: "Tsi-CheckBox", inputs: ["class", "isBinary", "checked", "tooltipText", "tooltipPosition"], outputs: ["inputFieldChange", "checkedChange"] }, { kind: "component", type: i15.TsiIntegerComponent, selector: "Tsi-Integer", inputs: ["class", "minValue", "maxValue", "delayChangeTime"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i16.TsiTextAreaComponent, selector: "Tsi-Text-Area", inputs: ["rows", "cols"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i17.TsiTextBoxComponent, selector: "Tsi-Text-Box", inputs: ["textBoxType", "autocomplete"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i18.TsiLabelComponent, selector: "Tsi-Label", inputs: ["labelValue", "styleClass", "infoText"] }, { kind: "component", type: i19.TsiModalFooterComponent, selector: "Tsi-Modal-Footer", inputs: ["cancelDisabled", "saveDisabled", "cancelLabel", "saveLabel", "isConsult", "isDuplicate", "isOnlyCreate", "additionalButtonLabel", "additionalButtonIcon", "additionalButtonDisabled", "showAdditionalButton", "showSaveAndCloseButton", "mode"], outputs: ["onCancelClick", "onSaveClick", "onAdditionalButtonClick"] }, { kind: "component", type: i20.TsiFormComponent, selector: "tsi-form", inputs: ["class", "autocomplete", "optionalEndpoints", "disabled", "isLoading", "modalSize", "formEndpoint", "formName", "isReportingToolbarDisabled", "isCreateOnly", "statusInputDisabled"], outputs: ["onSave", "onSubmit", "onSubmitFormWorkflowConfiguration", "formRefChange", "onStatusChange"] }, { kind: "pipe", type: i21.LocalizePipe, name: "localize" }] }); }
|
|
202
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: AddReportPopupComponent, selector: "app-add-report-popup", providers: [...appProviders], usesInheritance: true, ngImport: i0, template: "<tsi-form class=\"form-horizontal\" autocomplete=\"off\" (onSubmit)=\"save()\">\r\n <h4>\r\n <Tsi-Label [labelValue]=\"'Nouveau Rapport'\"></Tsi-Label>\r\n </h4>\r\n <p-panel header=\"Informations\">\r\n <div class=\"grid \">\r\n <!-- Type -->\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_type\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-9\">\r\n <Tsi-Search-Combo [disabled]=\"this.mode !== modes.create\" id-field=\"key\" label-field=\"value\"\r\n [(bind)]=\"report.reportType\" [datasource]=\"dataSource\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n <!-- Nom du rapport -->\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_reportName\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-9\">\r\n <Tsi-Text-Box [inputName]=\"'reportName'\" [(inputField)]=\"report.reportName\"></Tsi-Text-Box>\r\n </div>\r\n <!-- Nom abr\u00E9g\u00E9 -->\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_reportNameAbrege\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-3\">\r\n <Tsi-Text-Box [inputName]=\"'reportNameAbrege'\" [(inputField)]=\"report.reportNameAbrege\"></Tsi-Text-Box>\r\n </div>\r\n <div class=\"flex col-6\">\r\n <!-- Ordre de tri -->\r\n <div class=\"flex gap-4 w-6\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_triOrdre\"></Tsi-Label>\r\n <Tsi-Integer [inputName]=\"'triOrdre'\" [(inputField)]=\"report.triOrdre\"></Tsi-Integer>\r\n </div>\r\n <!-- Afficher dashboard -->\r\n <div class=\"flex gap-4 w-6\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_display\"></Tsi-Label>\r\n <Tsi-CheckBox [inputName]=\"'display'\" [(inputField)]=\"report.display\"></Tsi-CheckBox>\r\n </div>\r\n </div>\r\n <!-- Module -->\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_Module\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-9\">\r\n <Tsi-Search-Combo id-field=\"code\" label-field=\"libelle\" [multiple]=\"false\" [(bind)]=\"report.module\"\r\n [datasource]=\"modules\" [isFiltered]=\"false\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n <!-- Deuxi\u00E9me Impress -->\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_imppress\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-5\">\r\n <Tsi-Text-Box [disabled]=\"true\" [inputName]=\"'imppress'\" [(inputField)]=\"report.impress\"></Tsi-Text-Box>\r\n </div>\r\n <!-- Edition unique -->\r\n <div class=\"col-4 col-form-label flx\">\r\n <Tsi-CheckBox [inputName]=\"'EditionUnique'\" [(inputField)]=\"report.editionUnique\"></Tsi-CheckBox> \r\n <Tsi-Label labelValue=\"administration_edition_personnalise_EditionUnique\"></Tsi-Label>\r\n </div>\r\n <!-- Endpoint -->\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_endpoint\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-9\">\r\n <Tsi-Search-Combo *ngIf=\"!isReportForFiche && !enableMultiSelectEndpoints\" id-field=\"key\" label-field=\"value\"\r\n [disabled]=\"modes.edit === mode || isEditionPersonnalise === false\"\r\n (selectedLabelChange)=\"selectedEndpointChange($event)\" [(bind)]=\"report.endPointKey\"\r\n [elementSourceUrl]=\"administrationEndpoints.getApiAsKeyValuePair()\"\r\n [listSourceUrl]=\"administrationEndpoints.getAllApiAsKeyValuePair()\" [isFiltered]=\"true\">\r\n </Tsi-Search-Combo>\r\n\r\n <Tsi-Search-Combo *ngIf=\"customReportingMode && !enableMultiSelectEndpoints \" id-field=\"value\" label-field=\"value\"\r\n (selectedLabelChange)=\"selectedEndpointChange($event)\" [(bind)]=\"report.endPointKey\"\r\n [listSourceUrl]=\"administrationEndpoints.getAllApiAsKeyValuePairByBusinessClassName(this.reportBusinessClass)\"\r\n [isFiltered]=\"false\">\r\n </Tsi-Search-Combo>\r\n\r\n <Tsi-Search-Combo *ngIf=\"isReportForFiche\"\r\n id-field=\"value\"\r\n label-field=\"value\"\r\n [(bind)]=\"selectedEndpoints\"\r\n [listSourceUrl]=\"administrationEndpoints.getAllApiAsKeyValuePairByBusinessClassName(this.reportBusinessClass)\"\r\n [isFiltered]=\"false\"\r\n [multiple]=\"true\"\r\n (selectedLabelChange)=\"selectedEndpointChange($event)\">\r\n </Tsi-Search-Combo>\r\n\r\n <p-multiSelect *ngIf=\"!isReportForFiche && enableMultiSelectEndpoints\" [options]=\"endpointsOptions\" [(ngModel)]=\"selectedEndpoints\"\r\n selectedItemsLabel=\"{0} {{ 'endpoint_selected' | localize }}\" optionLabel=\"value\"\r\n optionValue=\"value\"\r\n [style]=\"{'min-width': '180px'}\" placeholder=\"{{ 'shared_reporting_choose_endpoints' | localize }}\"\r\n (onPanelShow)=\"handleOpen()\"\r\n [filter]=\"true\"\r\n (onFilter)=\"onFilter($event)\"\r\n display=\"chip\"\r\n class=\"rounded-multiselect\">\r\n <ng-template let-option pTemplate=\"item\">\r\n <div class=\"flex items-center gap-2\">\r\n <span>{{ option.value}}</span>\r\n </div>\r\n </ng-template>\r\n </p-multiSelect>\r\n </div>\r\n\r\n\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_formName\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-6\">\r\n <Tsi-Text-Box [disabled]=\"true\" [inputName]=\"'formName'\"\r\n [(inputField)]=\"report.formName\"></Tsi-Text-Box>\r\n </div>\r\n <!-- Param -->\r\n <div *ngIf=\"isGetByIdRequest\" class=\"col-3 col-form-label\">\r\n <Tsi-Label labelValue=\"administration_edition_personnalise_param\"></Tsi-Label>\r\n </div>\r\n <div *ngIf=\"isGetByIdRequest\" class=\"col-9\">\r\n <Tsi-Text-Box [inputName]=\"'param'\" [(inputField)]=\"report.param\"></Tsi-Text-Box>\r\n </div>\r\n </div>\r\n </p-panel>\r\n <br />\r\n <p-panel header=\"Configuration Pivot Grid\">\r\n <div class=\"grid \">\r\n <!-- Class or view -->\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label [labelValue]=\"'Class or view'\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-9\">\r\n <Tsi-Text-Box [inputName]=\"'dddd'\"></Tsi-Text-Box>\r\n </div>\r\n <!-- Query -->\r\n <div class=\"col-3 col-form-label\">\r\n <Tsi-Label [labelValue]=\"'Query'\"></Tsi-Label>\r\n </div>\r\n <div class=\"col-9 col-form-label\">\r\n <Tsi-Text-Area [rows]=\"2\"></Tsi-Text-Area>\r\n </div>\r\n </div>\r\n </p-panel>\r\n\r\n <Tsi-Modal-Footer [cancelDisabled]=\"saving\" [saveDisabled]=\"saving\" (onCancelClick)=\"hide()\" \r\n [showSaveAndCloseButton]=\"false\"></Tsi-Modal-Footer>\r\n</tsi-form>", styles: [".flx{display:flex;justify-content:center;align-items:center}::ng-deep .rounded-multiselect .p-multiselect{border-radius:12px!important}::ng-deep .rounded-multiselect .p-multiselect-label{border-radius:12px!important}\n"], dependencies: [{ kind: "directive", type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i9.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i10.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i11.MultiSelect, selector: "p-multiSelect", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }, { kind: "component", type: i12.Panel, selector: "p-panel", inputs: ["toggleable", "header", "collapsed", "style", "styleClass", "iconPos", "expandIcon", "collapseIcon", "showHeader", "toggler", "transitionOptions"], outputs: ["collapsedChange", "onBeforeToggle", "onAfterToggle"] }, { kind: "component", type: i13.TsiSearchComboComponent, selector: "Tsi-Search-Combo", inputs: ["elementSourceUrl", "listSourceUrl", "listSourceParams", "id-field", "label-field", "multiple", "sort", "showClear", "reloadDataSource", "isFiltered", "selectedLabel", "maxWidth", "businessClass", "searchDebounceTime", "comboType", "statusMetadata", "currentRowItem", "datasource", "bind", "maxSelectedLabels", "tooltipMaxDisplayedItems", "bindMode", "showSearchButton", "showAddButton", "showConsultButton", "showUpdateButton"], outputs: ["bindChange", "datasource-loaded", "init", "isLoaded", "selectedLabelChange", "onClick", "onSearchButtonClick", "selectionChange"] }, { kind: "component", type: i14.TsiCheckboxComponent, selector: "Tsi-CheckBox", inputs: ["class", "isBinary", "checked", "tooltipText", "tooltipPosition"], outputs: ["inputFieldChange", "checkedChange"] }, { kind: "component", type: i15.TsiIntegerComponent, selector: "Tsi-Integer", inputs: ["class", "minValue", "maxValue", "delayChangeTime"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i16.TsiTextAreaComponent, selector: "Tsi-Text-Area", inputs: ["rows", "cols"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i17.TsiTextBoxComponent, selector: "Tsi-Text-Box", inputs: ["textBoxType", "autocomplete"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i18.TsiLabelComponent, selector: "Tsi-Label", inputs: ["labelValue", "styleClass", "infoText"] }, { kind: "component", type: i19.TsiModalFooterComponent, selector: "Tsi-Modal-Footer", inputs: ["cancelDisabled", "saveDisabled", "cancelLabel", "saveLabel", "isConsult", "isDuplicate", "isOnlyCreate", "additionalButtonLabel", "additionalButtonIcon", "additionalButtonDisabled", "showAdditionalButton", "showSaveAndCloseButton", "mode"], outputs: ["onCancelClick", "onSaveClick", "onAdditionalButtonClick"] }, { kind: "component", type: i20.TsiFormComponent, selector: "tsi-form", inputs: ["class", "autocomplete", "optionalEndpoints", "disabled", "isLoading", "modalSize", "showManageWorkflowButton", "formEndpoint", "formName", "isReportingToolbarDisabled", "isCreateOnly", "statusInputDisabled"], outputs: ["onSave", "openWorkflow", "onSubmit", "onSubmitFormWorkflowConfiguration", "formRefChange", "onStatusChange"] }, { kind: "pipe", type: i21.LocalizePipe, name: "localize" }] }); }
|
|
203
203
|
}
|
|
204
204
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AddReportPopupComponent, decorators: [{
|
|
205
205
|
type: Component,
|
package/esm2022/lib/tsi-components/output-components/tsi-view-grid/tsi-view-grid.component.mjs
CHANGED
|
@@ -343,7 +343,7 @@ export class TsiViewGridComponent {
|
|
|
343
343
|
}
|
|
344
344
|
}
|
|
345
345
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiViewGridComponent, deps: [{ token: i1.ErrorResponseManagerService }, { token: i2.TsiModalService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
346
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiViewGridComponent, selector: "tsi-view-grid", inputs: { columns: "columns", gridConfiguration: "gridConfiguration", viewComponent: "viewComponent", crudService: "crudService", header: "header", modalSize: "modalSize", showConsultButton: "showConsultButton", showSearchField: "showSearchField", searchFields: "searchFields", formEndpoint: "formEndpoint", formName: "formName", id: "id", showImportExportButton: "showImportExportButton", targetBusinessClass: "targetBusinessClass", getDataFromApi: "getDataFromApi", gridData: "gridData", isSearchButtonDisabled: "isSearchButtonDisabled", selectKeyOnly: "selectKeyOnly", selectionMode: "selectionMode", selectedItems: "selectedItems", key: "key", showGlobalSearch: "showGlobalSearch", showExportButton: "showExportButton", showCalenderView: "showCalenderView", showHeaderFilters: "showHeaderFilters", showFilterButton: "showFilterButton", selectAll: "selectAll", checkedByField: "checkedByField", sortMode: "sortMode", sizingMode: "sizingMode", searchOnInit: "searchOnInit" }, outputs: { summariesChange: "summariesChange", selectedItemsChange: "selectedItemsChange", buttonColumnClicked: "buttonColumnClicked", searchFieldsValueChanged: "searchFieldsValueChanged", getAllPagedResultChanged: "getAllPagedResultChanged" }, viewQueries: [{ propertyName: "genericGridComponent", first: true, predicate: TsiGenericGridComponent, descendants: true }], ngImport: i0, template: "<div class=\"card\">\r\n \r\n <p-toolbar *ngIf=\"formEndpoint\" styleClass=\"border-radius-7 mb-1 flex align-items-center gap-2\">\r\n <ng-template pTemplate=\"left\">\r\n <div class=\"flex gap-2 ml-2\">\r\n <Tsi-Button icon=\"pi pi-sliders-h\" [tooltipPosition]=\"tooltipPosition.Top\" tooltipText=\"shared_tsi_component_grid_menu_view\" *ngIf=\"searchFields\"\r\n styleClass=\"h-2rem hover:shadow-6 p-button-icon-only {{showSearchField ? 'p-button-secondary' : 'p-button-success'}}\" \r\n (click)=\"displaySearchFields()\">\r\n </Tsi-Button>\r\n <Tsi-Button icon=\"p-button-icon pi pi-calendar {{showCalenderView ? 'pi pi-align-justify' : 'pi pi-calendar'}}\" \r\n styleClass=\"p-element p-button-primary hover:shadow-6 h-2rem p-button p-component p-button-icon-only\" (click)=\"toggleCalenderView()\" \r\n tooltipText=\"{{(showCalenderView ? 'shared_tsi_component_grid_list_view' : 'shared_tsi_component_grid_calender_view') | localize}}\" [tooltipPosition]=\"tooltipPosition.Top\"></Tsi-Button>\r\n </div>\r\n </ng-template>\r\n \r\n <ng-template pTemplate=\"right\">\r\n <app-reporting *ngIf=\"formEndpoint || businessClass\"\r\n [formEndpoint]=\"formEndpoint\"\r\n [formName]=\"formName\"\r\n [formEndpointBody]=\"formEndpointBody\"\r\n [isFormEndpointPaged]=\"true\"\r\n [showImportExportButton]=\"showImportExportButton\"\r\n (refreshData)=\"refresh($event)\"\r\n [filtersHtmlTemplate]=\"filtersHtmlTemplate\"\r\n [businessClass]=\"businessClass\"\r\n [pagedRequest]=\"pagedRequest\"\r\n [configModeButtonId]=\"configModeButtonId\"\r\n [showNoteButton]=\"false\"\r\n [showActionButton]=\"false\"\r\n [showInfoButton]=\"false\"\r\n [showUploadButton]=\"false\"\r\n [selectedItemUids]=\"selectedItems\"\r\n ></app-reporting>\r\n </ng-template>\r\n </p-toolbar>\r\n \r\n <div>\r\n\r\n <Tsi-Generic-Grid \r\n [formName]=\"formName\" \r\n [header]=\"header\" \r\n [page]=\"page\" \r\n [pagedRequest]=\"pagedRequest\" \r\n [columns]=\"columns\"\r\n [searchFields]=\"searchFields\" \r\n [showSearchField]=\"showSearchField\" \r\n (load)=\"load($event)\"\r\n (searchFieldsValueChanged)=\"searchFieldsValueChanges($event)\"\r\n (buttonColumnClicked)=\"handleButtonColumnClicked($event)\"\r\n [(filtersHtmlTemplate)]=\"filtersHtmlTemplate\"\r\n [selectKeyOnly]=\"selectKeyOnly\"\r\n [selectionMode]=\"selectionMode\"\r\n [showImportExportButton]=\"showImportExportButton\"\r\n [key]=\"key\"\r\n [crudService]=\"crudService\"\r\n [(selectedItems)]=\"selectedItems\"\r\n (selectedItemsChange)=\"onSelectedItemsChange($event)\"\r\n [isGridDataPagedInApi]=\"getDataFromApi\"\r\n [searchOnInit]=\"searchOnInit\"\r\n [showExportButton]=\"showExportButton\"\r\n [showHeaderFilters]=\"showHeaderFilters\"\r\n [showFilterButton]=\"showFilterButton\"\r\n [showGlobalSearch]=\"showGlobalSearch\"\r\n [isSearchButtonDisabled]=\"isSearchButtonDisabled\"\r\n [showCalenderView]=\"showCalenderView\"\r\n (calendarEventClick)=\"handleCalendarEventClick($event)\"\r\n [selectAll]=\"selectAll\"\r\n [checkedByField]=\"checkedByField\"\r\n [targetBusinessClass]=\"targetBusinessClass\"\r\n [sortMode]=\"sortMode\"\r\n [sizingMode]=\"sizingMode\"\r\n ></Tsi-Generic-Grid>\r\n </div>\r\n</div>", styles: [".hide-search-fields{background-color:#64748b!important;border-color:#64748b!important}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i5.Toolbar, selector: "p-toolbar", inputs: ["style", "styleClass", "ariaLabelledBy"] }, { kind: "component", type: i6.TsiGenericGridComponent, selector: "Tsi-Generic-Grid", inputs: ["cudComponent", "modalSize", "showInfoButton", "showDownloadButton", "showUploadButton", "showNoteButton", "showActionButton", "sizingMode", "formName", "id", "pagedRequest", "configuration", "page", "key", "columns", "isSearchButtonDisabled", "filteredColumns", "gridData", "isTableLoading", "parent", "showSearchBox", "showActionColumn", "showHeaderFilters", "showFilterButton", "isGridDataPagedInApi", "header", "ShowFilterColumns", "showImportExportButton", "crudService", "searchFields", "sortMode", "filtersHtmlTemplate", "presentationSettings", "selectKeyOnly", "selectionMode", "selectedItems", "searchOnInit", "showGlobalSearch", "showExportButton", "showSearchField", "showCalenderView", "calenderSchema", "showCardView", "showKanbanView", "showKanbanViewOfWorkFlowEtat", "page$", "checkedByField", "selectAll", "targetBusinessClass", "descriminatorValue", "businessClass", "groupBy", "entityInfo"], outputs: ["onSave", "editRow", "deleteRow", "load", "buttonColumnClicked", "filtersHtmlTemplateChange", "selectedItemsChange", "searchFieldsValueChanged", "calendarEventClick", "statusFilterChanged"] }, { kind: "component", type: i7.TsiButtonComponent, selector: "Tsi-Button", inputs: ["disabled", "text", "style", "tooltipText", "tooltipPosition", "buttonType", "icon", "styleClass", "iconSrc", "id", "iconWidth", "iconClass"], outputs: ["onClick", "rightClick"] }, { kind: "component", type: i8.ReportingComponent, selector: "app-reporting", inputs: ["showImportExportButton", "showNoteButton", "showInfoButton", "showUploadButton", "showActionButton", "isReportingToolbarDisabled", "formName", "formEndpoint", "formEndpointBody", "isFormEndpointPaged", "filtersHtmlTemplate", "optionalEndpoints", "businessClass", "cudComponent", "httpMethodType", "requestData", "customReportingMode", "pagedRequest", "reportDiscriminator", "nombreDocumentsJoints", "id", "configModeButtonId", "selectedItemUids", "fromTsiForm", "customSendMailMode", "reportingInformation"], outputs: ["onSave", "refreshData", "closedModalFileUpload", "toggleDesignMode"] }, { kind: "pipe", type: i9.LocalizePipe, name: "localize" }] }); }
|
|
346
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiViewGridComponent, selector: "tsi-view-grid", inputs: { columns: "columns", gridConfiguration: "gridConfiguration", viewComponent: "viewComponent", crudService: "crudService", header: "header", modalSize: "modalSize", showConsultButton: "showConsultButton", showSearchField: "showSearchField", searchFields: "searchFields", formEndpoint: "formEndpoint", formName: "formName", id: "id", showImportExportButton: "showImportExportButton", targetBusinessClass: "targetBusinessClass", getDataFromApi: "getDataFromApi", gridData: "gridData", isSearchButtonDisabled: "isSearchButtonDisabled", selectKeyOnly: "selectKeyOnly", selectionMode: "selectionMode", selectedItems: "selectedItems", key: "key", showGlobalSearch: "showGlobalSearch", showExportButton: "showExportButton", showCalenderView: "showCalenderView", showHeaderFilters: "showHeaderFilters", showFilterButton: "showFilterButton", selectAll: "selectAll", checkedByField: "checkedByField", sortMode: "sortMode", sizingMode: "sizingMode", searchOnInit: "searchOnInit" }, outputs: { summariesChange: "summariesChange", selectedItemsChange: "selectedItemsChange", buttonColumnClicked: "buttonColumnClicked", searchFieldsValueChanged: "searchFieldsValueChanged", getAllPagedResultChanged: "getAllPagedResultChanged" }, viewQueries: [{ propertyName: "genericGridComponent", first: true, predicate: TsiGenericGridComponent, descendants: true }], ngImport: i0, template: "<div class=\"card\">\r\n \r\n <p-toolbar *ngIf=\"formEndpoint\" styleClass=\"border-radius-7 mb-1 flex align-items-center gap-2\">\r\n <ng-template pTemplate=\"left\">\r\n <div class=\"flex gap-2 ml-2\">\r\n <Tsi-Button icon=\"pi pi-sliders-h\" [tooltipPosition]=\"tooltipPosition.Top\" tooltipText=\"shared_tsi_component_grid_menu_view\" *ngIf=\"searchFields\"\r\n styleClass=\"h-2rem hover:shadow-6 p-button-icon-only {{showSearchField ? 'p-button-secondary' : 'p-button-success'}}\" \r\n (click)=\"displaySearchFields()\">\r\n </Tsi-Button>\r\n <Tsi-Button icon=\"p-button-icon pi pi-calendar {{showCalenderView ? 'pi pi-align-justify' : 'pi pi-calendar'}}\" \r\n styleClass=\"p-element p-button-primary hover:shadow-6 h-2rem p-button p-component p-button-icon-only\" (click)=\"toggleCalenderView()\" \r\n tooltipText=\"{{(showCalenderView ? 'shared_tsi_component_grid_list_view' : 'shared_tsi_component_grid_calender_view') | localize}}\" [tooltipPosition]=\"tooltipPosition.Top\"></Tsi-Button>\r\n </div>\r\n </ng-template>\r\n \r\n <ng-template pTemplate=\"right\">\r\n <app-reporting *ngIf=\"formEndpoint || businessClass\"\r\n [formEndpoint]=\"formEndpoint\"\r\n [formName]=\"formName\"\r\n [formEndpointBody]=\"formEndpointBody\"\r\n [isFormEndpointPaged]=\"true\"\r\n [showImportExportButton]=\"showImportExportButton\"\r\n (refreshData)=\"refresh($event)\"\r\n [filtersHtmlTemplate]=\"filtersHtmlTemplate\"\r\n [businessClass]=\"businessClass\"\r\n [pagedRequest]=\"pagedRequest\"\r\n [configModeButtonId]=\"configModeButtonId\"\r\n [showNoteButton]=\"false\"\r\n [showActionButton]=\"false\"\r\n [showInfoButton]=\"false\"\r\n [showUploadButton]=\"false\"\r\n [selectedItemUids]=\"selectedItems\"\r\n ></app-reporting>\r\n </ng-template>\r\n </p-toolbar>\r\n \r\n <div>\r\n\r\n <Tsi-Generic-Grid \r\n [formName]=\"formName\" \r\n [header]=\"header\" \r\n [page]=\"page\" \r\n [pagedRequest]=\"pagedRequest\" \r\n [columns]=\"columns\"\r\n [searchFields]=\"searchFields\" \r\n [showSearchField]=\"showSearchField\" \r\n (load)=\"load($event)\"\r\n (searchFieldsValueChanged)=\"searchFieldsValueChanges($event)\"\r\n (buttonColumnClicked)=\"handleButtonColumnClicked($event)\"\r\n [(filtersHtmlTemplate)]=\"filtersHtmlTemplate\"\r\n [selectKeyOnly]=\"selectKeyOnly\"\r\n [selectionMode]=\"selectionMode\"\r\n [showImportExportButton]=\"showImportExportButton\"\r\n [key]=\"key\"\r\n [crudService]=\"crudService\"\r\n [(selectedItems)]=\"selectedItems\"\r\n (selectedItemsChange)=\"onSelectedItemsChange($event)\"\r\n [isGridDataPagedInApi]=\"getDataFromApi\"\r\n [searchOnInit]=\"searchOnInit\"\r\n [showExportButton]=\"showExportButton\"\r\n [showHeaderFilters]=\"showHeaderFilters\"\r\n [showFilterButton]=\"showFilterButton\"\r\n [showGlobalSearch]=\"showGlobalSearch\"\r\n [isSearchButtonDisabled]=\"isSearchButtonDisabled\"\r\n [showCalenderView]=\"showCalenderView\"\r\n (calendarEventClick)=\"handleCalendarEventClick($event)\"\r\n [selectAll]=\"selectAll\"\r\n [checkedByField]=\"checkedByField\"\r\n [targetBusinessClass]=\"targetBusinessClass\"\r\n [sortMode]=\"sortMode\"\r\n [sizingMode]=\"sizingMode\"\r\n ></Tsi-Generic-Grid>\r\n </div>\r\n</div>", styles: [".hide-search-fields{background-color:#64748b!important;border-color:#64748b!important}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i5.Toolbar, selector: "p-toolbar", inputs: ["style", "styleClass", "ariaLabelledBy"] }, { kind: "component", type: i6.TsiGenericGridComponent, selector: "Tsi-Generic-Grid", inputs: ["cudComponent", "modalSize", "showInfoButton", "showDownloadButton", "showUploadButton", "showNoteButton", "showActionButton", "sizingMode", "formName", "id", "pagedRequest", "configuration", "page", "key", "columns", "isSearchButtonDisabled", "filteredColumns", "gridData", "isTableLoading", "parent", "showSearchBox", "showActionColumn", "showHeaderFilters", "showFilterButton", "isGridDataPagedInApi", "header", "ShowFilterColumns", "showImportExportButton", "crudService", "searchFields", "sortMode", "filtersHtmlTemplate", "presentationSettings", "selectKeyOnly", "selectionMode", "selectedItems", "searchOnInit", "showGlobalSearch", "showExportButton", "showSearchField", "showCalenderView", "calenderSchema", "showCardView", "showKanbanView", "showKanbanViewOfWorkFlowEtat", "page$", "checkedByField", "selectAll", "targetBusinessClass", "descriminatorValue", "businessClass", "groupBy", "entityInfo"], outputs: ["onSave", "editRow", "deleteRow", "load", "buttonColumnClicked", "filtersHtmlTemplateChange", "selectedItemsChange", "searchFieldsValueChanged", "calendarEventClick", "statusFilterChanged"] }, { kind: "component", type: i7.TsiButtonComponent, selector: "Tsi-Button", inputs: ["disabled", "text", "style", "tooltipText", "tooltipPosition", "buttonType", "icon", "styleClass", "iconSrc", "id", "iconWidth", "iconClass"], outputs: ["onClick", "rightClick"] }, { kind: "component", type: i8.ReportingComponent, selector: "app-reporting", inputs: ["showImportExportButton", "showNoteButton", "showInfoButton", "showUploadButton", "showActionButton", "isReportingToolbarDisabled", "formName", "formEndpoint", "formEndpointBody", "isFormEndpointPaged", "filtersHtmlTemplate", "optionalEndpoints", "businessClass", "cudComponent", "httpMethodType", "requestData", "customReportingMode", "pagedRequest", "reportDiscriminator", "nombreDocumentsJoints", "id", "configModeButtonId", "showManageWorkflowButton", "selectedItemUids", "fromTsiForm", "customSendMailMode", "reportingInformation"], outputs: ["onSave", "refreshData", "closedModalFileUpload", "toggleDesignMode", "openWorkflow"] }, { kind: "pipe", type: i9.LocalizePipe, name: "localize" }] }); }
|
|
347
347
|
}
|
|
348
348
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiViewGridComponent, decorators: [{
|
|
349
349
|
type: Component,
|