@eqproject/eqp-dynamic-module 1.1.1 → 1.1.2

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.
@@ -1504,6 +1504,7 @@ class ListValueFieldTemplateComponent {
1504
1504
  this.LabelstyleObj = UtilityHelperService.initStyles(this.field.LabelstyleCSS);
1505
1505
  }
1506
1506
  ngOnInit() {
1507
+ this.updateField();
1507
1508
  this.setArrayData();
1508
1509
  if (this.field.IsMultiChoiche && !this.record[this.field.Name]) {
1509
1510
  this.record[this.field.Name] = [];
@@ -1512,7 +1513,6 @@ class ListValueFieldTemplateComponent {
1512
1513
  // e il validator del FormControl. Se non viene eseguita questa riga
1513
1514
  // l'utente deve modificare la selezione fatta per aggiornare la form.
1514
1515
  this.setFormControlValue();
1515
- this.updateField();
1516
1516
  this.initStyles();
1517
1517
  }
1518
1518
  ngOnChanges(changes) {
@@ -1527,7 +1527,18 @@ class ListValueFieldTemplateComponent {
1527
1527
  */
1528
1528
  updateField() {
1529
1529
  if (this.field.Formula) {
1530
- this.record[this.field.Name] = UtilityHelperService.EvaluateFieldFormula(this.field.Formula, this.record, null);
1530
+ this.field.ValuePairs = {};
1531
+ var temp = UtilityHelperService.EvaluateFieldFormula(this.field.Formula, this.record, null);
1532
+ for (var key in temp) {
1533
+ if (UtilityHelperService.isNumeric(temp[key])) {
1534
+ this.field.ValuePairs[key] = Number(temp[key]);
1535
+ }
1536
+ else {
1537
+ this.field.ValuePairs[key] = temp[key];
1538
+ }
1539
+ }
1540
+ // this.setArrayData();
1541
+ //this.record[this.field.Name] = UtilityHelperService.EvaluateFieldFormula(this.field.Formula, this.record, null);
1531
1542
  }
1532
1543
  if (this.field.VisibleIf) {
1533
1544
  this.field.InListView = UtilityHelperService.EvaluateFieldFormula(this.field.VisibleIf, this.record, null);
@@ -1568,9 +1579,7 @@ class ListValueFieldTemplateComponent {
1568
1579
  * Metodo per emettere l'evento che il valore del record è cambiato.
1569
1580
  */
1570
1581
  onRecordValueChange() {
1571
- if (!this.field.Formula) {
1572
- this.recordChange.emit(this.record);
1573
- }
1582
+ this.recordChange.emit(this.record);
1574
1583
  }
1575
1584
  /**
1576
1585
  * Metodo per creare un array di oggetti del tipo { Key: string, Value: any } da usare come sorgente dati per la eqp-select.
@@ -1581,7 +1590,7 @@ class ListValueFieldTemplateComponent {
1581
1590
  Object.keys(this.field.ValuePairs).forEach(k => this.createNumberArrayDataElement(k, Number(this.field.ValuePairs[k])));
1582
1591
  }
1583
1592
  else {
1584
- Object.keys(this.field.ValuePairs).forEach(k => this.createNumberArrayDataElement(k, this.field.ValuePairs[k]));
1593
+ Object.keys(this.field.ValuePairs).forEach(k => this.createArrayDataElement(k, this.field.ValuePairs[k]));
1585
1594
  }
1586
1595
  }
1587
1596
  else {
@@ -2950,6 +2959,7 @@ class AddFormulaComponent {
2950
2959
  this.fieldNull = true;
2951
2960
  this.formula = new Formula('0');
2952
2961
  this.stringaFormula = "";
2962
+ this.counter = 0;
2953
2963
  this.Fields = [];
2954
2964
  }
2955
2965
  ngOnInit() {
@@ -3012,6 +3022,11 @@ class AddFormulaComponent {
3012
3022
  }
3013
3023
  }
3014
3024
  }
3025
+ addArrayList() {
3026
+ this.counter++;
3027
+ var value = "var outputList" + this.counter + " = { \"key\" : value , \"key2\" : value2 }; outputList" + this.counter + ";";
3028
+ this.addNumber(value);
3029
+ }
3015
3030
  addNumber(value) {
3016
3031
  this.stringaFormula = this.stringaFormula.trim();
3017
3032
  if (UtilityHelperService.isNumeric(value)) {
@@ -3100,10 +3115,10 @@ class AddFormulaComponent {
3100
3115
  }
3101
3116
  }
3102
3117
  AddFormulaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: AddFormulaComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1$3.MatDialogRef }, { token: i1$3.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
3103
- AddFormulaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.8", type: AddFormulaComponent, selector: "eqp-dynamic-module-add-formula-component", viewQueries: [{ propertyName: "formulaTextArea", first: true, predicate: ["formula"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-9\">\r\n <div class=\"row\">\r\n <div class=\"col-12 pt-2\">\r\n <div class=\"p-1\">\r\n <textarea name=\"formula\" #formula type=\"textarea\" id=\"formula\" rows=\"10\"\r\n style=\"width: 100%\" class=\"droptarget\"\r\n (click)=\"lostFocus(formula)\" (keyup)=\"lostFocus(formula)\"\r\n (blur)=\"lostFocus(formula)\"\r\n [(ngModel)]=\"stringaFormula\"></textarea>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <div class=\"p-1 form-group\">\r\n <form method=\"POST\" class=\"alert alert-secondary\">\r\n <div class=\"w-100\">\r\n <div class=\"row pt-2\">\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addNumber('IF( Condizione ) { se vera } ELSE { se falsa }')\">IF</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addNumber('/100')\">%</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-danger\"\r\n (click)=\"clear()\">C</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-xl btn-info\"\r\n (click)=\"addNumber('/')\">&divide;</button>\r\n </div>\r\n </div>\r\n <div class=\"row pt-2\">\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.pow( valore ,2)')\">x<sup>2</sup></button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.pow( valore ,3)')\">x<sup>3</sup></button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.pow( valore , potenza )')\">x<sup>y</sup></button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addNumber(' * 3.14 ')\">&#x213C;</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('7')\">7</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('8')\">8</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('9')\">9</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-xl btn-info\"\r\n (click)=\"addNumber('*')\">&times;</button>\r\n </div>\r\n </div>\r\n <div class=\"row pt-2\">\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.sqrt( valore )')\"><sup>2</sup>&radic;x</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.pow( radice , 1/ valore )')\"><sup>y</sup>&radic;x</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.log( valore )')\">ln</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.log10( valore )')\">log</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('4')\">4</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('5')\">5</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('6')\">6</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-xl btn-info\"\r\n (click)=\"addNumber('-')\">&minus;</button>\r\n </div>\r\n </div>\r\n <div class=\"row pt-2\">\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.sin( valore )')\">sin</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.cos( valore )')\">cos</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.tan( valore )')\">tan</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addNumber('* 2.718281828459045')\">e</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('1')\">1</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('2')\">2</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('3')\">3</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-xl btn-info\"\r\n (click)=\"addNumber('+')\">&#43;</button>\r\n </div>\r\n </div>\r\n <div class=\"row pt-2\">\r\n <div class=\"col d-lt-flex\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div> \r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('0')\">0</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('.')\">.</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-primary\"\r\n (click)=\"back()\">Annulla</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-primary\"\r\n (click)=\"save()\">Salva</button>\r\n </div>\r\n </div>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-3 p-2\">\r\n <div [hidden]=\"fieldNull\" cdkDropList cdkDropListOrientation=\"vertical\" class=\"example-list\">\r\n <div class=\"example-box\" draggable=\"true\" (drag)=\"drag_handler($event)\"\r\n (dragend)=\"dragend_handler($event)\" (dragenter)=\"dragenter_handler($event)\"\r\n (dragleave)=\"dragleave_handler($event)\" (dragover)=\"dragover_handler($event)\"\r\n (dragstart)=\"dragstart_handler($event)\" (drop)=\"drop_handler($event)\"\r\n [attr.data-drag-data]=\"field.Label\" *ngFor=\"let field of Fields\" cdkDrag>\r\n {{field.Label}}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n", styles: [".col,.col-2,.col-12{padding-left:5px;padding-right:5px}.btn-xl{font-size:1.5rem;line-height:.9}.btn-sm{border-radius:0}@media (min-width: 420px){.d-lt-none{display:none!important}.d-lt-inline{display:inline!important}.d-lt-inline-block{display:inline-block!important}.d-lt-block{display:block!important}.d-lt-table{display:table!important}.d-lt-table-row{display:table-row!important}.d-lt-table-cell{display:table-cell!important}.d-lt-flex{display:flex!important}.d-lt-inline-flex{display:inline-flex!important}.mycol-2{flex:0 0 20%;max-width:20%}}.preview{padding:20px 10px;border-right:solid 1px #ccc;color:#ff0000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;text-align:center;cursor:move;background-color:#0ff;font-size:14px;flex-grow:1;flex-basis:0}.example-box{padding:20px 10px;border-right:solid 1px #ccc;border-bottom:solid 1px #ccc;color:#000000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;text-align:center;cursor:move;background:white;font-size:14px;flex-grow:1;flex-basis:0}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-box:last-child{border:none}.example-list{min-width:100%;max-width:100%;border:solid 1px #ccc;min-height:60px;background:white;border-radius:4px;overflow:hidden}.example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}.example-custom-placeholder{background:#ccc;border:dotted 3px #999;min-height:60px;transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drag-placeholder{opacity:0}.droptarget{float:left;margin:15px 100px 15px 15px;padding:10px;border:1px solid #aaaaaa}.blink{animation:blink-animation .4s steps(5,start) infinite;-webkit-animation:blink-animation .4s steps(5,start) infinite}@keyframes blink-animation{to{visibility:hidden}}.categories-item-drag{color:red!important;text-align:center;position:relative;line-height:2rem;padding:-.5rem}\n"], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
3118
+ AddFormulaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.8", type: AddFormulaComponent, selector: "eqp-dynamic-module-add-formula-component", viewQueries: [{ propertyName: "formulaTextArea", first: true, predicate: ["formula"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-9\">\r\n <div class=\"row\">\r\n <div class=\"col-12 pt-2\">\r\n <div class=\"p-1\">\r\n <textarea name=\"formula\" #formula type=\"textarea\" id=\"formula\" rows=\"10\"\r\n style=\"width: 100%\" class=\"droptarget\"\r\n (click)=\"lostFocus(formula)\" (keyup)=\"lostFocus(formula)\"\r\n (blur)=\"lostFocus(formula)\"\r\n [(ngModel)]=\"stringaFormula\"></textarea>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <div class=\"p-1 form-group\">\r\n <form method=\"POST\" class=\"alert alert-secondary\">\r\n <div class=\"w-100\">\r\n <div class=\"row pt-2\">\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addArrayList()\">ArrayList</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addNumber('IF( Condizione ) { se vera } ELSE { se falsa }')\">IF</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addNumber('/100')\">%</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-danger\"\r\n (click)=\"clear()\">C</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-xl btn-info\"\r\n (click)=\"addNumber('/')\">&divide;</button>\r\n </div>\r\n </div>\r\n <div class=\"row pt-2\">\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.pow( valore ,2)')\">x<sup>2</sup></button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.pow( valore ,3)')\">x<sup>3</sup></button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.pow( valore , potenza )')\">x<sup>y</sup></button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addNumber(' * 3.14 ')\">&#x213C;</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('7')\">7</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('8')\">8</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('9')\">9</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-xl btn-info\"\r\n (click)=\"addNumber('*')\">&times;</button>\r\n </div>\r\n </div>\r\n <div class=\"row pt-2\">\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.sqrt( valore )')\"><sup>2</sup>&radic;x</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.pow( radice , 1/ valore )')\"><sup>y</sup>&radic;x</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.log( valore )')\">ln</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.log10( valore )')\">log</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('4')\">4</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('5')\">5</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('6')\">6</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-xl btn-info\"\r\n (click)=\"addNumber('-')\">&minus;</button>\r\n </div>\r\n </div>\r\n <div class=\"row pt-2\">\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.sin( valore )')\">sin</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.cos( valore )')\">cos</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.tan( valore )')\">tan</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addNumber('* 2.718281828459045')\">e</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('1')\">1</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('2')\">2</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('3')\">3</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-xl btn-info\"\r\n (click)=\"addNumber('+')\">&#43;</button>\r\n </div>\r\n </div>\r\n <div class=\"row pt-2\">\r\n <div class=\"col d-lt-flex\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('0')\">0</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('.')\">.</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-primary\"\r\n (click)=\"back()\">Annulla</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-primary\"\r\n (click)=\"save()\">Salva</button>\r\n </div>\r\n </div>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-3 p-2\">\r\n <div [hidden]=\"fieldNull\" cdkDropList cdkDropListOrientation=\"vertical\" class=\"example-list\">\r\n <div class=\"example-box\" draggable=\"true\" (drag)=\"drag_handler($event)\"\r\n (dragend)=\"dragend_handler($event)\" (dragenter)=\"dragenter_handler($event)\"\r\n (dragleave)=\"dragleave_handler($event)\" (dragover)=\"dragover_handler($event)\"\r\n (dragstart)=\"dragstart_handler($event)\" (drop)=\"drop_handler($event)\"\r\n [attr.data-drag-data]=\"field.Label\" *ngFor=\"let field of Fields\" cdkDrag>\r\n {{field.Label}}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [".col,.col-2,.col-12{padding-left:5px;padding-right:5px}.btn-xl{font-size:1.5rem;line-height:.9}.btn-sm{border-radius:0}@media (min-width: 420px){.d-lt-none{display:none!important}.d-lt-inline{display:inline!important}.d-lt-inline-block{display:inline-block!important}.d-lt-block{display:block!important}.d-lt-table{display:table!important}.d-lt-table-row{display:table-row!important}.d-lt-table-cell{display:table-cell!important}.d-lt-flex{display:flex!important}.d-lt-inline-flex{display:inline-flex!important}.mycol-2{flex:0 0 20%;max-width:20%}}.preview{padding:20px 10px;border-right:solid 1px #ccc;color:#ff0000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;text-align:center;cursor:move;background-color:#0ff;font-size:14px;flex-grow:1;flex-basis:0}.example-box{padding:20px 10px;border-right:solid 1px #ccc;border-bottom:solid 1px #ccc;color:#000000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;text-align:center;cursor:move;background:white;font-size:14px;flex-grow:1;flex-basis:0}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-box:last-child{border:none}.example-list{min-width:100%;max-width:100%;border:solid 1px #ccc;min-height:60px;background:white;border-radius:4px;overflow:hidden}.example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}.example-custom-placeholder{background:#ccc;border:dotted 3px #999;min-height:60px;transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drag-placeholder{opacity:0}.droptarget{float:left;margin:15px 100px 15px 15px;padding:10px;border:1px solid #aaaaaa}.blink{animation:blink-animation .4s steps(5,start) infinite;-webkit-animation:blink-animation .4s steps(5,start) infinite}@keyframes blink-animation{to{visibility:hidden}}.categories-item-drag{color:red!important;text-align:center;position:relative;line-height:2rem;padding:-.5rem}\n"], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
3104
3119
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: AddFormulaComponent, decorators: [{
3105
3120
  type: Component,
3106
- args: [{ selector: 'eqp-dynamic-module-add-formula-component', template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-9\">\r\n <div class=\"row\">\r\n <div class=\"col-12 pt-2\">\r\n <div class=\"p-1\">\r\n <textarea name=\"formula\" #formula type=\"textarea\" id=\"formula\" rows=\"10\"\r\n style=\"width: 100%\" class=\"droptarget\"\r\n (click)=\"lostFocus(formula)\" (keyup)=\"lostFocus(formula)\"\r\n (blur)=\"lostFocus(formula)\"\r\n [(ngModel)]=\"stringaFormula\"></textarea>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <div class=\"p-1 form-group\">\r\n <form method=\"POST\" class=\"alert alert-secondary\">\r\n <div class=\"w-100\">\r\n <div class=\"row pt-2\">\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addNumber('IF( Condizione ) { se vera } ELSE { se falsa }')\">IF</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addNumber('/100')\">%</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-danger\"\r\n (click)=\"clear()\">C</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-xl btn-info\"\r\n (click)=\"addNumber('/')\">&divide;</button>\r\n </div>\r\n </div>\r\n <div class=\"row pt-2\">\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.pow( valore ,2)')\">x<sup>2</sup></button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.pow( valore ,3)')\">x<sup>3</sup></button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.pow( valore , potenza )')\">x<sup>y</sup></button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addNumber(' * 3.14 ')\">&#x213C;</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('7')\">7</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('8')\">8</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('9')\">9</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-xl btn-info\"\r\n (click)=\"addNumber('*')\">&times;</button>\r\n </div>\r\n </div>\r\n <div class=\"row pt-2\">\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.sqrt( valore )')\"><sup>2</sup>&radic;x</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.pow( radice , 1/ valore )')\"><sup>y</sup>&radic;x</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.log( valore )')\">ln</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.log10( valore )')\">log</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('4')\">4</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('5')\">5</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('6')\">6</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-xl btn-info\"\r\n (click)=\"addNumber('-')\">&minus;</button>\r\n </div>\r\n </div>\r\n <div class=\"row pt-2\">\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.sin( valore )')\">sin</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.cos( valore )')\">cos</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.tan( valore )')\">tan</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addNumber('* 2.718281828459045')\">e</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('1')\">1</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('2')\">2</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('3')\">3</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-xl btn-info\"\r\n (click)=\"addNumber('+')\">&#43;</button>\r\n </div>\r\n </div>\r\n <div class=\"row pt-2\">\r\n <div class=\"col d-lt-flex\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div> \r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('0')\">0</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('.')\">.</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-primary\"\r\n (click)=\"back()\">Annulla</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-primary\"\r\n (click)=\"save()\">Salva</button>\r\n </div>\r\n </div>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-3 p-2\">\r\n <div [hidden]=\"fieldNull\" cdkDropList cdkDropListOrientation=\"vertical\" class=\"example-list\">\r\n <div class=\"example-box\" draggable=\"true\" (drag)=\"drag_handler($event)\"\r\n (dragend)=\"dragend_handler($event)\" (dragenter)=\"dragenter_handler($event)\"\r\n (dragleave)=\"dragleave_handler($event)\" (dragover)=\"dragover_handler($event)\"\r\n (dragstart)=\"dragstart_handler($event)\" (drop)=\"drop_handler($event)\"\r\n [attr.data-drag-data]=\"field.Label\" *ngFor=\"let field of Fields\" cdkDrag>\r\n {{field.Label}}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n", styles: [".col,.col-2,.col-12{padding-left:5px;padding-right:5px}.btn-xl{font-size:1.5rem;line-height:.9}.btn-sm{border-radius:0}@media (min-width: 420px){.d-lt-none{display:none!important}.d-lt-inline{display:inline!important}.d-lt-inline-block{display:inline-block!important}.d-lt-block{display:block!important}.d-lt-table{display:table!important}.d-lt-table-row{display:table-row!important}.d-lt-table-cell{display:table-cell!important}.d-lt-flex{display:flex!important}.d-lt-inline-flex{display:inline-flex!important}.mycol-2{flex:0 0 20%;max-width:20%}}.preview{padding:20px 10px;border-right:solid 1px #ccc;color:#ff0000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;text-align:center;cursor:move;background-color:#0ff;font-size:14px;flex-grow:1;flex-basis:0}.example-box{padding:20px 10px;border-right:solid 1px #ccc;border-bottom:solid 1px #ccc;color:#000000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;text-align:center;cursor:move;background:white;font-size:14px;flex-grow:1;flex-basis:0}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-box:last-child{border:none}.example-list{min-width:100%;max-width:100%;border:solid 1px #ccc;min-height:60px;background:white;border-radius:4px;overflow:hidden}.example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}.example-custom-placeholder{background:#ccc;border:dotted 3px #999;min-height:60px;transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drag-placeholder{opacity:0}.droptarget{float:left;margin:15px 100px 15px 15px;padding:10px;border:1px solid #aaaaaa}.blink{animation:blink-animation .4s steps(5,start) infinite;-webkit-animation:blink-animation .4s steps(5,start) infinite}@keyframes blink-animation{to{visibility:hidden}}.categories-item-drag{color:red!important;text-align:center;position:relative;line-height:2rem;padding:-.5rem}\n"] }]
3121
+ args: [{ selector: 'eqp-dynamic-module-add-formula-component', template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-9\">\r\n <div class=\"row\">\r\n <div class=\"col-12 pt-2\">\r\n <div class=\"p-1\">\r\n <textarea name=\"formula\" #formula type=\"textarea\" id=\"formula\" rows=\"10\"\r\n style=\"width: 100%\" class=\"droptarget\"\r\n (click)=\"lostFocus(formula)\" (keyup)=\"lostFocus(formula)\"\r\n (blur)=\"lostFocus(formula)\"\r\n [(ngModel)]=\"stringaFormula\"></textarea>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <div class=\"p-1 form-group\">\r\n <form method=\"POST\" class=\"alert alert-secondary\">\r\n <div class=\"w-100\">\r\n <div class=\"row pt-2\">\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addArrayList()\">ArrayList</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addNumber('IF( Condizione ) { se vera } ELSE { se falsa }')\">IF</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addNumber('/100')\">%</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-danger\"\r\n (click)=\"clear()\">C</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-xl btn-info\"\r\n (click)=\"addNumber('/')\">&divide;</button>\r\n </div>\r\n </div>\r\n <div class=\"row pt-2\">\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.pow( valore ,2)')\">x<sup>2</sup></button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.pow( valore ,3)')\">x<sup>3</sup></button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.pow( valore , potenza )')\">x<sup>y</sup></button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addNumber(' * 3.14 ')\">&#x213C;</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('7')\">7</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('8')\">8</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('9')\">9</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-xl btn-info\"\r\n (click)=\"addNumber('*')\">&times;</button>\r\n </div>\r\n </div>\r\n <div class=\"row pt-2\">\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.sqrt( valore )')\"><sup>2</sup>&radic;x</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.pow( radice , 1/ valore )')\"><sup>y</sup>&radic;x</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.log( valore )')\">ln</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.log10( valore )')\">log</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('4')\">4</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('5')\">5</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('6')\">6</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-xl btn-info\"\r\n (click)=\"addNumber('-')\">&minus;</button>\r\n </div>\r\n </div>\r\n <div class=\"row pt-2\">\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.sin( valore )')\">sin</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.cos( valore )')\">cos</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addSymbol('Math.tan( valore )')\">tan</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-secondary\"\r\n (click)=\"addNumber('* 2.718281828459045')\">e</button>\r\n </div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('1')\">1</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('2')\">2</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('3')\">3</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-xl btn-info\"\r\n (click)=\"addNumber('+')\">&#43;</button>\r\n </div>\r\n </div>\r\n <div class=\"row pt-2\">\r\n <div class=\"col d-lt-flex\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div>\r\n <div class=\"col\"></div>\r\n\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('0')\">0</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-success\"\r\n (click)=\"addNumber('.')\">.</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-primary\"\r\n (click)=\"back()\">Annulla</button>\r\n </div>\r\n <div class=\"col d-lt-flex\"><button\r\n class=\"form-control btn btn-sm btn-primary\"\r\n (click)=\"save()\">Salva</button>\r\n </div>\r\n </div>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-3 p-2\">\r\n <div [hidden]=\"fieldNull\" cdkDropList cdkDropListOrientation=\"vertical\" class=\"example-list\">\r\n <div class=\"example-box\" draggable=\"true\" (drag)=\"drag_handler($event)\"\r\n (dragend)=\"dragend_handler($event)\" (dragenter)=\"dragenter_handler($event)\"\r\n (dragleave)=\"dragleave_handler($event)\" (dragover)=\"dragover_handler($event)\"\r\n (dragstart)=\"dragstart_handler($event)\" (drop)=\"drop_handler($event)\"\r\n [attr.data-drag-data]=\"field.Label\" *ngFor=\"let field of Fields\" cdkDrag>\r\n {{field.Label}}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [".col,.col-2,.col-12{padding-left:5px;padding-right:5px}.btn-xl{font-size:1.5rem;line-height:.9}.btn-sm{border-radius:0}@media (min-width: 420px){.d-lt-none{display:none!important}.d-lt-inline{display:inline!important}.d-lt-inline-block{display:inline-block!important}.d-lt-block{display:block!important}.d-lt-table{display:table!important}.d-lt-table-row{display:table-row!important}.d-lt-table-cell{display:table-cell!important}.d-lt-flex{display:flex!important}.d-lt-inline-flex{display:inline-flex!important}.mycol-2{flex:0 0 20%;max-width:20%}}.preview{padding:20px 10px;border-right:solid 1px #ccc;color:#ff0000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;text-align:center;cursor:move;background-color:#0ff;font-size:14px;flex-grow:1;flex-basis:0}.example-box{padding:20px 10px;border-right:solid 1px #ccc;border-bottom:solid 1px #ccc;color:#000000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;text-align:center;cursor:move;background:white;font-size:14px;flex-grow:1;flex-basis:0}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-box:last-child{border:none}.example-list{min-width:100%;max-width:100%;border:solid 1px #ccc;min-height:60px;background:white;border-radius:4px;overflow:hidden}.example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}.example-custom-placeholder{background:#ccc;border:dotted 3px #999;min-height:60px;transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drag-placeholder{opacity:0}.droptarget{float:left;margin:15px 100px 15px 15px;padding:10px;border:1px solid #aaaaaa}.blink{animation:blink-animation .4s steps(5,start) infinite;-webkit-animation:blink-animation .4s steps(5,start) infinite}@keyframes blink-animation{to{visibility:hidden}}.categories-item-drag{color:red!important;text-align:center;position:relative;line-height:2rem;padding:-.5rem}\n"] }]
3107
3122
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
3108
3123
  type: Inject,
3109
3124
  args: [MAT_DIALOG_DATA]
@@ -3160,15 +3175,15 @@ class AddFormFieldComponent {
3160
3175
  * @summary Aggiorna l'elenco dei suggerimenti per l'autocomplete se l'utente esegue il focus sull'input
3161
3176
  * oppure al keyup sulla tastiera di un tasto diverso dalle frecce.
3162
3177
  */
3163
- setFormulaAutocompleteOptions(keyboardEvent) {
3164
- // Creo l'array per l'autocomplete solo se sto facendo il focus sull'input o se sto premendo un tasto
3165
- // sulla tastiera diverso dalle frecce (in quest'ultimo caso, se non viene eseguito il filtro sull'evento,
3166
- // non si può selezionare un suggerimento dell'autocomplete perchè al click verrebbe ricaricato l'array e
3167
- // si prederebbe la selezione appena fatta).
3168
- if (!keyboardEvent || !keyboardEvent.code.includes("Arrow")) {
3169
- this.formulaAutocompleteOptions = UtilityHelperService.GetAutocompleteOptions(this.availableFields, this.field.Formula);
3170
- }
3171
- }
3178
+ // setFormulaAutocompleteOptions(keyboardEvent: KeyboardEvent) {
3179
+ // // Creo l'array per l'autocomplete solo se sto facendo il focus sull'input o se sto premendo un tasto
3180
+ // // sulla tastiera diverso dalle frecce (in quest'ultimo caso, se non viene eseguito il filtro sull'evento,
3181
+ // // non si può selezionare un suggerimento dell'autocomplete perchè al click verrebbe ricaricato l'array e
3182
+ // // si prederebbe la selezione appena fatta).
3183
+ // if (!keyboardEvent || !keyboardEvent.code.includes("Arrow")) {
3184
+ // this.formulaAutocompleteOptions = UtilityHelperService.GetAutocompleteOptions(this.availableFields, this.field.Formula);
3185
+ // }
3186
+ // }
3172
3187
  setVisibleIfAutocompleteOptions(keyboardEvent) {
3173
3188
  // Creo l'array per l'autocomplete solo se sto facendo il focus sull'input o se sto premendo un tasto
3174
3189
  // sulla tastiera diverso dalle frecce (in quest'ultimo caso, se non viene eseguito il filtro sull'evento,
@@ -3192,7 +3207,7 @@ class AddFormFieldComponent {
3192
3207
  */
3193
3208
  createFieldForm() {
3194
3209
  this.fieldFormGroup = this.formBuilder.group({
3195
- Label: [this.field.Label, [Validators.required, this.questionPoll]],
3210
+ Label: [this.field.Label, [Validators.required, this.questionPoll, Validators.pattern('^[a-zA-Z ]*$')]],
3196
3211
  Description: [this.field.Description, [Validators.required, this.questionPoll]],
3197
3212
  Readonly: [this.field.Readonly],
3198
3213
  Required: [this.field.Required],
@@ -3240,7 +3255,7 @@ class AddFormFieldComponent {
3240
3255
  this.field.Microphone = false;
3241
3256
  }
3242
3257
  this.fieldFormGroup.addControl('TextMask', new UntypedFormControl(this.field.TextMask));
3243
- this.fieldFormGroup.addControl('MaxLenght', [new UntypedFormControl(this.field.MaxLenght), [this.questionPoll, Validators.pattern("^[0-9]*$")]]);
3258
+ this.fieldFormGroup.addControl('MaxLenght', new UntypedFormControl(this.field.MaxLenght, [this.questionPoll, Validators.pattern("^[0-9]*$")]));
3244
3259
  this.fieldFormGroup.addControl('MinLenght', new UntypedFormControl(this.field.MinLenght, [this.questionPoll, Validators.pattern("^[0-9]*$")]));
3245
3260
  this.fieldFormGroup.addControl('Microphone', new UntypedFormControl(this.field.Microphone));
3246
3261
  this.fieldTypeFormTemplate = this.textFieldFormTemplate;
@@ -3592,6 +3607,12 @@ class AddFormFieldComponent {
3592
3607
  switch (this.field.FieldType) {
3593
3608
  case FieldTypeEnum['Elenco generico']:
3594
3609
  if (this.field.PresentationMode != ListPresentationEnum.Immagini) {
3610
+ if (this.field.Formula != undefined && this.field.Formula != "") {
3611
+ if (!this.field.ValuePairs) {
3612
+ this.field.ValuePairs = {};
3613
+ }
3614
+ return false;
3615
+ }
3595
3616
  return !this.field.ValuePairs || this.field.ValuePairs.length === 0;
3596
3617
  }
3597
3618
  else {