@jooler/inputs 0.0.24 → 0.0.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.
@@ -1,7 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
- import { EventEmitter, forwardRef, Component, Output, Input, Injectable, Pipe, NgModule } from '@angular/core';
2
+ import { EventEmitter, forwardRef, Component, Output, Input, Injectable, Pipe, Directive, HostListener, NgModule } from '@angular/core';
3
3
  import * as i2$1 from '@angular/forms';
4
- import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
4
+ import { NG_VALUE_ACCESSOR, NgModel, FormsModule, ReactiveFormsModule } from '@angular/forms';
5
5
  import * as i1 from '@angular/common';
6
6
  import { CurrencyPipe, DecimalPipe, CommonModule } from '@angular/common';
7
7
  import * as i2 from '@ng-select/ng-select';
@@ -11,7 +11,6 @@ import { SharedGeneralComponentsModule } from '@jooler/shared-general-components
11
11
  import * as i1$1 from '@angular/common/http';
12
12
  import { HttpHeaders } from '@angular/common/http';
13
13
  import * as i3 from '@angular/material/button';
14
- import * as i3$1 from '@angular/material/input';
15
14
  import { AppMaterialModule } from '@jooler/app-material';
16
15
 
17
16
  class ChooseEnumComponent {
@@ -106,13 +105,13 @@ class ChooseEnumComponent {
106
105
  }
107
106
  }
108
107
  ChooseEnumComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: ChooseEnumComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
