@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: [{
@@ -173,7 +174,7 @@ class ChooseEnumRendererComponent {
173
174
  }
174
175
  }
175
176
  ChooseEnumRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: ChooseEnumRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
176
- 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"] }] });
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", "isMultiple", "placeholder", "width", "paddingTop", "labelTextAlign", "labelTextFontWeight", "labelTextFontSize", "selectedItem", "indexesToDisable", "isDropdownDisabled"], outputs: ["change"] }] });
177
178
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: ChooseEnumRendererComponent, decorators: [{
178
179
  type: Component,
179
180
  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" }]
@@ -359,10 +360,10 @@ class ChooseGeneralItemRendererComponent {
359
360
  }
360
361
  }
361
362
  ChooseGeneralItemRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: ChooseGeneralItemRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
362
- 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"] }] });
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\" \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"] }] });
363
364
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: ChooseGeneralItemRendererComponent, decorators: [{
364
365
  type: Component,
365
- 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>" }]
366
+ 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>" }]
366
367
  }], ctorParameters: function () { return []; } });
367
368
 
368
369
  var LineType;
@@ -686,46 +687,97 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImpor
686
687
  type: Input
687
688
  }] } });
688
689
 
690
+ class CustomDecimalPointTwoDigitsDirective {
691
+ constructor(control) {
692
+ this.control = control;
693
+ }
694
+ ngOnInit() {
695
+ if (this.control.value) {
696
+ this.control.valueAccessor.writeValue(this.transformToCommasAndPoint(this.control.value));
697
+ }
698
+ this.valueSubscription = this.control.control.valueChanges.subscribe(value => {
699
+ if (value.length > 0) {
700
+ let removeCommas = this.control.value.replace(/,/g, '');
701
+ this.control.control.setValue(removeCommas, { emitEvent: false, emitModelToViewChange: false });
702
+ }
703
+ else {
704
+ this.control.control.setValue(null, { emitEvent: false, emitModelToViewChange: false });
705
+ }
706
+ });
707
+ }
708
+ onEvent($event) {
709
+ if (this.control.value) {
710
+ const item = $event.target;
711
+ item.value = this.transformToCommasAndPoint(this.control.value);
712
+ let removeCommas = this.control.value.replace(/,/g, '');
713
+ this.control.control.setValue(removeCommas, { emitEvent: false, emitModelToViewChange: false });
714
+ }
715
+ }
716
+ transformToCommasAndPoint(value) {
717
+ if (value.indexOf(".") == -1) {
718
+ value = value.toString().replace(/\D/g, "")
719
+ .replace(/\B(?=(\d{3})+(?!\d))/g, ",");
720
+ return value;
721
+ }
722
+ else {
723
+ let val = value.split(".");
724
+ let valueBeforeDecimal = val[0];
725
+ let valueAfterDecimal = val[1];
726
+ valueBeforeDecimal = valueBeforeDecimal.toString().replace(/\D/g, "")
727
+ .replace(/\B(?=(\d{3})+(?!\d))/g, ",");
728
+ let newValue = `${valueBeforeDecimal}.${valueAfterDecimal}`;
729
+ return newValue;
730
+ }
731
+ }
732
+ }
733
+ 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 });
734
+ 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 });
735
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: CustomDecimalPointTwoDigitsDirective, decorators: [{
736
+ type: Directive,
737
+ args: [{
738
+ selector: '[customDecimalPointTwoDigits]',
739
+ providers: [NgModel, DecimalPipe],
740
+ }]
741
+ }], ctorParameters: function () { return [{ type: i2$1.NgControl }]; }, propDecorators: { onEvent: [{
742
+ type: HostListener,
743
+ args: ["input", ["$event"]]
744
+ }] } });
745
+
689
746
  class GeneralInputRendererComponent {
690
747
  constructor() { }
691
748
  agInit(params) {
692
749
  this.params = params;
750
+ this.formGroup = this.params.context.formGroup.get('entries').at(params.node.rowIndex);
693
751
  this.key = params.context.createKey(params.columnApi, params.column);
694
- this.rowId = params.node.rowIndex;
695
752
  if (params.isTypeNumber) {
696
753
  if (params.value) {
697
754
  this.value = new DecimalPipe("en-US").transform(+params.value, "1.0-0");
698
755
  }
699
756
  }
700
- else
757
+ else {
701
758
  this.value = params.value;
759
+ }
702
760
  }
703
761
  onCellDataChanged($event) {
704
762
  let value = $event.target.value;
705
- this.formControlValue = this.params.context.formGroup.get("entries").at(this.params.node.rowIndex);
706
- this.formControlValue?.get(this.key).setValue(value);
707
- }
708
- separateThousands($event) {
709
- let value = $event.target.value;
710
- value = value.toString().replace(/\D/g, "")
711
- .replace(/\B(?=(\d{3})+(?!\d))/g, ",");
712
- this.value = value;
713
- }
714
- setTextAreaWidth() {
715
- let style = {
716
- 'width': this.params.textAreaWidth + 'rem',
763
+ let newAndOldValue = {
764
+ newValue: value,
765
+ oldValue: this.params?.value
717
766
  };
718
- return style;
767
+ if (this.params.allowUpdateRowData) {
768
+ this.params.onChange(newAndOldValue);
769
+ }
719
770
  }
720
771
  refresh(params) {
721
- return false;
772
+ this.formGroup = this.params.context.formGroup.get('entries').at(params.node.rowIndex);
773
+ return true;
722
774
  }
723
775
  }
724
776
  GeneralInputRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: GeneralInputRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
725
- 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"] }] });
777
+ 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]" }] });
726
778
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: GeneralInputRendererComponent, decorators: [{
727
779
  type: Component,
728
- 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"] }]
780
+ 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"] }]
729
781
  }], ctorParameters: function () { return []; } });
730
782
 
731
783
  class LabelAndField {
@@ -743,9 +795,11 @@ InputsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
743
795
  ChooseYesOrNoRendererComponent,
744
796
  EditableSavableInputComponent,
745
797
  DynamicPipe,
746
- ChooseGeneralItemRendererComponent], imports: [CommonModule,
798
+ ChooseGeneralItemRendererComponent,
799
+ CustomDecimalPointTwoDigitsDirective], imports: [CommonModule,
747
800
  NgSelectModule,
748
801
  FormsModule,
802
+ ReactiveFormsModule,
749
803
  AppMaterialModule,
750
804
  SharedGeneralComponentsModule], exports: [ChooseEnumComponent,
751
805
  ChooseEnumRendererComponent,
@@ -759,6 +813,7 @@ InputsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
759
813
  InputsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: InputsModule, imports: [CommonModule,
760
814
  NgSelectModule,
761
815
  FormsModule,
816
+ ReactiveFormsModule,
762
817
  AppMaterialModule,
763
818
  SharedGeneralComponentsModule] });
764
819
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: InputsModule, decorators: [{
@@ -774,12 +829,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImpor
774
829
  ChooseYesOrNoRendererComponent,
775
830
  EditableSavableInputComponent,
776
831
  DynamicPipe,
777
- ChooseGeneralItemRendererComponent
832
+ ChooseGeneralItemRendererComponent,
833
+ CustomDecimalPointTwoDigitsDirective
778
834
  ],
779
835
  imports: [
780
836
  CommonModule,
781
837
  NgSelectModule,
782
838
  FormsModule,
839
+ ReactiveFormsModule,
783
840
  AppMaterialModule,
784
841
  SharedGeneralComponentsModule,
785
842
  ],