@eqproject/eqp-dynamic-module 2.10.24 → 2.10.26
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/esm2020/lib/components/private/form-statistics/filter-templates/attachment-filter-template/attachment-filter-template.component.mjs +9 -7
- package/esm2020/lib/components/private/form-statistics/filter-templates/boolean-filter-template/boolean-filter-template.component.mjs +11 -7
- package/esm2020/lib/components/private/form-statistics/filter-templates/date-filter-template/date-filter-template.component.mjs +17 -7
- package/esm2020/lib/components/private/form-statistics/filter-templates/image-filter-template/image-filter-template.component.mjs +9 -7
- package/esm2020/lib/components/private/form-statistics/filter-templates/image-selector-filter-template/image-selector-filter-template.component.mjs +9 -7
- package/esm2020/lib/components/private/form-statistics/filter-templates/list-form-record-filter-template/list-form-record-filter-template.component.mjs +6 -4
- package/esm2020/lib/components/private/form-statistics/filter-templates/list-value-filter-template/list-value-filter-template.component.mjs +11 -7
- package/esm2020/lib/components/private/form-statistics/filter-templates/numeric-filter-template/numeric-filter-template.component.mjs +16 -6
- package/esm2020/lib/components/private/form-statistics/filter-templates/text-filter-template/text-filter-template.component.mjs +11 -7
- package/esm2020/lib/components/private/form-statistics/filter-templates/textarea-filter-template/textarea-filter-template.component.mjs +15 -10
- package/esm2020/lib/components/private/trigger-creator/trigger-templates/list-form-record-trigger-template/list-form-record-trigger-template.component.mjs +5 -3
- package/esm2020/lib/models/statistic.model.mjs +2 -1
- package/fesm2015/eqproject-eqp-dynamic-module.mjs +104 -56
- package/fesm2015/eqproject-eqp-dynamic-module.mjs.map +1 -1
- package/fesm2020/eqproject-eqp-dynamic-module.mjs +104 -56
- package/fesm2020/eqproject-eqp-dynamic-module.mjs.map +1 -1
- package/lib/components/private/form-statistics/filter-templates/attachment-filter-template/attachment-filter-template.component.d.ts +1 -0
- package/lib/components/private/form-statistics/filter-templates/boolean-filter-template/boolean-filter-template.component.d.ts +2 -0
- package/lib/components/private/form-statistics/filter-templates/date-filter-template/date-filter-template.component.d.ts +2 -0
- package/lib/components/private/form-statistics/filter-templates/image-filter-template/image-filter-template.component.d.ts +1 -0
- package/lib/components/private/form-statistics/filter-templates/image-selector-filter-template/image-selector-filter-template.component.d.ts +1 -0
- package/lib/components/private/form-statistics/filter-templates/list-form-record-filter-template/list-form-record-filter-template.component.d.ts +1 -0
- package/lib/components/private/form-statistics/filter-templates/list-value-filter-template/list-value-filter-template.component.d.ts +2 -0
- package/lib/components/private/form-statistics/filter-templates/numeric-filter-template/numeric-filter-template.component.d.ts +2 -0
- package/lib/components/private/form-statistics/filter-templates/text-filter-template/text-filter-template.component.d.ts +2 -0
- package/lib/components/private/form-statistics/filter-templates/textarea-filter-template/textarea-filter-template.component.d.ts +2 -0
- package/lib/components/private/trigger-creator/trigger-templates/list-form-record-trigger-template/list-form-record-trigger-template.component.d.ts +1 -0
- package/lib/models/statistic.model.d.ts +1 -0
- package/package.json +1 -1
|
@@ -1945,6 +1945,7 @@ class Statistic {
|
|
|
1945
1945
|
this.isX = false;
|
|
1946
1946
|
this.isY = false;
|
|
1947
1947
|
this.aggregations = null;
|
|
1948
|
+
this.operatorsGroupBy = null;
|
|
1948
1949
|
}
|
|
1949
1950
|
}
|
|
1950
1951
|
class FilterStatistic {
|
|
@@ -8836,6 +8837,7 @@ class TextFilterTemplateComponent {
|
|
|
8836
8837
|
this.activeCondition = false;
|
|
8837
8838
|
this.platform = Capacitor.getPlatform();
|
|
8838
8839
|
this.aggregationFunctionEnum = NotNumberAggregationFunctionEnum;
|
|
8840
|
+
this.operatorsGroupByEnum = NumberAggregationFunctionEnum;
|
|
8839
8841
|
}
|
|
8840
8842
|
ngOnInit() {
|
|
8841
8843
|
if (this.Statistic != null) {
|
|
@@ -8843,6 +8845,7 @@ class TextFilterTemplateComponent {
|
|
|
8843
8845
|
this.record[this.field.Name] = this.Statistic.value;
|
|
8844
8846
|
this.visible = this.Statistic.visible;
|
|
8845
8847
|
this.aggregations = this.Statistic.aggregations;
|
|
8848
|
+
this.operatorsGroupBy = this.Statistic.operatorsGroupBy;
|
|
8846
8849
|
}
|
|
8847
8850
|
this.initStyles();
|
|
8848
8851
|
}
|
|
@@ -8851,6 +8854,7 @@ class TextFilterTemplateComponent {
|
|
|
8851
8854
|
this.isX = changes['Statistic'].currentValue.hasOwnProperty('isX') ? changes['Statistic'].currentValue.isX : null;
|
|
8852
8855
|
this.isY = changes['Statistic'].currentValue.hasOwnProperty('isY') ? changes['Statistic'].currentValue.isY : null;
|
|
8853
8856
|
this.aggregations = changes['Statistic'].currentValue.hasOwnProperty('aggregations') ? changes['Statistic'].currentValue.aggregations : null;
|
|
8857
|
+
this.operatorsGroupBy = changes['Statistic'].currentValue.hasOwnProperty('operatorsGroupBy') ? changes['Statistic'].currentValue.operatorsGroupBy : null;
|
|
8854
8858
|
}
|
|
8855
8859
|
}
|
|
8856
8860
|
initStyles() {
|
|
@@ -8887,9 +8891,10 @@ class TextFilterTemplateComponent {
|
|
|
8887
8891
|
logicoperator: this.selectedLogicOperator,
|
|
8888
8892
|
fieldtype: this.field.FieldType,
|
|
8889
8893
|
visible: this.visible,
|
|
8890
|
-
isX: this.isX,
|
|
8891
|
-
isY: this.isY,
|
|
8892
|
-
aggregations: this.aggregations
|
|
8894
|
+
isX: this.isX === undefined ? false : this.isX,
|
|
8895
|
+
isY: this.isY === undefined ? false : this.isY,
|
|
8896
|
+
aggregations: this.aggregations,
|
|
8897
|
+
operatorsGroupBy: this.operatorsGroupBy
|
|
8893
8898
|
};
|
|
8894
8899
|
this.filterChange.emit(statistic);
|
|
8895
8900
|
}
|
|
@@ -8905,10 +8910,10 @@ class TextFilterTemplateComponent {
|
|
|
8905
8910
|
}
|
|
8906
8911
|
}
|
|
8907
8912
|
TextFilterTemplateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TextFilterTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8908
|
-
TextFilterTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TextFilterTemplateComponent, selector: "text-filter-template", inputs: { field: "field", record: "record", Statistic: "Statistic", showXY: "showXY" }, outputs: { recordChange: "recordChange", filterChange: "filterChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"valueCol\">\r\n <mat-form-field [formGroup]=\"field.FormFormGroup\">\r\n <mat-label class=\"pt-1\" [ngStyle]=\"LabelstyleObj\">\r\n {{ field.Description }}\r\n </mat-label>\r\n <input\r\n [ngStyle]=\"FieldstyleObj\"\r\n matInput\r\n [type]=\"getInputType()\"\r\n [formControlName]=\"field.Name\"\r\n [readonly]=\"false\"\r\n [required]=\"false\"\r\n [(ngModel)]=\"record[field.Name]\"\r\n (ngModelChange)=\"onFilterChange()\"\r\n />\r\n <mat-error\r\n *ngIf=\"\r\n !field.FormFormGroup.valid &&\r\n field.FormFormGroup.controls[field.Name].touched\r\n \"\r\n >\r\n Min. Caratteri: {{ field.MinLenght }} - Max. Caratteri:\r\n {{ field.MaxLenght }}\r\n </mat-error>\r\n <mat-icon\r\n [hidden]=\"!field.Microphone || platform != 'web'\"\r\n matSuffix\r\n SpeechToText\r\n [(bindedText)]=\"record[field.Name]\"\r\n style=\"cursor: pointer\"\r\n >keyboard_voice</mat-icon\r\n >\r\n\r\n </mat-form-field>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select\r\n [enumData]=\"logicOperatorText\"\r\n [(ngModelInput)]=\"selectedLogicOperator\"\r\n [showCancelButton]=\"false\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n \r\n </div>\r\n</div>\r\n", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{width:35px;min-width:35px}.rowCol .aggregatorCol{min-width:219px}.keyboard_speaking{color:red}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}\n"], dependencies: [{ kind: "directive", type: i1$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i2$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2$2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i2$2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { 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.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6$2.EqpSelectComponent, selector: "eqp-select", inputs: ["placeholder", "enumData", "enumDataToExclude", "arrayData", "arrayKeyProperty", "arrayValueProperty", "ngModelOptions", "ngModelInput", "formGroupInput", "formControlNameInput", "isRequired", "isDisabled", "isMultiLanguage", "multilanguagePrefixKey", "isAlphabeticalOrderable", "suffixIcon", "prefixIcon", "isMultiSelect", "includeFullObject", "showCancelButton", "isSearchable", "searchText", "noResultSearchText", "data"], outputs: ["ngModelInputChange"] }, { kind: "directive", type: SpeechToTextDirective, selector: "[SpeechToText]", inputs: ["bindedText"], outputs: ["bindedTextChange"] }] });
|
|
8913
|
+
TextFilterTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TextFilterTemplateComponent, selector: "text-filter-template", inputs: { field: "field", record: "record", Statistic: "Statistic", showXY: "showXY" }, outputs: { recordChange: "recordChange", filterChange: "filterChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"groupByCol\">\r\n <eqp-select\r\n [placeholder]=\"'Operatori di confronto'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"operatorsGroupByEnum\"\r\n [(ngModelInput)]=\"operatorsGroupBy\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"valueCol\">\r\n <mat-form-field [formGroup]=\"field.FormFormGroup\">\r\n <mat-label class=\"pt-1\" [ngStyle]=\"LabelstyleObj\">\r\n {{ field.Description }}\r\n </mat-label>\r\n <input\r\n [ngStyle]=\"FieldstyleObj\"\r\n matInput\r\n [type]=\"getInputType()\"\r\n [formControlName]=\"field.Name\"\r\n [readonly]=\"false\"\r\n [required]=\"false\"\r\n [(ngModel)]=\"record[field.Name]\"\r\n (ngModelChange)=\"onFilterChange()\"\r\n />\r\n <mat-error\r\n *ngIf=\"\r\n !field.FormFormGroup.valid &&\r\n field.FormFormGroup.controls[field.Name].touched\r\n \"\r\n >\r\n Min. Caratteri: {{ field.MinLenght }} - Max. Caratteri:\r\n {{ field.MaxLenght }}\r\n </mat-error>\r\n <mat-icon\r\n [hidden]=\"!field.Microphone || platform != 'web'\"\r\n matSuffix\r\n SpeechToText\r\n [(bindedText)]=\"record[field.Name]\"\r\n style=\"cursor: pointer\"\r\n >keyboard_voice</mat-icon\r\n >\r\n\r\n </mat-form-field>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select\r\n [enumData]=\"logicOperatorText\"\r\n [(ngModelInput)]=\"selectedLogicOperator\"\r\n [showCancelButton]=\"false\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n \r\n </div>\r\n</div>\r\n", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{width:35px;min-width:35px}.rowCol .aggregatorCol{min-width:219px}.keyboard_speaking{color:red}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}\n"], dependencies: [{ kind: "directive", type: i1$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i2$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2$2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i2$2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { 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.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6$2.EqpSelectComponent, selector: "eqp-select", inputs: ["placeholder", "enumData", "enumDataToExclude", "arrayData", "arrayKeyProperty", "arrayValueProperty", "ngModelOptions", "ngModelInput", "formGroupInput", "formControlNameInput", "isRequired", "isDisabled", "isMultiLanguage", "multilanguagePrefixKey", "isAlphabeticalOrderable", "suffixIcon", "prefixIcon", "isMultiSelect", "includeFullObject", "showCancelButton", "isSearchable", "searchText", "noResultSearchText", "data"], outputs: ["ngModelInputChange"] }, { kind: "directive", type: SpeechToTextDirective, selector: "[SpeechToText]", inputs: ["bindedText"], outputs: ["bindedTextChange"] }] });
|
|
8909
8914
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TextFilterTemplateComponent, decorators: [{
|
|
8910
8915
|
type: Component,
|
|
8911
|
-
args: [{ selector: 'text-filter-template', template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"valueCol\">\r\n <mat-form-field [formGroup]=\"field.FormFormGroup\">\r\n <mat-label class=\"pt-1\" [ngStyle]=\"LabelstyleObj\">\r\n {{ field.Description }}\r\n </mat-label>\r\n <input\r\n [ngStyle]=\"FieldstyleObj\"\r\n matInput\r\n [type]=\"getInputType()\"\r\n [formControlName]=\"field.Name\"\r\n [readonly]=\"false\"\r\n [required]=\"false\"\r\n [(ngModel)]=\"record[field.Name]\"\r\n (ngModelChange)=\"onFilterChange()\"\r\n />\r\n <mat-error\r\n *ngIf=\"\r\n !field.FormFormGroup.valid &&\r\n field.FormFormGroup.controls[field.Name].touched\r\n \"\r\n >\r\n Min. Caratteri: {{ field.MinLenght }} - Max. Caratteri:\r\n {{ field.MaxLenght }}\r\n </mat-error>\r\n <mat-icon\r\n [hidden]=\"!field.Microphone || platform != 'web'\"\r\n matSuffix\r\n SpeechToText\r\n [(bindedText)]=\"record[field.Name]\"\r\n style=\"cursor: pointer\"\r\n >keyboard_voice</mat-icon\r\n >\r\n\r\n </mat-form-field>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select\r\n [enumData]=\"logicOperatorText\"\r\n [(ngModelInput)]=\"selectedLogicOperator\"\r\n [showCancelButton]=\"false\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n \r\n </div>\r\n</div>\r\n", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{width:35px;min-width:35px}.rowCol .aggregatorCol{min-width:219px}.keyboard_speaking{color:red}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}\n"] }]
|
|
8916
|
+
args: [{ selector: 'text-filter-template', template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"groupByCol\">\r\n <eqp-select\r\n [placeholder]=\"'Operatori di confronto'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"operatorsGroupByEnum\"\r\n [(ngModelInput)]=\"operatorsGroupBy\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"valueCol\">\r\n <mat-form-field [formGroup]=\"field.FormFormGroup\">\r\n <mat-label class=\"pt-1\" [ngStyle]=\"LabelstyleObj\">\r\n {{ field.Description }}\r\n </mat-label>\r\n <input\r\n [ngStyle]=\"FieldstyleObj\"\r\n matInput\r\n [type]=\"getInputType()\"\r\n [formControlName]=\"field.Name\"\r\n [readonly]=\"false\"\r\n [required]=\"false\"\r\n [(ngModel)]=\"record[field.Name]\"\r\n (ngModelChange)=\"onFilterChange()\"\r\n />\r\n <mat-error\r\n *ngIf=\"\r\n !field.FormFormGroup.valid &&\r\n field.FormFormGroup.controls[field.Name].touched\r\n \"\r\n >\r\n Min. Caratteri: {{ field.MinLenght }} - Max. Caratteri:\r\n {{ field.MaxLenght }}\r\n </mat-error>\r\n <mat-icon\r\n [hidden]=\"!field.Microphone || platform != 'web'\"\r\n matSuffix\r\n SpeechToText\r\n [(bindedText)]=\"record[field.Name]\"\r\n style=\"cursor: pointer\"\r\n >keyboard_voice</mat-icon\r\n >\r\n\r\n </mat-form-field>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select\r\n [enumData]=\"logicOperatorText\"\r\n [(ngModelInput)]=\"selectedLogicOperator\"\r\n [showCancelButton]=\"false\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n \r\n </div>\r\n</div>\r\n", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{width:35px;min-width:35px}.rowCol .aggregatorCol{min-width:219px}.keyboard_speaking{color:red}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}\n"] }]
|
|
8912
8917
|
}], ctorParameters: function () { return []; }, propDecorators: { field: [{
|
|
8913
8918
|
type: Input
|
|
8914
8919
|
}], record: [{
|
|
@@ -8936,6 +8941,7 @@ class NumericFilterTemplateComponent {
|
|
|
8936
8941
|
this.visible = false;
|
|
8937
8942
|
this.currentStatistic = null;
|
|
8938
8943
|
this.aggregationFunctionEnum = NumberAggregationFunctionEnum;
|
|
8944
|
+
this.operatorsGroupByEnum = NumberAggregationFunctionEnum;
|
|
8939
8945
|
}
|
|
8940
8946
|
ngOnInit() {
|
|
8941
8947
|
if (this.Statistic != null) {
|
|
@@ -8945,6 +8951,13 @@ class NumericFilterTemplateComponent {
|
|
|
8945
8951
|
this.isX = this.Statistic.isX;
|
|
8946
8952
|
this.isY = this.Statistic.isY;
|
|
8947
8953
|
this.aggregations = this.Statistic.aggregations;
|
|
8954
|
+
this.operatorsGroupBy = this.Statistic.operatorsGroupBy;
|
|
8955
|
+
if (this.isX === undefined) {
|
|
8956
|
+
this.isX = false;
|
|
8957
|
+
}
|
|
8958
|
+
if (this.isY === undefined) {
|
|
8959
|
+
this.isY = false;
|
|
8960
|
+
}
|
|
8948
8961
|
}
|
|
8949
8962
|
this.configureEqpNumericOptions();
|
|
8950
8963
|
this.configureControllers();
|
|
@@ -8955,6 +8968,7 @@ class NumericFilterTemplateComponent {
|
|
|
8955
8968
|
this.isX = changes['Statistic'].currentValue.hasOwnProperty('isX') ? changes['Statistic'].currentValue.isX : null;
|
|
8956
8969
|
this.isY = changes['Statistic'].currentValue.hasOwnProperty('isY') ? changes['Statistic'].currentValue.isY : null;
|
|
8957
8970
|
this.aggregations = changes['Statistic'].currentValue.hasOwnProperty('aggregations') ? changes['Statistic'].currentValue.aggregations : null;
|
|
8971
|
+
this.operatorsGroupBy = changes['Statistic'].currentValue.hasOwnProperty('operatorsGroupBy') ? changes['Statistic'].currentValue.operatorsGroupBy : null;
|
|
8958
8972
|
}
|
|
8959
8973
|
}
|
|
8960
8974
|
//Funzione per parsare il campo stylecss dell'oggetto field ed applicarlo all'html
|
|
@@ -8981,9 +8995,10 @@ class NumericFilterTemplateComponent {
|
|
|
8981
8995
|
logicoperator: this.selectedLogicOperator,
|
|
8982
8996
|
fieldtype: this.field.FieldType,
|
|
8983
8997
|
visible: this.visible,
|
|
8984
|
-
isX: this.isX,
|
|
8985
|
-
isY: this.isY,
|
|
8986
|
-
aggregations: this.aggregations
|
|
8998
|
+
isX: this.isX === undefined ? false : this.isX,
|
|
8999
|
+
isY: this.isY === undefined ? false : this.isY,
|
|
9000
|
+
aggregations: this.aggregations,
|
|
9001
|
+
operatorsGroupBy: this.operatorsGroupBy
|
|
8987
9002
|
};
|
|
8988
9003
|
return statistic;
|
|
8989
9004
|
}
|
|
@@ -9046,10 +9061,10 @@ class NumericFilterTemplateComponent {
|
|
|
9046
9061
|
}
|
|
9047
9062
|
}
|
|
9048
9063
|
NumericFilterTemplateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NumericFilterTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9049
|
-
NumericFilterTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: NumericFilterTemplateComponent, selector: "numeric-filter-template", inputs: { field: "field", record: "record", Statistic: "Statistic", showXY: "showXY", filterResultViewMode: "filterResultViewMode" }, outputs: { filterChange: "filterChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div>
|
|
9064
|
+
NumericFilterTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: NumericFilterTemplateComponent, selector: "numeric-filter-template", inputs: { field: "field", record: "record", Statistic: "Statistic", showXY: "showXY", filterResultViewMode: "filterResultViewMode" }, outputs: { filterChange: "filterChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-primary': !isX , 'btn-success': isX }\" (click)=\"becomeTheCoord('X')\">X</button>\r\n <button class=\"btn\" [ngClass]=\"{'btn-primary': !isY , 'btn-success': isY }\" (click)=\"becomeTheCoord('Y')\">Y</button>\r\n </div> \r\n <div class=\"groupByCol\">\r\n <eqp-select\r\n [placeholder]=\"'Operatori di confronto'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"operatorsGroupByEnum\"\r\n [(ngModelInput)]=\"operatorsGroupBy\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"valueCol\">\r\n <mat-form-field [formGroup]=\"field.FormFormGroup\">\r\n <mat-label class=\"pt-1\" [ngStyle]=\"LabelstyleObj\"> {{field.Description}} </mat-label>\r\n <input [ngStyle]=\"FieldstyleObj\" matInput eqpNumericMask [formControlName]=\"field.Name\" [readonly]=\"false\"\r\n [required]=\"false\" [(ngModel)]=\"record[field.Name]\" [options]=\"eqpNumericOptions\"\r\n [step]=\"field.IsInteger ? 1 : null\" (ngModelChange)=\"onFilterChange()\" />\r\n <mat-error *ngIf=\"!field.FormFormGroup.valid && field.FormFormGroup.controls[field.Name].touched\">\r\n Min: {{field.MinValue}} - Max: {{field.MaxValue}}\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select [enumData]=\"logicOperatorNumeric\" [(ngModelInput)]=\"selectedLogicOperator\" [showCancelButton]=\"false\" (ngModelInputChange)=\"onFilterChange()\"></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div>\r\n</div>", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{display:flex;justify-content:center;align-items:flex-start;flex-direction:column;border-top-left-radius:0;border-bottom-left-radius:0;width:35px;min-width:35px}.rowCol .coordinatesCol button{height:30px;width:30px;margin:1px;padding:0}.rowCol .aggregatorCol{min-width:219px}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}::ng-deep eqp-select mat-form-field.mat-mdc-form-field{margin-top:initial!important}::ng-deep eqp-select mat-form-field .mdc-text-field{padding-top:initial!important;height:56px}\n"], dependencies: [{ kind: "directive", type: i1$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i2$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2$2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { 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.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6$2.EqpSelectComponent, selector: "eqp-select", inputs: ["placeholder", "enumData", "enumDataToExclude", "arrayData", "arrayKeyProperty", "arrayValueProperty", "ngModelOptions", "ngModelInput", "formGroupInput", "formControlNameInput", "isRequired", "isDisabled", "isMultiLanguage", "multilanguagePrefixKey", "isAlphabeticalOrderable", "suffixIcon", "prefixIcon", "isMultiSelect", "includeFullObject", "showCancelButton", "isSearchable", "searchText", "noResultSearchText", "data"], outputs: ["ngModelInputChange"] }, { kind: "directive", type: i5$1.EqpNumericDirective, selector: "[eqpNumericMask]", inputs: ["options"] }] });
|
|
9050
9065
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NumericFilterTemplateComponent, decorators: [{
|
|
9051
9066
|
type: Component,
|
|
9052
|
-
args: [{ selector: 'numeric-filter-template', template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div>
|
|
9067
|
+
args: [{ selector: 'numeric-filter-template', template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-primary': !isX , 'btn-success': isX }\" (click)=\"becomeTheCoord('X')\">X</button>\r\n <button class=\"btn\" [ngClass]=\"{'btn-primary': !isY , 'btn-success': isY }\" (click)=\"becomeTheCoord('Y')\">Y</button>\r\n </div> \r\n <div class=\"groupByCol\">\r\n <eqp-select\r\n [placeholder]=\"'Operatori di confronto'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"operatorsGroupByEnum\"\r\n [(ngModelInput)]=\"operatorsGroupBy\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"valueCol\">\r\n <mat-form-field [formGroup]=\"field.FormFormGroup\">\r\n <mat-label class=\"pt-1\" [ngStyle]=\"LabelstyleObj\"> {{field.Description}} </mat-label>\r\n <input [ngStyle]=\"FieldstyleObj\" matInput eqpNumericMask [formControlName]=\"field.Name\" [readonly]=\"false\"\r\n [required]=\"false\" [(ngModel)]=\"record[field.Name]\" [options]=\"eqpNumericOptions\"\r\n [step]=\"field.IsInteger ? 1 : null\" (ngModelChange)=\"onFilterChange()\" />\r\n <mat-error *ngIf=\"!field.FormFormGroup.valid && field.FormFormGroup.controls[field.Name].touched\">\r\n Min: {{field.MinValue}} - Max: {{field.MaxValue}}\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select [enumData]=\"logicOperatorNumeric\" [(ngModelInput)]=\"selectedLogicOperator\" [showCancelButton]=\"false\" (ngModelInputChange)=\"onFilterChange()\"></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div>\r\n</div>", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{display:flex;justify-content:center;align-items:flex-start;flex-direction:column;border-top-left-radius:0;border-bottom-left-radius:0;width:35px;min-width:35px}.rowCol .coordinatesCol button{height:30px;width:30px;margin:1px;padding:0}.rowCol .aggregatorCol{min-width:219px}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}::ng-deep eqp-select mat-form-field.mat-mdc-form-field{margin-top:initial!important}::ng-deep eqp-select mat-form-field .mdc-text-field{padding-top:initial!important;height:56px}\n"] }]
|
|
9053
9068
|
}], ctorParameters: function () { return []; }, propDecorators: { field: [{
|
|
9054
9069
|
type: Input
|
|
9055
9070
|
}], record: [{
|
|
@@ -9076,6 +9091,7 @@ class BooleanFilterTemplateComponent {
|
|
|
9076
9091
|
this.visible = false;
|
|
9077
9092
|
this.currentStatistic = null;
|
|
9078
9093
|
this.aggregationFunctionEnum = NotNumberAggregationFunctionEnum;
|
|
9094
|
+
this.operatorsGroupByEnum = NumberAggregationFunctionEnum;
|
|
9079
9095
|
}
|
|
9080
9096
|
ngOnInit() {
|
|
9081
9097
|
if (this.Statistic != null) {
|
|
@@ -9083,6 +9099,7 @@ class BooleanFilterTemplateComponent {
|
|
|
9083
9099
|
this.record[this.field.Name] = this.Statistic.value;
|
|
9084
9100
|
this.visible = this.Statistic.visible;
|
|
9085
9101
|
this.aggregations = this.Statistic.aggregations;
|
|
9102
|
+
this.operatorsGroupBy = this.Statistic.operatorsGroupBy;
|
|
9086
9103
|
}
|
|
9087
9104
|
this.configureControllers();
|
|
9088
9105
|
this.initStyles();
|
|
@@ -9097,6 +9114,7 @@ class BooleanFilterTemplateComponent {
|
|
|
9097
9114
|
this.isX = changes['Statistic'].currentValue.hasOwnProperty('isX') ? changes['Statistic'].currentValue.isX : null;
|
|
9098
9115
|
this.isY = changes['Statistic'].currentValue.hasOwnProperty('isY') ? changes['Statistic'].currentValue.isY : null;
|
|
9099
9116
|
this.aggregations = changes['Statistic'].currentValue.hasOwnProperty('aggregations') ? changes['Statistic'].currentValue.aggregations : null;
|
|
9117
|
+
this.operatorsGroupBy = changes['Statistic'].currentValue.hasOwnProperty('operatorsGroupBy') ? changes['Statistic'].currentValue.operatorsGroupBy : null;
|
|
9100
9118
|
}
|
|
9101
9119
|
}
|
|
9102
9120
|
/**
|
|
@@ -9112,9 +9130,10 @@ class BooleanFilterTemplateComponent {
|
|
|
9112
9130
|
logicoperator: this.selectedLogicOperator,
|
|
9113
9131
|
fieldtype: this.field.FieldType,
|
|
9114
9132
|
visible: this.visible,
|
|
9115
|
-
isX: this.isX,
|
|
9116
|
-
isY: this.isY,
|
|
9117
|
-
aggregations: this.aggregations
|
|
9133
|
+
isX: this.isX === undefined ? false : this.isX,
|
|
9134
|
+
isY: this.isY === undefined ? false : this.isY,
|
|
9135
|
+
aggregations: this.aggregations,
|
|
9136
|
+
operatorsGroupBy: this.operatorsGroupBy
|
|
9118
9137
|
};
|
|
9119
9138
|
this.filterChange.emit(statistic);
|
|
9120
9139
|
}
|
|
@@ -9137,10 +9156,10 @@ class BooleanFilterTemplateComponent {
|
|
|
9137
9156
|
}
|
|
9138
9157
|
}
|
|
9139
9158
|
BooleanFilterTemplateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BooleanFilterTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9140
|
-
BooleanFilterTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: BooleanFilterTemplateComponent, selector: "boolean-filter-template", inputs: { field: "field", record: "record", Statistic: "Statistic", showXY: "showXY" }, outputs: { filterChange: "filterChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"valueCol\">\r\n <mat-form-field [formGroup]=\"field.FormFormGroup\">\r\n <mat-label class=\"pt-1 ps-3\" [ngStyle]=\"LabelstyleObj\"> {{field.Description}} </mat-label>\r\n <input [ngStyle]=\"FieldstyleObj\" matInput [formControlName]=\"field.Name\" [disabled] [readonly]=\"true\"\r\n [required]=\"false\" [(ngModel)]=\"record[field.Name]\" \r\n />\r\n </mat-form-field>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select [enumData]=\"logicOperatorBoolean\" [(ngModelInput)]=\"selectedLogicOperator\" [showCancelButton]=\"false\" (ngModelInputChange)=\"onFilterChange()\"></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div> \r\n</div>\r\n", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{width:35px;min-width:35px}.rowCol .aggregatorCol{min-width:219px}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}\n"], dependencies: [{ kind: "directive", type: i1$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i2$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$2.MatLabel, selector: "mat-label" }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { 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.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6$2.EqpSelectComponent, selector: "eqp-select", inputs: ["placeholder", "enumData", "enumDataToExclude", "arrayData", "arrayKeyProperty", "arrayValueProperty", "ngModelOptions", "ngModelInput", "formGroupInput", "formControlNameInput", "isRequired", "isDisabled", "isMultiLanguage", "multilanguagePrefixKey", "isAlphabeticalOrderable", "suffixIcon", "prefixIcon", "isMultiSelect", "includeFullObject", "showCancelButton", "isSearchable", "searchText", "noResultSearchText", "data"], outputs: ["ngModelInputChange"] }] });
|
|
9159
|
+
BooleanFilterTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: BooleanFilterTemplateComponent, selector: "boolean-filter-template", inputs: { field: "field", record: "record", Statistic: "Statistic", showXY: "showXY" }, outputs: { filterChange: "filterChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"groupByCol\">\r\n <eqp-select\r\n [placeholder]=\"'Operatori di confronto'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"operatorsGroupByEnum\"\r\n [(ngModelInput)]=\"operatorsGroupBy\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"valueCol\">\r\n <mat-form-field [formGroup]=\"field.FormFormGroup\">\r\n <mat-label class=\"pt-1 ps-3\" [ngStyle]=\"LabelstyleObj\"> {{field.Description}} </mat-label>\r\n <input [ngStyle]=\"FieldstyleObj\" matInput [formControlName]=\"field.Name\" [disabled] [readonly]=\"true\"\r\n [required]=\"false\" [(ngModel)]=\"record[field.Name]\" \r\n />\r\n </mat-form-field>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select [enumData]=\"logicOperatorBoolean\" [(ngModelInput)]=\"selectedLogicOperator\" [showCancelButton]=\"false\" (ngModelInputChange)=\"onFilterChange()\"></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div> \r\n</div>\r\n", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{width:35px;min-width:35px}.rowCol .aggregatorCol{min-width:219px}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}\n"], dependencies: [{ kind: "directive", type: i1$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i2$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$2.MatLabel, selector: "mat-label" }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { 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.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6$2.EqpSelectComponent, selector: "eqp-select", inputs: ["placeholder", "enumData", "enumDataToExclude", "arrayData", "arrayKeyProperty", "arrayValueProperty", "ngModelOptions", "ngModelInput", "formGroupInput", "formControlNameInput", "isRequired", "isDisabled", "isMultiLanguage", "multilanguagePrefixKey", "isAlphabeticalOrderable", "suffixIcon", "prefixIcon", "isMultiSelect", "includeFullObject", "showCancelButton", "isSearchable", "searchText", "noResultSearchText", "data"], outputs: ["ngModelInputChange"] }] });
|
|
9141
9160
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BooleanFilterTemplateComponent, decorators: [{
|
|
9142
9161
|
type: Component,
|
|
9143
|
-
args: [{ selector: 'boolean-filter-template', template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"valueCol\">\r\n <mat-form-field [formGroup]=\"field.FormFormGroup\">\r\n <mat-label class=\"pt-1 ps-3\" [ngStyle]=\"LabelstyleObj\"> {{field.Description}} </mat-label>\r\n <input [ngStyle]=\"FieldstyleObj\" matInput [formControlName]=\"field.Name\" [disabled] [readonly]=\"true\"\r\n [required]=\"false\" [(ngModel)]=\"record[field.Name]\" \r\n />\r\n </mat-form-field>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select [enumData]=\"logicOperatorBoolean\" [(ngModelInput)]=\"selectedLogicOperator\" [showCancelButton]=\"false\" (ngModelInputChange)=\"onFilterChange()\"></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div> \r\n</div>\r\n", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{width:35px;min-width:35px}.rowCol .aggregatorCol{min-width:219px}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}\n"] }]
|
|
9162
|
+
args: [{ selector: 'boolean-filter-template', template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"groupByCol\">\r\n <eqp-select\r\n [placeholder]=\"'Operatori di confronto'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"operatorsGroupByEnum\"\r\n [(ngModelInput)]=\"operatorsGroupBy\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"valueCol\">\r\n <mat-form-field [formGroup]=\"field.FormFormGroup\">\r\n <mat-label class=\"pt-1 ps-3\" [ngStyle]=\"LabelstyleObj\"> {{field.Description}} </mat-label>\r\n <input [ngStyle]=\"FieldstyleObj\" matInput [formControlName]=\"field.Name\" [disabled] [readonly]=\"true\"\r\n [required]=\"false\" [(ngModel)]=\"record[field.Name]\" \r\n />\r\n </mat-form-field>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select [enumData]=\"logicOperatorBoolean\" [(ngModelInput)]=\"selectedLogicOperator\" [showCancelButton]=\"false\" (ngModelInputChange)=\"onFilterChange()\"></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div> \r\n</div>\r\n", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{width:35px;min-width:35px}.rowCol .aggregatorCol{min-width:219px}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}\n"] }]
|
|
9144
9163
|
}], ctorParameters: function () { return []; }, propDecorators: { field: [{
|
|
9145
9164
|
type: Input
|
|
9146
9165
|
}], record: [{
|
|
@@ -9167,6 +9186,7 @@ class DateFilterTemplateComponent {
|
|
|
9167
9186
|
this.visible = false;
|
|
9168
9187
|
this.currentStatistic = null;
|
|
9169
9188
|
this.aggregationFunctionEnum = NotNumberAggregationFunctionEnum;
|
|
9189
|
+
this.operatorsGroupByEnum = NumberAggregationFunctionEnum;
|
|
9170
9190
|
}
|
|
9171
9191
|
ngOnInit() {
|
|
9172
9192
|
if (this.Statistic != null) {
|
|
@@ -9176,6 +9196,13 @@ class DateFilterTemplateComponent {
|
|
|
9176
9196
|
this.isX = this.Statistic.isX;
|
|
9177
9197
|
this.isY = this.Statistic.isY;
|
|
9178
9198
|
this.aggregations = this.Statistic.aggregations;
|
|
9199
|
+
this.operatorsGroupBy = this.Statistic.operatorsGroupBy;
|
|
9200
|
+
if (this.isX === undefined) {
|
|
9201
|
+
this.isX = false;
|
|
9202
|
+
}
|
|
9203
|
+
if (this.isY === undefined) {
|
|
9204
|
+
this.isY = false;
|
|
9205
|
+
}
|
|
9179
9206
|
}
|
|
9180
9207
|
this.setTimeType();
|
|
9181
9208
|
this.setOutputFormat();
|
|
@@ -9185,6 +9212,7 @@ class DateFilterTemplateComponent {
|
|
|
9185
9212
|
this.isX = changes['Statistic'].currentValue.hasOwnProperty('isX') ? changes['Statistic'].currentValue.isX : null;
|
|
9186
9213
|
this.isY = changes['Statistic'].currentValue.hasOwnProperty('isY') ? changes['Statistic'].currentValue.isY : null;
|
|
9187
9214
|
this.aggregations = changes['Statistic'].currentValue.hasOwnProperty('aggregations') ? changes['Statistic'].currentValue.aggregations : null;
|
|
9215
|
+
this.operatorsGroupBy = changes['Statistic'].currentValue.hasOwnProperty('operatorsGroupBy') ? changes['Statistic'].currentValue.operatorsGroupBy : null;
|
|
9188
9216
|
}
|
|
9189
9217
|
}
|
|
9190
9218
|
/**
|
|
@@ -9221,9 +9249,10 @@ class DateFilterTemplateComponent {
|
|
|
9221
9249
|
logicoperator: this.selectedLogicOperator,
|
|
9222
9250
|
fieldtype: this.field.FieldType,
|
|
9223
9251
|
visible: this.visible,
|
|
9224
|
-
isX: this.isX,
|
|
9225
|
-
isY: this.isY,
|
|
9226
|
-
aggregations: this.aggregations
|
|
9252
|
+
isX: this.isX === undefined ? false : this.isX,
|
|
9253
|
+
isY: this.isY === undefined ? false : this.isY,
|
|
9254
|
+
aggregations: this.aggregations,
|
|
9255
|
+
operatorsGroupBy: this.operatorsGroupBy
|
|
9227
9256
|
};
|
|
9228
9257
|
return statistic;
|
|
9229
9258
|
}
|
|
@@ -9266,10 +9295,10 @@ class DateFilterTemplateComponent {
|
|
|
9266
9295
|
}
|
|
9267
9296
|
}
|
|
9268
9297
|
DateFilterTemplateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DateFilterTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9269
|
-
DateFilterTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DateFilterTemplateComponent, selector: "date-filter-template", inputs: { field: "field", record: "record", Statistic: "Statistic", showXY: "showXY", filterResultViewMode: "filterResultViewMode" }, outputs: { filterChange: "filterChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div>
|
|
9298
|
+
DateFilterTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DateFilterTemplateComponent, selector: "date-filter-template", inputs: { field: "field", record: "record", Statistic: "Statistic", showXY: "showXY", filterResultViewMode: "filterResultViewMode" }, outputs: { filterChange: "filterChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-primary': !isX , 'btn-success': isX }\" (click)=\"becomeTheCoord('X')\">X</button>\r\n </div> \r\n <div class=\"groupByCol\">\r\n <eqp-select\r\n [placeholder]=\"'Operatori di confronto'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"operatorsGroupByEnum\"\r\n [(ngModelInput)]=\"operatorsGroupBy\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"valueCol\">\r\n <tmw-datetimepicker [placeholder]=\"field.Description\" [label]=\"field.Description\" [pickerMode]=\"mode\"\r\n [formGroupInput]=\"field.FormFormGroup\" [formControlNameInput]=\"field.Name\"\r\n [minDate]=\"field.MinDate ? field.MinDate : null\" [maxDate]=\"field.MaxDate ? field.MaxDate : null\"\r\n [disabled]=\"field.FormFormGroup.disabled\" [(ngModelInput)]=\"record[field.Name]\"\r\n (ngModelInputChange)=\"onFilterChange()\" [outputFormat]=\"outputFormat\" >\r\n </tmw-datetimepicker>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select [enumData]=\"logicOperatorNumeric\" [(ngModelInput)]=\"selectedLogicOperator\" [showCancelButton]=\"false\" (ngModelInputChange)=\"onFilterChange()\"></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div>\r\n</div>", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{display:flex;justify-content:center;align-items:flex-start;flex-direction:column;border-top-left-radius:0;border-bottom-left-radius:0;width:35px;min-width:35px}.rowCol .coordinatesCol button{height:30px;width:30px;margin:1px;padding:0}.rowCol .aggregatorCol{min-width:219px}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}\n"], dependencies: [{ kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6$2.EqpSelectComponent, selector: "eqp-select", inputs: ["placeholder", "enumData", "enumDataToExclude", "arrayData", "arrayKeyProperty", "arrayValueProperty", "ngModelOptions", "ngModelInput", "formGroupInput", "formControlNameInput", "isRequired", "isDisabled", "isMultiLanguage", "multilanguagePrefixKey", "isAlphabeticalOrderable", "suffixIcon", "prefixIcon", "isMultiSelect", "includeFullObject", "showCancelButton", "isSearchable", "searchText", "noResultSearchText", "data"], outputs: ["ngModelInputChange"] }, { kind: "component", type: i8.TmwDateTimePickerComponent, selector: "tmw-datetimepicker", inputs: ["debugMode", "ngModelInput", "formGroupInput", "formControlNameInput", "pickerMode", "timeType", "label", "placeholder", "hint", "minDate", "maxDate", "locale", "inputFormat", "outputFormat", "forSaveLocalOnDB", "disabled", "readonly", "currentDateAsDefault", "showSpinners", "touchUi", "enableMeridian", "hideTime", "stepHour", "showHours", "hourLabel", "stepMinute", "showMinutes", "minuteLabel", "stepSecond", "showSeconds", "secondLabel", "disableMinute", "dayLabel", "monthLabel", "yearLabel", "highLightedDates", "highLightedAriaFormat"], outputs: ["ngModelInputChange"] }] });
|
|
9270
9299
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DateFilterTemplateComponent, decorators: [{
|
|
9271
9300
|
type: Component,
|
|
9272
|
-
args: [{ selector: 'date-filter-template', template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div>
|
|
9301
|
+
args: [{ selector: 'date-filter-template', template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-primary': !isX , 'btn-success': isX }\" (click)=\"becomeTheCoord('X')\">X</button>\r\n </div> \r\n <div class=\"groupByCol\">\r\n <eqp-select\r\n [placeholder]=\"'Operatori di confronto'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"operatorsGroupByEnum\"\r\n [(ngModelInput)]=\"operatorsGroupBy\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"valueCol\">\r\n <tmw-datetimepicker [placeholder]=\"field.Description\" [label]=\"field.Description\" [pickerMode]=\"mode\"\r\n [formGroupInput]=\"field.FormFormGroup\" [formControlNameInput]=\"field.Name\"\r\n [minDate]=\"field.MinDate ? field.MinDate : null\" [maxDate]=\"field.MaxDate ? field.MaxDate : null\"\r\n [disabled]=\"field.FormFormGroup.disabled\" [(ngModelInput)]=\"record[field.Name]\"\r\n (ngModelInputChange)=\"onFilterChange()\" [outputFormat]=\"outputFormat\" >\r\n </tmw-datetimepicker>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select [enumData]=\"logicOperatorNumeric\" [(ngModelInput)]=\"selectedLogicOperator\" [showCancelButton]=\"false\" (ngModelInputChange)=\"onFilterChange()\"></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div>\r\n</div>", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{display:flex;justify-content:center;align-items:flex-start;flex-direction:column;border-top-left-radius:0;border-bottom-left-radius:0;width:35px;min-width:35px}.rowCol .coordinatesCol button{height:30px;width:30px;margin:1px;padding:0}.rowCol .aggregatorCol{min-width:219px}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}\n"] }]
|
|
9273
9302
|
}], ctorParameters: function () { return []; }, propDecorators: { field: [{
|
|
9274
9303
|
type: Input
|
|
9275
9304
|
}], record: [{
|
|
@@ -9296,6 +9325,7 @@ class ListValueFilterTemplateComponent {
|
|
|
9296
9325
|
this.visible = false;
|
|
9297
9326
|
this.currentStatistic = null;
|
|
9298
9327
|
this.aggregationFunctionEnum = NotNumberAggregationFunctionEnum;
|
|
9328
|
+
this.operatorsGroupByEnum = NumberAggregationFunctionEnum;
|
|
9299
9329
|
this.arrayData = [];
|
|
9300
9330
|
}
|
|
9301
9331
|
ngOnInit() {
|
|
@@ -9304,6 +9334,7 @@ class ListValueFilterTemplateComponent {
|
|
|
9304
9334
|
this.record[this.field.Name] = this.Statistic.value;
|
|
9305
9335
|
this.visible = this.Statistic.visible;
|
|
9306
9336
|
this.aggregations = this.Statistic.aggregations;
|
|
9337
|
+
this.operatorsGroupBy = this.Statistic.operatorsGroupBy;
|
|
9307
9338
|
}
|
|
9308
9339
|
this.configureControllers();
|
|
9309
9340
|
this.initStyles();
|
|
@@ -9314,6 +9345,7 @@ class ListValueFilterTemplateComponent {
|
|
|
9314
9345
|
this.isX = changes['Statistic'].currentValue.hasOwnProperty('isX') ? changes['Statistic'].currentValue.isX : null;
|
|
9315
9346
|
this.isY = changes['Statistic'].currentValue.hasOwnProperty('isY') ? changes['Statistic'].currentValue.isY : null;
|
|
9316
9347
|
this.aggregations = changes['Statistic'].currentValue.hasOwnProperty('aggregations') ? changes['Statistic'].currentValue.aggregations : null;
|
|
9348
|
+
this.operatorsGroupBy = changes['Statistic'].currentValue.hasOwnProperty('operatorsGroupBy') ? changes['Statistic'].currentValue.operatorsGroupBy : null;
|
|
9317
9349
|
}
|
|
9318
9350
|
}
|
|
9319
9351
|
//Funzione per parsare il campo stylecss dell'oggetto field ed applicarlo all'html
|
|
@@ -9334,9 +9366,10 @@ class ListValueFilterTemplateComponent {
|
|
|
9334
9366
|
logicoperator: this.selectedLogicOperator,
|
|
9335
9367
|
fieldtype: this.field.FieldType,
|
|
9336
9368
|
visible: this.visible,
|
|
9337
|
-
isX: this.isX,
|
|
9338
|
-
isY: this.isY,
|
|
9339
|
-
aggregations: this.aggregations
|
|
9369
|
+
isX: this.isX === undefined ? false : this.isX,
|
|
9370
|
+
isY: this.isY === undefined ? false : this.isY,
|
|
9371
|
+
aggregations: this.aggregations,
|
|
9372
|
+
operatorsGroupBy: this.operatorsGroupBy
|
|
9340
9373
|
};
|
|
9341
9374
|
this.filterChange.emit(statistic);
|
|
9342
9375
|
}
|
|
@@ -9410,10 +9443,10 @@ class ListValueFilterTemplateComponent {
|
|
|
9410
9443
|
}
|
|
9411
9444
|
}
|
|
9412
9445
|
ListValueFilterTemplateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ListValueFilterTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9413
|
-
ListValueFilterTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ListValueFilterTemplateComponent, selector: "list-value-filter-template", inputs: { field: "field", record: "record", Statistic: "Statistic", showXY: "showXY" }, outputs: { filterChange: "filterChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div>
|
|
9446
|
+
ListValueFilterTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ListValueFilterTemplateComponent, selector: "list-value-filter-template", inputs: { field: "field", record: "record", Statistic: "Statistic", showXY: "showXY" }, outputs: { filterChange: "filterChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"groupByCol\">\r\n <!-- Come faccio a fare il groupBy di una lista? -->\r\n <eqp-select\r\n [isDisabled]=\"true\"\r\n [placeholder]=\"'Operatori di confronto'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"operatorsGroupByEnum\"\r\n [(ngModelInput)]=\"operatorsGroupBy\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"valueCol\">\r\n <eqp-select [ngStyle]=\"FieldstyleObj\" [arrayData]=\"arrayData\"\r\n [arrayKeyProperty]=\"'Value'\" [showCancelButton]=\"true\" [arrayValueProperty]=\"'Key'\"\r\n [formGroupInput]=\"field.FormFormGroup\" [formControlNameInput]=\"field.Name\" [placeholder]=\"field.Description\"\r\n [includeFullObject]=\"false\" [isRequired]=\"false\" [isDisabled]=\"false\"\r\n [(ngModelInput)]=\"record[field.Name]\" [isMultiSelect]=\"true\"\r\n (ngModelInputChange)=\"onFilterChange()\">\r\n </eqp-select>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select [enumData]=\"logicOperatorListValue\" [(ngModelInput)]=\"selectedLogicOperator\" [showCancelButton]=\"false\" (ngModelInputChange)=\"onFilterChange()\"></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div>\r\n</div>", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{width:35px;min-width:35px}.rowCol .aggregatorCol{min-width:219px}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}\n"], dependencies: [{ kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i6$2.EqpSelectComponent, selector: "eqp-select", inputs: ["placeholder", "enumData", "enumDataToExclude", "arrayData", "arrayKeyProperty", "arrayValueProperty", "ngModelOptions", "ngModelInput", "formGroupInput", "formControlNameInput", "isRequired", "isDisabled", "isMultiLanguage", "multilanguagePrefixKey", "isAlphabeticalOrderable", "suffixIcon", "prefixIcon", "isMultiSelect", "includeFullObject", "showCancelButton", "isSearchable", "searchText", "noResultSearchText", "data"], outputs: ["ngModelInputChange"] }] });
|
|
9414
9447
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ListValueFilterTemplateComponent, decorators: [{
|
|
9415
9448
|
type: Component,
|
|
9416
|
-
args: [{ selector: 'list-value-filter-template', template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div>
|
|
9449
|
+
args: [{ selector: 'list-value-filter-template', template: "<div class=\"row\">\r\n <div class=\"col-12 rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"groupByCol\">\r\n <!-- Come faccio a fare il groupBy di una lista? -->\r\n <eqp-select\r\n [isDisabled]=\"true\"\r\n [placeholder]=\"'Operatori di confronto'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"operatorsGroupByEnum\"\r\n [(ngModelInput)]=\"operatorsGroupBy\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"valueCol\">\r\n <eqp-select [ngStyle]=\"FieldstyleObj\" [arrayData]=\"arrayData\"\r\n [arrayKeyProperty]=\"'Value'\" [showCancelButton]=\"true\" [arrayValueProperty]=\"'Key'\"\r\n [formGroupInput]=\"field.FormFormGroup\" [formControlNameInput]=\"field.Name\" [placeholder]=\"field.Description\"\r\n [includeFullObject]=\"false\" [isRequired]=\"false\" [isDisabled]=\"false\"\r\n [(ngModelInput)]=\"record[field.Name]\" [isMultiSelect]=\"true\"\r\n (ngModelInputChange)=\"onFilterChange()\">\r\n </eqp-select>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select [enumData]=\"logicOperatorListValue\" [(ngModelInput)]=\"selectedLogicOperator\" [showCancelButton]=\"false\" (ngModelInputChange)=\"onFilterChange()\"></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div>\r\n</div>", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{width:35px;min-width:35px}.rowCol .aggregatorCol{min-width:219px}::ng-deep .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important}::ng-deep .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}\n"] }]
|
|
9417
9450
|
}], ctorParameters: function () { return []; }, propDecorators: { field: [{
|
|
9418
9451
|
type: Input
|
|
9419
9452
|
}], record: [{
|
|
@@ -9444,6 +9477,7 @@ class TextareaFilterTemplateComponent {
|
|
|
9444
9477
|
this.visible = false;
|
|
9445
9478
|
this.currentStatistic = null;
|
|
9446
9479
|
this.aggregationFunctionEnum = NotNumberAggregationFunctionEnum;
|
|
9480
|
+
this.operatorsGroupByEnum = NumberAggregationFunctionEnum;
|
|
9447
9481
|
}
|
|
9448
9482
|
ngOnInit() {
|
|
9449
9483
|
if (this.Statistic != null) {
|
|
@@ -9451,6 +9485,7 @@ class TextareaFilterTemplateComponent {
|
|
|
9451
9485
|
this.record[this.field.Name] = this.Statistic.value;
|
|
9452
9486
|
this.visible = this.Statistic.visible;
|
|
9453
9487
|
this.aggregations = this.Statistic.aggregations;
|
|
9488
|
+
this.operatorsGroupBy = this.Statistic.operatorsGroupBy;
|
|
9454
9489
|
}
|
|
9455
9490
|
this.initStyles();
|
|
9456
9491
|
}
|
|
@@ -9480,6 +9515,7 @@ class TextareaFilterTemplateComponent {
|
|
|
9480
9515
|
this.isX = changes['Statistic'].currentValue.hasOwnProperty('isX') ? changes['Statistic'].currentValue.isX : null;
|
|
9481
9516
|
this.isY = changes['Statistic'].currentValue.hasOwnProperty('isY') ? changes['Statistic'].currentValue.isY : null;
|
|
9482
9517
|
this.aggregations = changes['Statistic'].currentValue.hasOwnProperty('aggregations') ? changes['Statistic'].currentValue.aggregations : null;
|
|
9518
|
+
this.operatorsGroupBy = changes['Statistic'].currentValue.hasOwnProperty('operatorsGroupBy') ? changes['Statistic'].currentValue.operatorsGroupBy : null;
|
|
9483
9519
|
}
|
|
9484
9520
|
}
|
|
9485
9521
|
/**
|
|
@@ -9510,9 +9546,10 @@ class TextareaFilterTemplateComponent {
|
|
|
9510
9546
|
logicoperator: this.selectedLogicOperator,
|
|
9511
9547
|
fieldtype: this.field.FieldType,
|
|
9512
9548
|
visible: this.visible,
|
|
9513
|
-
isX: this.isX,
|
|
9514
|
-
isY: this.isY,
|
|
9515
|
-
aggregations: this.aggregations
|
|
9549
|
+
isX: this.isX === undefined ? false : this.isX,
|
|
9550
|
+
isY: this.isY === undefined ? false : this.isY,
|
|
9551
|
+
aggregations: this.aggregations,
|
|
9552
|
+
operatorsGroupBy: this.operatorsGroupBy
|
|
9516
9553
|
};
|
|
9517
9554
|
}
|
|
9518
9555
|
else {
|
|
@@ -9522,9 +9559,10 @@ class TextareaFilterTemplateComponent {
|
|
|
9522
9559
|
logicoperator: null,
|
|
9523
9560
|
fieldtype: null,
|
|
9524
9561
|
visible: this.visible,
|
|
9525
|
-
isX: this.isX,
|
|
9526
|
-
isY: this.isY,
|
|
9527
|
-
aggregations: this.aggregations
|
|
9562
|
+
isX: this.isX === undefined ? false : this.isX,
|
|
9563
|
+
isY: this.isY === undefined ? false : this.isY,
|
|
9564
|
+
aggregations: this.aggregations,
|
|
9565
|
+
operatorsGroupBy: this.operatorsGroupBy
|
|
9528
9566
|
};
|
|
9529
9567
|
}
|
|
9530
9568
|
return output;
|
|
@@ -9541,10 +9579,10 @@ class TextareaFilterTemplateComponent {
|
|
|
9541
9579
|
}
|
|
9542
9580
|
}
|
|
9543
9581
|
TextareaFilterTemplateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TextareaFilterTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9544
|
-
TextareaFilterTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TextareaFilterTemplateComponent, selector: "textarea-filter-template", inputs: { field: "field", record: "record", Statistic: "Statistic", showXY: "showXY" }, outputs: { recordChange: "recordChange", filterChange: "filterChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"col-12 textareaFilterTemplate rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"valueCol\">\r\n <mat-form-field [formGroup]=\"field.FormFormGroup\">\r\n <mat-label class=\"pt-1\" [ngStyle]=\"LabelstyleObj\">\r\n {{ field.Description }}\r\n </mat-label>\r\n <textarea\r\n [ngStyle]=\"FieldstyleObj\"\r\n matInput\r\n [type]=\"getInputType()\"\r\n [formControlName]=\"field.Name\"\r\n [readonly]=\"false\"\r\n [required]=\"false\"\r\n [(ngModel)]=\"record[field.Name]\"\r\n (ngModelChange)=\"onFilterChange()\"\r\n ></textarea>\r\n <mat-error\r\n *ngIf=\"\r\n !field.FormFormGroup.valid &&\r\n field.FormFormGroup.controls[field.Name].touched\r\n \"\r\n >\r\n Min. Caratteri: {{ field.MinLenght }} - Max. Caratteri:\r\n {{ field.MaxLenght }}\r\n </mat-error>\r\n <mat-icon\r\n [hidden]=\"!field.Microphone || platform != 'web'\"\r\n matSuffix\r\n SpeechToText\r\n [(bindedText)]=\"record[field.Name]\"\r\n style=\"cursor: pointer\"\r\n >keyboard_voice</mat-icon\r\n >\r\n </mat-form-field>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select\r\n [enumData]=\"logicOperatorText\"\r\n [(ngModel)]=\"selectedLogicOperator\"\r\n [showCancelButton]=\"false\"\r\n (ngModelChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div>\r\n</div>", styles: [".valueCol{padding-right:0;width:100%}.operatorCol{padding-left:0;width:110px;min-width:110px}.visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.visibleCol button{height:100%}.coordinatesCol{width:35px;min-width:35px}.aggregatorCol{min-width:219px}.keyboard_speaking{color:red}::ng-deep .textareaFilterTemplate .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important;min-height:
|
|
9582
|
+
TextareaFilterTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TextareaFilterTemplateComponent, selector: "textarea-filter-template", inputs: { field: "field", record: "record", Statistic: "Statistic", showXY: "showXY" }, outputs: { recordChange: "recordChange", filterChange: "filterChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"col-12 textareaFilterTemplate rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"groupByCol\">\r\n <eqp-select\r\n [placeholder]=\"'Operatori di confronto'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"operatorsGroupByEnum\"\r\n [(ngModelInput)]=\"operatorsGroupBy\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"valueCol\">\r\n <mat-form-field [formGroup]=\"field.FormFormGroup\">\r\n <mat-label class=\"pt-1\" [ngStyle]=\"LabelstyleObj\">\r\n {{ field.Description }}\r\n </mat-label>\r\n <textarea\r\n [ngStyle]=\"FieldstyleObj\"\r\n matInput\r\n [type]=\"getInputType()\"\r\n [formControlName]=\"field.Name\"\r\n [readonly]=\"false\"\r\n [required]=\"false\"\r\n [(ngModel)]=\"record[field.Name]\"\r\n (ngModelChange)=\"onFilterChange()\"\r\n ></textarea>\r\n <mat-error\r\n *ngIf=\"\r\n !field.FormFormGroup.valid &&\r\n field.FormFormGroup.controls[field.Name].touched\r\n \"\r\n >\r\n Min. Caratteri: {{ field.MinLenght }} - Max. Caratteri:\r\n {{ field.MaxLenght }}\r\n </mat-error>\r\n <mat-icon\r\n [hidden]=\"!field.Microphone || platform != 'web'\"\r\n matSuffix\r\n SpeechToText\r\n [(bindedText)]=\"record[field.Name]\"\r\n style=\"cursor: pointer\"\r\n >keyboard_voice</mat-icon\r\n >\r\n </mat-form-field>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select\r\n [enumData]=\"logicOperatorText\"\r\n [(ngModel)]=\"selectedLogicOperator\"\r\n [showCancelButton]=\"false\"\r\n (ngModelChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div>\r\n</div>", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .valueCol textarea{resize:none;height:25px}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{width:35px;min-width:35px}.rowCol .aggregatorCol{min-width:219px}.keyboard_speaking{color:red}::ng-deep .textareaFilterTemplate .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important;min-height:56px!important}::ng-deep .textareaFilterTemplate .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}::ng-deep .valueCol .mat-form-field{height:56px;overflow:hidden}::ng-deep .valueCol .mat-mdc-text-field-wrapper{min-height:56px;height:56px}\n"], dependencies: [{ kind: "directive", type: i1$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i2$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2$2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i2$2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { 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.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6$2.EqpSelectComponent, selector: "eqp-select", inputs: ["placeholder", "enumData", "enumDataToExclude", "arrayData", "arrayKeyProperty", "arrayValueProperty", "ngModelOptions", "ngModelInput", "formGroupInput", "formControlNameInput", "isRequired", "isDisabled", "isMultiLanguage", "multilanguagePrefixKey", "isAlphabeticalOrderable", "suffixIcon", "prefixIcon", "isMultiSelect", "includeFullObject", "showCancelButton", "isSearchable", "searchText", "noResultSearchText", "data"], outputs: ["ngModelInputChange"] }, { kind: "directive", type: SpeechToTextDirective, selector: "[SpeechToText]", inputs: ["bindedText"], outputs: ["bindedTextChange"] }] });
|
|
9545
9583
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TextareaFilterTemplateComponent, decorators: [{
|
|
9546
9584
|
type: Component,
|
|
9547
|
-
args: [{ selector: 'textarea-filter-template', template: "<div class=\"row\">\r\n <div class=\"col-12 textareaFilterTemplate rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"valueCol\">\r\n <mat-form-field [formGroup]=\"field.FormFormGroup\">\r\n <mat-label class=\"pt-1\" [ngStyle]=\"LabelstyleObj\">\r\n {{ field.Description }}\r\n </mat-label>\r\n <textarea\r\n [ngStyle]=\"FieldstyleObj\"\r\n matInput\r\n [type]=\"getInputType()\"\r\n [formControlName]=\"field.Name\"\r\n [readonly]=\"false\"\r\n [required]=\"false\"\r\n [(ngModel)]=\"record[field.Name]\"\r\n (ngModelChange)=\"onFilterChange()\"\r\n ></textarea>\r\n <mat-error\r\n *ngIf=\"\r\n !field.FormFormGroup.valid &&\r\n field.FormFormGroup.controls[field.Name].touched\r\n \"\r\n >\r\n Min. Caratteri: {{ field.MinLenght }} - Max. Caratteri:\r\n {{ field.MaxLenght }}\r\n </mat-error>\r\n <mat-icon\r\n [hidden]=\"!field.Microphone || platform != 'web'\"\r\n matSuffix\r\n SpeechToText\r\n [(bindedText)]=\"record[field.Name]\"\r\n style=\"cursor: pointer\"\r\n >keyboard_voice</mat-icon\r\n >\r\n </mat-form-field>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select\r\n [enumData]=\"logicOperatorText\"\r\n [(ngModel)]=\"selectedLogicOperator\"\r\n [showCancelButton]=\"false\"\r\n (ngModelChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div>\r\n</div>", styles: [".valueCol{padding-right:0;width:100%}.operatorCol{padding-left:0;width:110px;min-width:110px}.visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.visibleCol button{height:100%}.coordinatesCol{width:35px;min-width:35px}.aggregatorCol{min-width:219px}.keyboard_speaking{color:red}::ng-deep .textareaFilterTemplate .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important;min-height:
|
|
9585
|
+
args: [{ selector: 'textarea-filter-template', template: "<div class=\"row\">\r\n <div class=\"col-12 textareaFilterTemplate rowCol\">\r\n <div class=\"visibleCol\">\r\n <button class=\"btn\" [ngClass]=\"{'btn-success': visible , 'btn-danger': !visible }\" (click)=\"changeVisibility()\">\r\n <mat-icon *ngIf=\"visible\">visibility</mat-icon>\r\n <mat-icon *ngIf=\"!visible\">visibility_off</mat-icon>\r\n </button>\r\n </div> \r\n <div class=\"coordinatesCol\" [hidden]=\"!showXY\">\r\n\r\n </div> \r\n <div class=\"groupByCol\">\r\n <eqp-select\r\n [placeholder]=\"'Operatori di confronto'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"operatorsGroupByEnum\"\r\n [(ngModelInput)]=\"operatorsGroupBy\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"valueCol\">\r\n <mat-form-field [formGroup]=\"field.FormFormGroup\">\r\n <mat-label class=\"pt-1\" [ngStyle]=\"LabelstyleObj\">\r\n {{ field.Description }}\r\n </mat-label>\r\n <textarea\r\n [ngStyle]=\"FieldstyleObj\"\r\n matInput\r\n [type]=\"getInputType()\"\r\n [formControlName]=\"field.Name\"\r\n [readonly]=\"false\"\r\n [required]=\"false\"\r\n [(ngModel)]=\"record[field.Name]\"\r\n (ngModelChange)=\"onFilterChange()\"\r\n ></textarea>\r\n <mat-error\r\n *ngIf=\"\r\n !field.FormFormGroup.valid &&\r\n field.FormFormGroup.controls[field.Name].touched\r\n \"\r\n >\r\n Min. Caratteri: {{ field.MinLenght }} - Max. Caratteri:\r\n {{ field.MaxLenght }}\r\n </mat-error>\r\n <mat-icon\r\n [hidden]=\"!field.Microphone || platform != 'web'\"\r\n matSuffix\r\n SpeechToText\r\n [(bindedText)]=\"record[field.Name]\"\r\n style=\"cursor: pointer\"\r\n >keyboard_voice</mat-icon\r\n >\r\n </mat-form-field>\r\n </div>\r\n <div class=\"operatorCol\">\r\n <eqp-select\r\n [enumData]=\"logicOperatorText\"\r\n [(ngModel)]=\"selectedLogicOperator\"\r\n [showCancelButton]=\"false\"\r\n (ngModelChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n <div class=\"aggregatorCol\">\r\n <eqp-select\r\n [placeholder]=\"'Aggregazioni'\"\r\n [isMultiSelect]=\"true\"\r\n [enumData]=\"aggregationFunctionEnum\"\r\n [(ngModelInput)]=\"aggregations\"\r\n (ngModelInputChange)=\"onFilterChange()\"\r\n ></eqp-select>\r\n </div> \r\n </div>\r\n</div>", styles: [".rowCol{display:flex;height:56px}.rowCol>*{height:100%}.rowCol .valueCol{padding-right:0;width:100%}.rowCol .valueCol textarea{resize:none;height:25px}.rowCol .operatorCol{padding-left:0;padding-right:0;width:110px;min-width:110px}.rowCol .visibleCol{display:flex;justify-content:center;align-items:flex-start;border-top-left-radius:0;border-bottom-left-radius:0;width:50px;min-width:50px}.rowCol .visibleCol button{height:100%}.rowCol .coordinatesCol{width:35px;min-width:35px}.rowCol .aggregatorCol{min-width:219px}.keyboard_speaking{color:red}::ng-deep .textareaFilterTemplate .operatorCol .mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:#a5afc0!important;min-height:56px!important}::ng-deep .textareaFilterTemplate .operatorCol .mat-mdc-select-value{color:#081c45;font-size:16px;font-weight:700;position:relative;top:-6px}::ng-deep .valueCol .mat-form-field{height:56px;overflow:hidden}::ng-deep .valueCol .mat-mdc-text-field-wrapper{min-height:56px;height:56px}\n"] }]
|
|
9548
9586
|
}], ctorParameters: function () { return []; }, propDecorators: { field: [{
|
|
9549
9587
|
type: Input
|
|
9550
9588
|
}], record: [{
|
|
@@ -9588,9 +9626,10 @@ class AttachmentFilterTemplateComponent {
|
|
|
9588
9626
|
logicoperator: this.selectedLogicOperator,
|
|
9589
9627
|
fieldtype: this.field.FieldType,
|
|
9590
9628
|
visible: false,
|
|
9591
|
-
isX: this.isX,
|
|
9592
|
-
isY: this.isY,
|
|
9593
|
-
aggregations: this.aggregations
|
|
9629
|
+
isX: this.isX === undefined ? false : this.isX,
|
|
9630
|
+
isY: this.isY === undefined ? false : this.isY,
|
|
9631
|
+
aggregations: this.aggregations,
|
|
9632
|
+
operatorsGroupBy: this.operatorsGroupBy
|
|
9594
9633
|
};
|
|
9595
9634
|
}
|
|
9596
9635
|
else {
|
|
@@ -9600,9 +9639,10 @@ class AttachmentFilterTemplateComponent {
|
|
|
9600
9639
|
logicoperator: null,
|
|
9601
9640
|
fieldtype: null,
|
|
9602
9641
|
visible: false,
|
|
9603
|
-
isX: this.isX,
|
|
9604
|
-
isY: this.isY,
|
|
9605
|
-
aggregations: this.aggregations
|
|
9642
|
+
isX: this.isX === undefined ? false : this.isX,
|
|
9643
|
+
isY: this.isY === undefined ? false : this.isY,
|
|
9644
|
+
aggregations: this.aggregations,
|
|
9645
|
+
operatorsGroupBy: this.operatorsGroupBy
|
|
9606
9646
|
};
|
|
9607
9647
|
}
|
|
9608
9648
|
return output;
|
|
@@ -9650,9 +9690,10 @@ class ImageFilterTemplateComponent {
|
|
|
9650
9690
|
logicoperator: this.selectedLogicOperator,
|
|
9651
9691
|
fieldtype: this.field.FieldType,
|
|
9652
9692
|
visible: false,
|
|
9653
|
-
isX: this.isX,
|
|
9654
|
-
isY: this.isY,
|
|
9655
|
-
aggregations: this.aggregations
|
|
9693
|
+
isX: this.isX === undefined ? false : this.isX,
|
|
9694
|
+
isY: this.isY === undefined ? false : this.isY,
|
|
9695
|
+
aggregations: this.aggregations,
|
|
9696
|
+
operatorsGroupBy: this.operatorsGroupBy
|
|
9656
9697
|
};
|
|
9657
9698
|
}
|
|
9658
9699
|
else {
|
|
@@ -9662,9 +9703,10 @@ class ImageFilterTemplateComponent {
|
|
|
9662
9703
|
logicoperator: null,
|
|
9663
9704
|
fieldtype: null,
|
|
9664
9705
|
visible: false,
|
|
9665
|
-
isX: this.isX,
|
|
9666
|
-
isY: this.isY,
|
|
9667
|
-
aggregations: this.aggregations
|
|
9706
|
+
isX: this.isX === undefined ? false : this.isX,
|
|
9707
|
+
isY: this.isY === undefined ? false : this.isY,
|
|
9708
|
+
aggregations: this.aggregations,
|
|
9709
|
+
operatorsGroupBy: this.operatorsGroupBy
|
|
9668
9710
|
};
|
|
9669
9711
|
}
|
|
9670
9712
|
return output;
|
|
@@ -9694,6 +9736,7 @@ class ListFormRecordFilterTemplateComponent {
|
|
|
9694
9736
|
this.isX = changes['Statistic'].currentValue.hasOwnProperty('isX') ? changes['Statistic'].currentValue.isX : null;
|
|
9695
9737
|
this.isY = changes['Statistic'].currentValue.hasOwnProperty('isY') ? changes['Statistic'].currentValue.isY : null;
|
|
9696
9738
|
this.aggregations = changes['Statistic'].currentValue.hasOwnProperty('aggregations') ? changes['Statistic'].currentValue.aggregations : null;
|
|
9739
|
+
this.operatorsGroupBy = changes['Statistic'].currentValue.hasOwnProperty('operatorsGroupBy') ? changes['Statistic'].currentValue.operatorsGroupBy : null;
|
|
9697
9740
|
}
|
|
9698
9741
|
}
|
|
9699
9742
|
/**
|
|
@@ -9706,9 +9749,10 @@ class ListFormRecordFilterTemplateComponent {
|
|
|
9706
9749
|
logicoperator: this.selectedLogicOperator,
|
|
9707
9750
|
fieldtype: this.field.FieldType,
|
|
9708
9751
|
visible: false,
|
|
9709
|
-
isX: this.isX,
|
|
9710
|
-
isY: this.isY,
|
|
9711
|
-
aggregations: this.aggregations
|
|
9752
|
+
isX: this.isX === undefined ? false : this.isX,
|
|
9753
|
+
isY: this.isY === undefined ? false : this.isY,
|
|
9754
|
+
aggregations: this.aggregations,
|
|
9755
|
+
operatorsGroupBy: this.operatorsGroupBy
|
|
9712
9756
|
};
|
|
9713
9757
|
this.filterChange.emit(statistic);
|
|
9714
9758
|
}
|
|
@@ -9770,9 +9814,10 @@ class ImageSelectorFilterTemplateComponent {
|
|
|
9770
9814
|
logicoperator: this.selectedLogicOperator,
|
|
9771
9815
|
fieldtype: this.field.FieldType,
|
|
9772
9816
|
visible: false,
|
|
9773
|
-
isX: this.isX,
|
|
9774
|
-
isY: this.isY,
|
|
9775
|
-
aggregations: this.aggregations
|
|
9817
|
+
isX: this.isX === undefined ? false : this.isX,
|
|
9818
|
+
isY: this.isY === undefined ? false : this.isY,
|
|
9819
|
+
aggregations: this.aggregations,
|
|
9820
|
+
operatorsGroupBy: this.operatorsGroupBy
|
|
9776
9821
|
};
|
|
9777
9822
|
}
|
|
9778
9823
|
else {
|
|
@@ -9782,9 +9827,10 @@ class ImageSelectorFilterTemplateComponent {
|
|
|
9782
9827
|
logicoperator: null,
|
|
9783
9828
|
fieldtype: null,
|
|
9784
9829
|
visible: false,
|
|
9785
|
-
isX: this.isX,
|
|
9786
|
-
isY: this.isY,
|
|
9787
|
-
aggregations: this.aggregations
|
|
9830
|
+
isX: this.isX === undefined ? false : this.isX,
|
|
9831
|
+
isY: this.isY === undefined ? false : this.isY,
|
|
9832
|
+
aggregations: this.aggregations,
|
|
9833
|
+
operatorsGroupBy: this.operatorsGroupBy
|
|
9788
9834
|
};
|
|
9789
9835
|
}
|
|
9790
9836
|
return output;
|
|
@@ -15566,7 +15612,8 @@ class ListFormRecordTriggerTemplateComponent {
|
|
|
15566
15612
|
visible: true,
|
|
15567
15613
|
isX: this.isX,
|
|
15568
15614
|
isY: this.isY,
|
|
15569
|
-
aggregations: this.aggregations
|
|
15615
|
+
aggregations: this.aggregations,
|
|
15616
|
+
operatorsGroupBy: this.operatorsGroupBy
|
|
15570
15617
|
};
|
|
15571
15618
|
}
|
|
15572
15619
|
else {
|
|
@@ -15578,7 +15625,8 @@ class ListFormRecordTriggerTemplateComponent {
|
|
|
15578
15625
|
visible: true,
|
|
15579
15626
|
isX: this.isX,
|
|
15580
15627
|
isY: this.isY,
|
|
15581
|
-
aggregations: this.aggregations
|
|
15628
|
+
aggregations: this.aggregations,
|
|
15629
|
+
operatorsGroupBy: this.operatorsGroupBy
|
|
15582
15630
|
};
|
|
15583
15631
|
}
|
|
15584
15632
|
return output;
|