109
- ChooseEnumComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: ChooseEnumComponent, selector: "choose-enum", inputs: { label: "label", isItemHidden: "isItemHidden", isItemDisabled: "isItemDisabled", enumChoices: "enumChoices", getValuesArrayFromEnum: "getValuesArrayFromEnum", isChip: "isChip", placeholder: "placeholder", width: "width", paddingTop: "paddingTop", labelTextAlign: "labelTextAlign", labelTextFontWeight: "labelTextFontWeight", labelTextFontSize: "labelTextFontSize", selectedItem: "selectedItem", indexesToDisable: "indexesToDisable", isDropdownDisabled: "isDropdownDisabled" }, outputs: { change: "change" }, providers: [
108
+ ChooseEnumComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: ChooseEnumComponent, selector: "choose-enum", inputs: { label: "label", isItemHidden: "isItemHidden", isItemDisabled: "isItemDisabled", enumChoices: "enumChoices", getValuesArrayFromEnum: "getValuesArrayFromEnum", isChip: "isChip", isMultiple: "isMultiple", placeholder: "placeholder", width: "width", paddingTop: "paddingTop", labelTextAlign: "labelTextAlign", labelTextFontWeight: "labelTextFontWeight", labelTextFontSize: "labelTextFontSize", selectedItem: "selectedItem", indexesToDisable: "indexesToDisable", isDropdownDisabled: "isDropdownDisabled" }, outputs: { change: "change" }, providers: [
110
109
  {
111
110
  provide: NG_VALUE_ACCESSOR,
112
111
  useExisting: forwardRef(() => ChooseEnumComponent),
113
112
  multi: true,
114
113
  },
115
- ], usesOnChanges: true, ngImport: i0, template: "<div class=\"select\">\r\n <ng-select [ngStyle]=\"setStyles()\" appendTo=\"body\" (blur)=\"updateBlur()\" bindLabel=\"label\" bindValue=\"value\"\r\n [items]=\"items\" [placeholder]=\"placeholder\" (change)=\"onSelectedItemChanged()\" [(ngModel)]=\"selectedItem\"\r\n [disabled]=\"isDropdownDisabled\">\r\n <ng-template class=\"template\" ng-option-tmp ng-label-tmp let-item=\"item\" let-index=\"index\"\r\n let-search=\"searchTerm\">\r\n <div *ngIf=\"isChip\">\r\n <ng-chip class=\"chip\" [backgroundColor]=\"item.color\" [label]=\"item.label\" [width]=\"110\">\r\n </ng-chip>\r\n </div>\r\n <div [ngStyle]=\"setLabelStyle()\" *ngIf=\"!isChip\">{{item.label}}</div>\r\n </ng-template>\r\n </ng-select>\r\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "directive", type: i2.NgOptionTemplateDirective, selector: "[ng-option-tmp]" }, { kind: "directive", type: i2.NgLabelTemplateDirective, selector: "[ng-label-tmp]" }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.NgChipComponent, selector: "ng-chip", inputs: ["value", "label", "backgroundColor", "textColor", "width", "item", "clear", "withCross"] }] });
114
+ ], usesOnChanges: true, ngImport: i0, template: "<div class=\"select\">\r\n <ng-select [ngStyle]=\"setStyles()\" appendTo=\"body\" (blur)=\"updateBlur()\" bindLabel=\"label\" bindValue=\"value\"\r\n [items]=\"items\" [placeholder]=\"placeholder\" (change)=\"onSelectedItemChanged()\" [(ngModel)]=\"selectedItem\" [multiple]=\"isMultiple\"\r\n [disabled]=\"isDropdownDisabled\">\r\n <ng-template class=\"template\" ng-option-tmp ng-label-tmp let-item=\"item\" let-index=\"index\"\r\n let-search=\"searchTerm\">\r\n <div *ngIf=\"isChip\">\r\n <ng-chip class=\"chip\" [backgroundColor]=\"item.color\" [label]=\"item.label\" [width]=\"110\">\r\n </ng-chip>\r\n </div>\r\n <div [ngStyle]=\"setLabelStyle()\" *ngIf=\"!isChip\">{{item.label}}</div>\r\n </ng-template>\r\n </ng-select>\r\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "directive", type: i2.NgOptionTemplateDirective, selector: "[ng-option-tmp]" }, { kind: "directive", type: i2.NgLabelTemplateDirective, selector: "[ng-label-tmp]" }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.NgChipComponent, selector: "ng-chip", inputs: ["value", "label", "backgroundColor", "textColor", "width", "item", "clear", "withCross"] }] });
116
115
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: ChooseEnumComponent, decorators: [{
117
116
  type: Component,
118
117
  args: [{ selector: 'choose-enum', providers: [
@@ -121,7 +120,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImpor
121
120
  useExisting: forwardRef(() => ChooseEnumComponent),
122
121
  multi: true,
123
122
  },
124
- ], template: "<div class=\"select\">\r\n <ng-select [ngStyle]=\"setStyles()\" appendTo=\"body\" (blur)=\"updateBlur()\" bindLabel=\"label\" bindValue=\"value\"\r\n [items]=\"items\" [placeholder]=\"placeholder\" (change)=\"onSelectedItemChanged()\" [(ngModel)]=\"selectedItem\"\r\n [disabled]=\"isDropdownDisabled\">\r\n <ng-template class=\"template\" ng-option-tmp ng-label-tmp let-item=\"item\" let-index=\"index\"\r\n let-search=\"searchTerm\">\r\n <div *ngIf=\"isChip\">\r\n <ng-chip class=\"chip\" [backgroundColor]=\"item.color\" [label]=\"item.label\" [width]=\"110\">\r\n </ng-chip>\r\n </div>\r\n <div [ngStyle]=\"setLabelStyle()\" *ngIf=\"!isChip\">{{item.label}}</div>\r\n </ng-template>\r\n </ng-select>\r\n</div>" }]
123
+ ], template: "<div class=\"select\">\r\n <ng-select [ngStyle]=\"setStyles()\" appendTo=\"body\" (blur)=\"updateBlur()\" bindLabel=\"label\" bindValue=\"value\"\r\n [items]=\"items\" [placeholder]=\"placeholder\" (change)=\"onSelectedItemChanged()\" [(ngModel)]=\"selectedItem\" [multiple]=\"isMultiple\"\r\n [disabled]=\"isDropdownDisabled\">\r\n <ng-template class=\"template\" ng-option-tmp ng-label-tmp let-item=\"item\" let-index=\"index\"\r\n let-search=\"searchTerm\">\r\n <div *ngIf=\"isChip\">\r\n <ng-chip class=\"chip\" [backgroundColor]=\"item.color\" [label]=\"item.label\" [width]=\"110\">\r\n </ng-chip>\r\n </div>\r\n <div [ngStyle]=\"setLabelStyle()\" *ngIf=\"!isChip\">{{item.label}}</div>\r\n </ng-template>\r\n </ng-select>\r\n</div>" }]
125
124
  }], ctorParameters: function () { return []; }, propDecorators: { change: [{
126
125
  type: Output
127
126
  }], label: [{
@@ -136,6 +135,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImpor
136
135
  type: Input
137
136
  }], isChip: [{
138
137
  type: Input
138
+ }], isMultiple: [{
139
+ type: Input
139
140
  }], placeholder: [{
140
141
  type: Input
141
142
  }], width: [{
@@ -174,7 +175,7 @@ class ChooseEnumRendererComponent {
174
175
  }
175
176
  }
176
177
  ChooseEnumRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: ChooseEnumRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
177
- ChooseEnumRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: ChooseEnumRendererComponent, selector: "choose-enum-renderer", ngImport: i0, template: "<choose-enum \r\n[label]=\"params.label\"\r\n[isItemHidden]=\"params.isItemHidden\"\r\n[isItemDisabled]=\"params.isItemDisabled\"\r\n[labelTextAlign]=\"params.labelTextAlign\"\r\n[labelTextFontWeight]=\"params.labelTextFontWeight\"\r\n[labelTextFontSize]=\"params.labelTextFontSize\"\r\n[selectedItem]=\"params.value\"\r\n[indexesToDisable]=\"params.indexesToDisable\"\r\n[isDropdownDisabled]=\"params.isDropdownDisabled\"\r\n[getValuesArrayFromEnum]=\"params.getLabelAndColorFromEnumValue\"\r\n[enumChoices]=\"params.enumChoices\"\r\n[placeholder]=\"params.placeholder\" \r\n[width]=\"params.width\" \r\n[isChip]=\"params.isChip\" \r\n[paddingTop]=\"params.paddingTop\" \r\n(change)=\"onCellDataChanged($event)\">\r\n</choose-enum>\r\n", styles: [""], dependencies: [{ kind: "component", type: ChooseEnumComponent, selector: "choose-enum", inputs: ["label", "isItemHidden", "isItemDisabled", "enumChoices", "getValuesArrayFromEnum", "isChip", "placeholder", "width", "paddingTop", "labelTextAlign", "labelTextFontWeight", "labelTextFontSize", "selectedItem", "indexesToDisable", "isDropdownDisabled"], outputs: ["change"] }] });
178
+ ChooseEnumRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: ChooseEnumRendererComponent, selector: "choose-enum-renderer", ngImport: i0, template: "<choose-enum \r\n[label]=\"params.label\"\r\n[isItemHidden]=\"params.isItemHidden\"\r\n[isItemDisabled]=\"params.isItemDisabled\"\r\n[labelTextAlign]=\"params.labelTextAlign\"\r\n[labelTextFontWeight]=\"params.labelTextFontWeight\"\r\n[labelTextFontSize]=\"params.labelTextFontSize\"\r\n[selectedItem]=\"params.value\"\r\n[indexesToDisable]=\"params.indexesToDisable\"\r\n[isDropdownDisabled]=\"params.isDropdownDisabled\"\r\n[getValuesArrayFromEnum]=\"params.getLabelAndColorFromEnumValue\"\r\n[enumChoices]=\"params.enumChoices\"\r\n[placeholder]=\"params.placeholder\" \r\n[width]=\"params.width\" \r\n[isChip]=\"params.isChip\" \r\n[paddingTop]=\"params.paddingTop\" \r\n(change)=\"onCellDataChanged($event)\">\r\n</choose-enum>\r\n", styles: [""], dependencies: [{ kind: "component", type: ChooseEnumComponent, selector: "choose-enum", inputs: ["label", "isItemHidden", "isItemDisabled", "enumChoices", "getValuesArrayFromEnum", "isChip", "isMultiple", "placeholder", "width", "paddingTop", "labelTextAlign", "labelTextFontWeight", "labelTextFontSize", "selectedItem", "indexesToDisable", "isDropdownDisabled"], outputs: ["change"] }] });
178
179
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: ChooseEnumRendererComponent, decorators: [{
179
180
  type: Component,
180
181
  args: [{ selector: 'choose-enum-renderer', template: "<choose-enum \r\n[label]=\"params.label\"\r\n[isItemHidden]=\"params.isItemHidden\"\r\n[isItemDisabled]=\"params.isItemDisabled\"\r\n[labelTextAlign]=\"params.labelTextAlign\"\r\n[labelTextFontWeight]=\"params.labelTextFontWeight\"\r\n[labelTextFontSize]=\"params.labelTextFontSize\"\r\n[selectedItem]=\"params.value\"\r\n[indexesToDisable]=\"params.indexesToDisable\"\r\n[isDropdownDisabled]=\"params.isDropdownDisabled\"\r\n[getValuesArrayFromEnum]=\"params.getLabelAndColorFromEnumValue\"\r\n[enumChoices]=\"params.enumChoices\"\r\n[placeholder]=\"params.placeholder\" \r\n[width]=\"params.width\" \r\n[isChip]=\"params.isChip\" \r\n[paddingTop]=\"params.paddingTop\" \r\n(change)=\"onCellDataChanged($event)\">\r\n</choose-enum>\r\n" }]
@@ -360,10 +361,10 @@ class ChooseGeneralItemRendererComponent {
360
361
  }
361
362
  }
362
363
  ChooseGeneralItemRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: ChooseGeneralItemRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
363
- ChooseGeneralItemRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: ChooseGeneralItemRendererComponent, selector: "choose-general-item-renderer", ngImport: i0, template: "<choose-general-item [label]=\"params.label\" \r\n[placeholder]=\"params.placeholder\" \r\n[apiPath]=\"params.apiPath\" \r\n[isMultiple]=\"params.isMultiple\" \r\n[objects]=\"params.objects\" \r\n[showLabel]=\"params.showLabel\" \r\n[separator]=\"params.separator\" \r\n[width]=\"params.width\" \r\n[fontWeight]=\"params.fontWeight\" \r\n[fontSize]=\"params.fontSize\" \r\n[isChip]=\"params.isChip\" \r\n[isTypeDate]=\"params.isTypeDate\" \r\n[chipColor]=\"params.chipColor\" \r\n[chipTextColor]=\"params.chipTextColor\" \r\n[chipWidth]=\"params.chipWidth\" \r\n[selectedItemId]=\"itemId\" \r\n[disabled]=\"params.disabled\" \r\n(change)=\"onCellDataChanged($event)\"></choose-general-item>", styles: [""], dependencies: [{ kind: "component", type: ChooseGeneralItemComponent, selector: "choose-general-item", inputs: ["items", "label", "placeholder", "apiPath", "isMultiple", "hideSelectedItem", "objects", "showLabel", "separator", "width", "fontWeight", "fontSize", "isChip", "isTypeDate", "chipColor", "chipTextColor", "chipWidth", "selectedItemId", "disabled", "dropdownPosition", "useFullObject"], outputs: ["change"] }] });
364
+ ChooseGeneralItemRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: ChooseGeneralItemRendererComponent, selector: "choose-general-item-renderer", ngImport: i0, template: "<choose-general-item [label]=\"params.label\" \n[placeholder]=\"params.placeholder\" \n[apiPath]=\"params.apiPath\" \n[isMultiple]=\"params.isMultiple\" \n[objects]=\"params.objects\" \n[showLabel]=\"params.showLabel\" \n[separator]=\"params.separator\" \n[width]=\"params.width\" \n[fontWeight]=\"params.fontWeight\" \n[fontSize]=\"params.fontSize\" \n[isChip]=\"params.isChip\" \n[isTypeDate]=\"params.isTypeDate\" \n[chipColor]=\"params.chipColor\" \n[chipTextColor]=\"params.chipTextColor\" \n[chipWidth]=\"params.chipWidth\" \n[selectedItemId]=\"itemId\" \n[disabled]=\"params.disabled\" \n(change)=\"onCellDataChanged($event)\"></choose-general-item>", styles: [""], dependencies: [{ kind: "component", type: ChooseGeneralItemComponent, selector: "choose-general-item", inputs: ["items", "label", "placeholder", "apiPath", "isMultiple", "hideSelectedItem", "objects", "showLabel", "separator", "width", "fontWeight", "fontSize", "isChip", "isTypeDate", "chipColor", "chipTextColor", "chipWidth", "selectedItemId", "disabled", "dropdownPosition", "useFullObject"], outputs: ["change"] }] });
364
365
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: ChooseGeneralItemRendererComponent, decorators: [{
365
366
  type: Component,
366
- args: [{ selector: 'choose-general-item-renderer', template: "<choose-general-item [label]=\"params.label\" \r\n[placeholder]=\"params.placeholder\" \r\n[apiPath]=\"params.apiPath\" \r\n[isMultiple]=\"params.isMultiple\" \r\n[objects]=\"params.objects\" \r\n[showLabel]=\"params.showLabel\" \r\n[separator]=\"params.separator\" \r\n[width]=\"params.width\" \r\n[fontWeight]=\"params.fontWeight\" \r\n[fontSize]=\"params.fontSize\" \r\n[isChip]=\"params.isChip\" \r\n[isTypeDate]=\"params.isTypeDate\" \r\n[chipColor]=\"params.chipColor\" \r\n[chipTextColor]=\"params.chipTextColor\" \r\n[chipWidth]=\"params.chipWidth\" \r\n[selectedItemId]=\"itemId\" \r\n[disabled]=\"params.disabled\" \r\n(change)=\"onCellDataChanged($event)\"></choose-general-item>" }]
367
+ args: [{ selector: 'choose-general-item-renderer', template: "<choose-general-item [label]=\"params.label\" \n[placeholder]=\"params.placeholder\" \n[apiPath]=\"params.apiPath\" \n[isMultiple]=\"params.isMultiple\" \n[objects]=\"params.objects\" \n[showLabel]=\"params.showLabel\" \n[separator]=\"params.separator\" \n[width]=\"params.width\" \n[fontWeight]=\"params.fontWeight\" \n[fontSize]=\"params.fontSize\" \n[isChip]=\"params.isChip\" \n[isTypeDate]=\"params.isTypeDate\" \n[chipColor]=\"params.chipColor\" \n[chipTextColor]=\"params.chipTextColor\" \n[chipWidth]=\"params.chipWidth\" \n[selectedItemId]=\"itemId\" \n[disabled]=\"params.disabled\" \n(change)=\"onCellDataChanged($event)\"></choose-general-item>" }]
367
368
  }], ctorParameters: function () { return []; } });
368
369
 
369
370
  var LineType;
@@ -687,47 +688,98 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImpor
687
688
  type: Input
688
689
  }] } });
689
690
 
691
+ class CustomDecimalPointTwoDigitsDirective {
692
+ constructor(control) {
693
+ this.control = control;
694
+ }
695
+ ngOnInit() {
696
+ if (this.control.value) {
697
+ this.control.valueAccessor.writeValue(this.transformToCommasAndPoint(this.control.value));
698
+ }
699
+ this.valueSubscription = this.control.control.valueChanges.subscribe(value => {
700
+ if (value.length > 0) {
701
+ let removeCommas = this.control.value.replace(/,/g, '');
702
+ this.control.control.setValue(removeCommas, { emitEvent: false, emitModelToViewChange: false });
703
+ }
704
+ else {
705
+ this.control.control.setValue(null, { emitEvent: false, emitModelToViewChange: false });
706
+ }
707
+ });
708
+ }
709
+ onEvent($event) {
710
+ if (this.control.value) {
711
+ const item = $event.target;
712
+ item.value = this.transformToCommasAndPoint(this.control.value);
713
+ let removeCommas = this.control.value.replace(/,/g, '');
714
+ this.control.control.setValue(removeCommas, { emitEvent: false, emitModelToViewChange: false });
715
+ }
716
+ }
717
+ transformToCommasAndPoint(value) {
718
+ if (value.indexOf(".") == -1) {
719
+ value = value.toString().replace(/\D/g, "")
720
+ .replace(/\B(?=(\d{3})+(?!\d))/g, ",");
721
+ return value;
722
+ }
723
+ else {
724
+ let val = value.split(".");
725
+ let valueBeforeDecimal = val[0];
726
+ let valueAfterDecimal = val[1];
727
+ valueBeforeDecimal = valueBeforeDecimal.toString().replace(/\D/g, "")
728
+ .replace(/\B(?=(\d{3})+(?!\d))/g, ",");
729
+ let newValue = `${valueBeforeDecimal}.${valueAfterDecimal}`;
730
+ return newValue;
731
+ }
732
+ }
733
+ }
734
+ CustomDecimalPointTwoDigitsDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: CustomDecimalPointTwoDigitsDirective, deps: [{ token: i2$1.NgControl }], target: i0.ɵɵFactoryTarget.Directive });
735
+ CustomDecimalPointTwoDigitsDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.1.0", type: CustomDecimalPointTwoDigitsDirective, selector: "[customDecimalPointTwoDigits]", host: { listeners: { "input": "onEvent($event)" } }, providers: [NgModel, DecimalPipe], ngImport: i0 });
736
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: CustomDecimalPointTwoDigitsDirective, decorators: [{
737
+ type: Directive,
738
+ args: [{
739
+ selector: '[customDecimalPointTwoDigits]',
740
+ providers: [NgModel, DecimalPipe],
741
+ }]
742
+ }], ctorParameters: function () { return [{ type: i2$1.NgControl }]; }, propDecorators: { onEvent: [{
743
+ type: HostListener,
744
+ args: ["input", ["$event"]]
745
+ }] } });
746
+
690
747
  class GeneralInputRendererComponent {
691
748
  constructor() { }
692
749
  agInit(params) {
693
750
  this.params = params;
751
+ this.formGroup = this.params.context.formGroup.get('entries').at(params.node.rowIndex);
694
752
  this.key = params.context.createKey(params.columnApi, params.column);
695
- this.rowId = params.node.rowIndex;
696
753
  if (params.isTypeNumber) {
697
754
  if (params.value) {
698
755
  this.value = new DecimalPipe("en-US").transform(+params.value, "1.0-0");
699
756
  }
700
757
  }
701
- else
758
+ else {
702
759
  this.value = params.value;
760
+ }
703
761
  }
704
762
  onCellDataChanged($event) {
705
763
  var _a;
706
764
  let value = $event.target.value;
707
- this.formControlValue = this.params.context.formGroup.get("entries").at(this.params.node.rowIndex);
708
- (_a = this.formControlValue) === null || _a === void 0 ? void 0 : _a.get(this.key).setValue(value);
709
- }
710
- separateThousands($event) {
711
- let value = $event.target.value;
712
- value = value.toString().replace(/\D/g, "")
713
- .replace(/\B(?=(\d{3})+(?!\d))/g, ",");
714
- this.value = value;
715
- }
716
- setTextAreaWidth() {
717
- let style = {
718
- 'width': this.params.textAreaWidth + 'rem',
765
+ let newAndOldValue = {
766
+ newValue: value,
767
+ oldValue: (_a = this.params) === null || _a === void 0 ? void 0 : _a.value
719
768
  };
720
- return style;
769
+ if (this.params.allowUpdateRowData) {
770
+ this.params.onChange(newAndOldValue);
771
+ }
721
772
  }
722
773
  refresh(params) {
723
- return false;
774
+ this.formGroup = this.params.context.formGroup.get('entries').at(params.node.rowIndex);
775
+ return true;
724
776
  }
725
777
  }
726
778
  GeneralInputRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: GeneralInputRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
727
- GeneralInputRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: GeneralInputRendererComponent, selector: "general-input-renderer", ngImport: i0, template: "<div *ngIf=\"params.isTypeText\">\r\n <input [(ngModel)]=\"value\" matInput [placeholder]=\"params.fieldLabel\"\r\n (change)=\"onCellDataChanged($event)\" />\r\n <span *ngIf=\"params.showSymbol\"\r\n style=\"margin-left:-20px ;\">{{params.symbol}}</span>\r\n</div>\r\n<div *ngIf=\"params.isTypeNumber\">\r\n <input [(ngModel)]=\"value\" (keyup)=\"separateThousands($event)\" matInput\r\n [placeholder]=\"params.fieldLabel\"\r\n (change)=\"onCellDataChanged($event)\" />\r\n <span *ngIf=\"params.showSymbol\"\r\n style=\"margin-left:-20px ;\">{{params.symbol}}</span>\r\n</div>\r\n<div *ngIf=\"params.isTypeTextArea\">\r\n <textarea class=\"text-area\" [ngStyle]=\"setTextAreaWidth()\" [(ngModel)]=\"value\"\r\n (change)=\"onCellDataChanged($event)\"\r\n [placeholder]=\"params.fieldLabel\" class=\"main-height\"\r\n matInput></textarea>\r\n</div>", styles: ["textarea{padding-left:.5rem;border-radius:.3rem;height:3.5rem;font-size:1.2rem;border:solid #BEBEBE .1rem}textarea:focus{outline:none}textarea::placeholder{color:#676767}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2$1.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: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3$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"] }] });
779
+ GeneralInputRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: GeneralInputRendererComponent, selector: "general-input-renderer", ngImport: i0, template: "<div *ngIf=\"formGroup\" [formGroup]=\"formGroup\">\r\n <div *ngIf=\"params.isTypeText\">\r\n <input [placeholder]=\"params.fieldLabel\" (change)=\"onCellDataChanged($event)\" [formControlName]=\"key\" />\r\n <span *ngIf=\"params.showSymbol\" style=\"margin-left:-20px ;\">{{params.symbol}}</span>\r\n </div>\r\n <div *ngIf=\"params.isTypeNumber\">\r\n <input customDecimalPointTwoDigits [placeholder]=\"params.fieldLabel\" (change)=\"onCellDataChanged($event)\"\r\n [formControlName]=\"key\" />\r\n <span *ngIf=\"params.showSymbol\" style=\"margin-left:-20px ;\">{{params.symbol}}</span>\r\n </div>\r\n <div *ngIf=\"params.isTypeTextArea\">\r\n <textarea class=\"text-area\" (change)=\"onCellDataChanged($event)\" [placeholder]=\"params.fieldLabel\"\r\n class=\"main-height\" [formControlName]=\"key\"></textarea>\r\n </div>\r\n</div>", styles: ["textarea{padding-left:.5rem;border-radius:.3rem;height:3.5rem;font-size:1.2rem;border:solid #BEBEBE .1rem}textarea:focus{outline:none}textarea::placeholder{color:#676767}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.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: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: CustomDecimalPointTwoDigitsDirective, selector: "[customDecimalPointTwoDigits]" }] });
728
780
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: GeneralInputRendererComponent, decorators: [{
729
781
  type: Component,
730
- args: [{ selector: 'general-input-renderer', template: "<div *ngIf=\"params.isTypeText\">\r\n <input [(ngModel)]=\"value\" matInput [placeholder]=\"params.fieldLabel\"\r\n (change)=\"onCellDataChanged($event)\" />\r\n <span *ngIf=\"params.showSymbol\"\r\n style=\"margin-left:-20px ;\">{{params.symbol}}</span>\r\n</div>\r\n<div *ngIf=\"params.isTypeNumber\">\r\n <input [(ngModel)]=\"value\" (keyup)=\"separateThousands($event)\" matInput\r\n [placeholder]=\"params.fieldLabel\"\r\n (change)=\"onCellDataChanged($event)\" />\r\n <span *ngIf=\"params.showSymbol\"\r\n style=\"margin-left:-20px ;\">{{params.symbol}}</span>\r\n</div>\r\n<div *ngIf=\"params.isTypeTextArea\">\r\n <textarea class=\"text-area\" [ngStyle]=\"setTextAreaWidth()\" [(ngModel)]=\"value\"\r\n (change)=\"onCellDataChanged($event)\"\r\n [placeholder]=\"params.fieldLabel\" class=\"main-height\"\r\n matInput></textarea>\r\n</div>", styles: ["textarea{padding-left:.5rem;border-radius:.3rem;height:3.5rem;font-size:1.2rem;border:solid #BEBEBE .1rem}textarea:focus{outline:none}textarea::placeholder{color:#676767}\n"] }]
782
+ args: [{ selector: 'general-input-renderer', template: "<div *ngIf=\"formGroup\" [formGroup]=\"formGroup\">\r\n <div *ngIf=\"params.isTypeText\">\r\n <input [placeholder]=\"params.fieldLabel\" (change)=\"onCellDataChanged($event)\" [formControlName]=\"key\" />\r\n <span *ngIf=\"params.showSymbol\" style=\"margin-left:-20px ;\">{{params.symbol}}</span>\r\n </div>\r\n <div *ngIf=\"params.isTypeNumber\">\r\n <input customDecimalPointTwoDigits [placeholder]=\"params.fieldLabel\" (change)=\"onCellDataChanged($event)\"\r\n [formControlName]=\"key\" />\r\n <span *ngIf=\"params.showSymbol\" style=\"margin-left:-20px ;\">{{params.symbol}}</span>\r\n </div>\r\n <div *ngIf=\"params.isTypeTextArea\">\r\n <textarea class=\"text-area\" (change)=\"onCellDataChanged($event)\" [placeholder]=\"params.fieldLabel\"\r\n class=\"main-height\" [formControlName]=\"key\"></textarea>\r\n </div>\r\n</div>", styles: ["textarea{padding-left:.5rem;border-radius:.3rem;height:3.5rem;font-size:1.2rem;border:solid #BEBEBE .1rem}textarea:focus{outline:none}textarea::placeholder{color:#676767}\n"] }]
731
783
  }], ctorParameters: function () { return []; } });
732
784
 
733
785
  class LabelAndField {
@@ -745,9 +797,11 @@ InputsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
745
797
  ChooseYesOrNoRendererComponent,
746
798
  EditableSavableInputComponent,
747
799
  DynamicPipe,
748
- ChooseGeneralItemRendererComponent], imports: [CommonModule,
800
+ ChooseGeneralItemRendererComponent,
801
+ CustomDecimalPointTwoDigitsDirective], imports: [CommonModule,
749
802
  NgSelectModule,
750
803
  FormsModule,
804
+ ReactiveFormsModule,
751
805
  AppMaterialModule,
752
806
  SharedGeneralComponentsModule], exports: [ChooseEnumComponent,
753
807
  ChooseEnumRendererComponent,
@@ -761,6 +815,7 @@ InputsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
761
815
  InputsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: InputsModule, imports: [CommonModule,
762
816
  NgSelectModule,
763
817
  FormsModule,
818
+ ReactiveFormsModule,
764
819
  AppMaterialModule,
765
820
  SharedGeneralComponentsModule] });
766
821
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: InputsModule, decorators: [{
@@ -776,12 +831,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImpor
776
831
  ChooseYesOrNoRendererComponent,
777
832
  EditableSavableInputComponent,
778
833
  DynamicPipe,
779
- ChooseGeneralItemRendererComponent
834
+ ChooseGeneralItemRendererComponent,
835
+ CustomDecimalPointTwoDigitsDirective
780
836
  ],
781
837
  imports: [
782
838
  CommonModule,
783
839
  NgSelectModule,
784
840
  FormsModule,
841
+ ReactiveFormsModule,
785
842
  AppMaterialModule,
786
843
  SharedGeneralComponentsModule,
787
844
  ],