@c10t/nice-component-library 0.0.21 → 0.0.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/cva-counter-input.component.d.ts +4 -2
- package/components/cva-form-control.d.ts +4 -0
- package/components/cva-input.component.d.ts +9 -5
- package/components/cva-live-searching.component.d.ts +4 -2
- package/components/cva-multi-select-autocomplete.d.ts +4 -2
- package/components/datepicker/cva-date-picker.component.d.ts +7 -2
- package/components/datepicker/cva-range-date-picker.component.d.ts +6 -2
- package/components/table/cva-smart-table.component.d.ts +7 -2
- package/directives/numeric-input-format.d.ts +7 -0
- package/directives/pattern.directive.d.ts +2 -2
- package/enums/column-type.enum.d.ts +1 -0
- package/fesm2022/c10t-nice-component-library.mjs +411 -309
- package/fesm2022/c10t-nice-component-library.mjs.map +1 -1
- package/index.d.ts +1 -0
- package/package.json +1 -1
- package/services/validator.service.d.ts +3 -3
|
@@ -3,20 +3,20 @@ import { FormGroup, FormArray, FormControl, Validators, NgControl, NG_VALUE_ACCE
|
|
|
3
3
|
import * as i1$3 from '@angular/common/http';
|
|
4
4
|
import { HttpParams, HttpHeaders, HttpResponse, HttpResponseBase } from '@angular/common/http';
|
|
5
5
|
import * as i0 from '@angular/core';
|
|
6
|
-
import { InjectionToken, Self, Optional, Inject, Component, Injectable, Directive, EventEmitter, Output, Input, Host, Pipe, HostListener, forwardRef, ViewChild, HostBinding, ViewEncapsulation, NgModule, NO_ERRORS_SCHEMA, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
|
6
|
+
import { InjectionToken, Self, Optional, Inject, Component, Injectable, Directive, EventEmitter, Output, Input, Host, Pipe, HostListener, forwardRef, ViewChild, ViewChildren, HostBinding, ViewEncapsulation, NgModule, NO_ERRORS_SCHEMA, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
|
7
7
|
import * as i1$1 from '@angular/material/dialog';
|
|
8
8
|
import { MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog';
|
|
9
9
|
import * as i1 from '@ngx-translate/core';
|
|
10
10
|
import { TranslateModule } from '@ngx-translate/core';
|
|
11
11
|
import * as i2 from '@angular/common';
|
|
12
|
-
import { CommonModule } from '@angular/common';
|
|
12
|
+
import { formatNumber, CommonModule } from '@angular/common';
|
|
13
13
|
import * as i3 from '@angular/material/button';
|
|
14
14
|
import { MatButtonModule } from '@angular/material/button';
|
|
15
15
|
import * as i6 from '@angular/material/form-field';
|
|
16
16
|
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
17
|
-
import * as
|
|
17
|
+
import * as i8 from '@angular/material/input';
|
|
18
18
|
import { MAT_INPUT_VALUE_ACCESSOR, MatInputModule } from '@angular/material/input';
|
|
19
|
-
import * as i8 from '@angular/flex-layout/flex';
|
|
19
|
+
import * as i8$1 from '@angular/flex-layout/flex';
|
|
20
20
|
import * as i3$1 from 'ngx-toastr';
|
|
21
21
|
import { BehaviorSubject, Subject, of, forkJoin, debounceTime, distinctUntilChanged, filter, tap, switchMap, throwError } from 'rxjs';
|
|
22
22
|
import * as i5 from '@angular/material/table';
|
|
@@ -27,20 +27,20 @@ import * as i2$1 from 'ngx-filesaver';
|
|
|
27
27
|
import { catchError, map, finalize } from 'rxjs/operators';
|
|
28
28
|
import * as i1$5 from '@angular/material/paginator';
|
|
29
29
|
import { MatPaginatorIntl, MatPaginatorModule } from '@angular/material/paginator';
|
|
30
|
-
import * as i4
|
|
30
|
+
import * as i4 from '@angular/material/checkbox';
|
|
31
31
|
import { MatCheckboxModule } from '@angular/material/checkbox';
|
|
32
32
|
import * as i7 from '@angular/material/icon';
|
|
33
33
|
import { MatIconModule } from '@angular/material/icon';
|
|
34
|
-
import * as i8$
|
|
34
|
+
import * as i8$2 from '@angular/material/tooltip';
|
|
35
35
|
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
36
36
|
import * as i9 from '@angular/flex-layout/extended';
|
|
37
37
|
import * as i7$1 from '@angular/material/menu';
|
|
38
38
|
import { MatMenuModule } from '@angular/material/menu';
|
|
39
39
|
import * as i2$2 from '@angular/platform-browser';
|
|
40
|
-
import * as
|
|
41
|
-
import * as i4$
|
|
40
|
+
import * as i7$2 from '@angular/cdk/text-field';
|
|
41
|
+
import * as i4$1 from '@angular/material/core';
|
|
42
42
|
import { NativeDateAdapter, DateAdapter, MAT_DATE_FORMATS, MatRippleModule, MatCommonModule } from '@angular/material/core';
|
|
43
|
-
import * as i5$
|
|
43
|
+
import * as i5$1 from '@angular/material/datepicker';
|
|
44
44
|
import { MatDatepickerModule } from '@angular/material/datepicker';
|
|
45
45
|
import * as i10 from '@angular/cdk/scrolling';
|
|
46
46
|
import { CdkVirtualScrollViewport, ScrollingModule } from '@angular/cdk/scrolling';
|
|
@@ -57,10 +57,10 @@ import { MatProgressBarModule } from '@angular/material/progress-bar';
|
|
|
57
57
|
import { NestedTreeControl, FlatTreeControl, CdkTreeModule, CdkTree, CdkTreeNode } from '@angular/cdk/tree';
|
|
58
58
|
import * as i6$1 from '@angular/material/tree';
|
|
59
59
|
import { MatTreeNestedDataSource, MatTreeFlattener, MatTreeFlatDataSource, MatTreeModule } from '@angular/material/tree';
|
|
60
|
-
import * as i4$
|
|
60
|
+
import * as i4$2 from '@angular/material/radio';
|
|
61
61
|
import { MatRadioModule } from '@angular/material/radio';
|
|
62
62
|
import * as i6$2 from '@angular/material/divider';
|
|
63
|
-
import * as i4$
|
|
63
|
+
import * as i4$3 from 'ngx-quill';
|
|
64
64
|
import { QuillModule } from 'ngx-quill';
|
|
65
65
|
import * as i1$6 from 'jsog-typescript';
|
|
66
66
|
import { OverlayModule } from '@angular/cdk/overlay';
|
|
@@ -143,6 +143,7 @@ var ColumnTypeEnum;
|
|
|
143
143
|
(function (ColumnTypeEnum) {
|
|
144
144
|
ColumnTypeEnum["VIEW"] = "VIEW";
|
|
145
145
|
ColumnTypeEnum["INPUT_COUNTER"] = "INPUT_COUNTER";
|
|
146
|
+
ColumnTypeEnum["INPUT_CURRENCY"] = "INPUT_CURRENCY";
|
|
146
147
|
ColumnTypeEnum["DATE_PICKER"] = "DATE_PICKER";
|
|
147
148
|
ColumnTypeEnum["MULTI_SELECT_AUTOCOMPLETE"] = "MULTI_SELECT_AUTOCOMPLETE";
|
|
148
149
|
ColumnTypeEnum["CHECKBOX"] = "CHECKBOX";
|
|
@@ -680,7 +681,7 @@ class CvaCustomDialogComponent {
|
|
|
680
681
|
</button>
|
|
681
682
|
</div>
|
|
682
683
|
|
|
683
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i6.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type:
|
|
684
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i6.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8$1.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i8$1.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
684
685
|
}
|
|
685
686
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaCustomDialogComponent, decorators: [{
|
|
686
687
|
type: Component,
|
|
@@ -953,6 +954,9 @@ class UtilsService {
|
|
|
953
954
|
if (!!onErrorFunc) {
|
|
954
955
|
onErrorFunc(error1);
|
|
955
956
|
}
|
|
957
|
+
if (error1 === '0') {
|
|
958
|
+
this.showErrorToarst('error.serverNotResponse');
|
|
959
|
+
}
|
|
956
960
|
else {
|
|
957
961
|
this.showError(error1);
|
|
958
962
|
}
|
|
@@ -1577,7 +1581,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
1577
1581
|
|
|
1578
1582
|
class ValidatorService {
|
|
1579
1583
|
static invalid(control) {
|
|
1580
|
-
|
|
1584
|
+
if (!control || !control.dirty) {
|
|
1585
|
+
return false;
|
|
1586
|
+
}
|
|
1587
|
+
return control.invalid || !!control.errors;
|
|
1581
1588
|
}
|
|
1582
1589
|
static getErrorMessage(control, errorMessages) {
|
|
1583
1590
|
if (!control) {
|
|
@@ -1653,13 +1660,13 @@ class ValidatorService {
|
|
|
1653
1660
|
if (conditions.required) {
|
|
1654
1661
|
validationFns.push(Validators.required);
|
|
1655
1662
|
}
|
|
1656
|
-
if (conditions.min != undefined
|
|
1663
|
+
if (conditions.min != undefined) {
|
|
1657
1664
|
const validationMin = (control) => {
|
|
1658
1665
|
return ValidatorService.customMinValueNsCounterInput(control.value, ValidatorService.getMinMaxDynamic(conditions.min));
|
|
1659
1666
|
};
|
|
1660
1667
|
validationFns.push(validationMin);
|
|
1661
1668
|
}
|
|
1662
|
-
if (conditions.max != undefined
|
|
1669
|
+
if (conditions.max != undefined) {
|
|
1663
1670
|
const validationMax = (control) => {
|
|
1664
1671
|
return ValidatorService.customMaxValueNsCounterInput(control.value, ValidatorService.getMinMaxDynamic(conditions.max));
|
|
1665
1672
|
};
|
|
@@ -1672,12 +1679,6 @@ class ValidatorService {
|
|
|
1672
1679
|
if (conditions.required) {
|
|
1673
1680
|
validationFns.push(Validators.required);
|
|
1674
1681
|
}
|
|
1675
|
-
// if (conditions.min) {
|
|
1676
|
-
// validationFns.push(new NsValidator({minDate: conditions.min}).customMinDateValidator());
|
|
1677
|
-
// }
|
|
1678
|
-
// if (conditions.max) {
|
|
1679
|
-
// validationFns.push(new NsValidator({maxDate: conditions.max}).customMaxDateValidator());
|
|
1680
|
-
// }
|
|
1681
1682
|
return validationFns;
|
|
1682
1683
|
}
|
|
1683
1684
|
static getRequiredDynamic(isRequired) {
|
|
@@ -1685,8 +1686,6 @@ class ValidatorService {
|
|
|
1685
1686
|
}
|
|
1686
1687
|
static generateNsDateRangePickerValidators(conditions) {
|
|
1687
1688
|
const validationFns = [];
|
|
1688
|
-
// if (NsValidator.getRequiredDynamic(conditions.requiredFromDate)
|
|
1689
|
-
// || NsValidator.getRequiredDynamic(conditions.requiredToDate)) {
|
|
1690
1689
|
const validation = (control) => {
|
|
1691
1690
|
const range = control.value;
|
|
1692
1691
|
if (!range?.fromDate && ValidatorService.getRequiredDynamic(conditions.requiredFromDate)) {
|
|
@@ -1698,12 +1697,8 @@ class ValidatorService {
|
|
|
1698
1697
|
return null;
|
|
1699
1698
|
};
|
|
1700
1699
|
validationFns.push(validation);
|
|
1701
|
-
// }
|
|
1702
1700
|
return validationFns;
|
|
1703
1701
|
}
|
|
1704
|
-
// customMinDateValidator(): ValidatorFn {
|
|
1705
|
-
// return this.customMinDateValidatorControl;
|
|
1706
|
-
// }
|
|
1707
1702
|
static customMinDateValidatorControl(value, minDate) {
|
|
1708
1703
|
if (!minDate || !value) {
|
|
1709
1704
|
return null;
|
|
@@ -1714,9 +1709,6 @@ class ValidatorService {
|
|
|
1714
1709
|
}
|
|
1715
1710
|
return null;
|
|
1716
1711
|
}
|
|
1717
|
-
// customMaxDateValidator(): ValidatorFn {
|
|
1718
|
-
// return this.customMaxDateValidatorControl;
|
|
1719
|
-
// }
|
|
1720
1712
|
static customMaxDateValidatorControl(value, maxDate) {
|
|
1721
1713
|
if (!maxDate || !value) {
|
|
1722
1714
|
return null;
|
|
@@ -1746,96 +1738,113 @@ class ValidatorService {
|
|
|
1746
1738
|
return null;
|
|
1747
1739
|
}
|
|
1748
1740
|
static generateNsSmartTableValidators(conditions) {
|
|
1749
|
-
|
|
1741
|
+
return (control) => {
|
|
1750
1742
|
let errors = null;
|
|
1751
|
-
if (control) {
|
|
1752
|
-
|
|
1753
|
-
|
|
1754
|
-
|
|
1755
|
-
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1743
|
+
if (!control) {
|
|
1744
|
+
return errors;
|
|
1745
|
+
}
|
|
1746
|
+
const controlValueLength = control.value ? control.value.length : 0;
|
|
1747
|
+
if (conditions.minRow > controlValueLength) {
|
|
1748
|
+
return { minRow: { valid: false, min: conditions.minRow, actual: controlValueLength } };
|
|
1749
|
+
}
|
|
1750
|
+
if (conditions.maxRow < controlValueLength) {
|
|
1751
|
+
return { maxRow: { valid: false, max: conditions.maxRow, actual: controlValueLength } };
|
|
1752
|
+
}
|
|
1753
|
+
if (!control.value) {
|
|
1754
|
+
return null;
|
|
1755
|
+
}
|
|
1756
|
+
control.value.forEach((row) => {
|
|
1757
|
+
if (errors || !conditions.columns) {
|
|
1758
|
+
return;
|
|
1761
1759
|
}
|
|
1762
|
-
|
|
1763
|
-
if (errors
|
|
1760
|
+
conditions.columns.forEach((column) => {
|
|
1761
|
+
if (errors) {
|
|
1764
1762
|
return;
|
|
1765
1763
|
}
|
|
1766
|
-
|
|
1767
|
-
|
|
1768
|
-
|
|
1764
|
+
const tempControl = new FormControl();
|
|
1765
|
+
tempControl.setValue(row[column.columnDef]);
|
|
1766
|
+
const columnType = TableService.getColumnType(column, row);
|
|
1767
|
+
if (columnType === ColumnTypeEnum.MULTI_SELECT_AUTOCOMPLETE) {
|
|
1768
|
+
if (ValidatorService.getRequired(column)) {
|
|
1769
|
+
tempControl.setValidators(Validators.required);
|
|
1769
1770
|
}
|
|
1770
|
-
|
|
1771
|
-
|
|
1772
|
-
|
|
1773
|
-
|
|
1774
|
-
|
|
1775
|
-
|
|
1771
|
+
}
|
|
1772
|
+
else if (columnType === ColumnTypeEnum.INPUT_COUNTER) {
|
|
1773
|
+
tempControl.setValidators(ValidatorService.generateNsCounterInputValidators({
|
|
1774
|
+
required: ValidatorService.getRequired(column),
|
|
1775
|
+
min: null,
|
|
1776
|
+
max: null,
|
|
1777
|
+
isDecimal: ValidatorService.getIsDecimal(column),
|
|
1778
|
+
}));
|
|
1779
|
+
}
|
|
1780
|
+
else if (columnType === ColumnTypeEnum.INPUT_CURRENCY) {
|
|
1781
|
+
tempControl.setValidators(ValidatorService.generateNsCounterInputValidators({
|
|
1782
|
+
required: ValidatorService.getRequired(column),
|
|
1783
|
+
min: null,
|
|
1784
|
+
max: null,
|
|
1785
|
+
isDecimal: ValidatorService.getIsDecimal(column),
|
|
1786
|
+
}));
|
|
1787
|
+
}
|
|
1788
|
+
else if (columnType === ColumnTypeEnum.DATE_PICKER) {
|
|
1789
|
+
tempControl.setValidators(ValidatorService.generateNsDatePickerValidators({
|
|
1790
|
+
required: ValidatorService.getRequired(column),
|
|
1791
|
+
min: null,
|
|
1792
|
+
max: null,
|
|
1793
|
+
}));
|
|
1794
|
+
}
|
|
1795
|
+
else if (columnType === ColumnTypeEnum.INPUT) {
|
|
1796
|
+
tempControl.setValidators(ValidatorService.generateNsInputValidators({
|
|
1797
|
+
required: ValidatorService.getRequired(column),
|
|
1798
|
+
maxLength: column.max ? column.max(row) : undefined,
|
|
1799
|
+
minLength: column.min ? column.min(row) : undefined,
|
|
1800
|
+
pattern: undefined,
|
|
1801
|
+
}));
|
|
1802
|
+
}
|
|
1803
|
+
else if (columnType === ColumnTypeEnum.LIVE_SEARCHING) {
|
|
1804
|
+
tempControl.setValidators(ValidatorService.generateNsInputValidators({
|
|
1805
|
+
required: ValidatorService.getRequired(column),
|
|
1806
|
+
maxLength: column.max ? column.max(row) : undefined,
|
|
1807
|
+
minLength: column.min ? column.min(row) : undefined,
|
|
1808
|
+
pattern: undefined,
|
|
1809
|
+
}));
|
|
1810
|
+
}
|
|
1811
|
+
tempControl.updateValueAndValidity();
|
|
1812
|
+
if (columnType === ColumnTypeEnum.DATE_PICKER) {
|
|
1813
|
+
const errorsArr = [];
|
|
1814
|
+
if (tempControl.errors) {
|
|
1815
|
+
errorsArr.push(tempControl.errors);
|
|
1776
1816
|
}
|
|
1777
|
-
|
|
1778
|
-
|
|
1779
|
-
required: ValidatorService.getRequired(column),
|
|
1780
|
-
min: null,
|
|
1781
|
-
max: null,
|
|
1782
|
-
isDecimal: ValidatorService.getIsDecimal(column),
|
|
1783
|
-
}));
|
|
1817
|
+
if (ValidatorService.customMinDateValidatorControl(tempControl.value, column.min ? column.min(row) : null)) {
|
|
1818
|
+
errorsArr.push(ValidatorService.customMinDateValidatorControl(tempControl.value, column.min ? column.min(row) : null));
|
|
1784
1819
|
}
|
|
1785
|
-
|
|
1786
|
-
|
|
1787
|
-
required: ValidatorService.getRequired(column),
|
|
1788
|
-
min: null,
|
|
1789
|
-
max: null,
|
|
1790
|
-
}));
|
|
1820
|
+
if (ValidatorService.customMaxDateValidatorControl(tempControl.value, column.max ? column.max(row) : null)) {
|
|
1821
|
+
errorsArr.push(ValidatorService.customMaxDateValidatorControl(tempControl.value, column.max ? column.max(row) : null));
|
|
1791
1822
|
}
|
|
1792
|
-
|
|
1793
|
-
tempControl.
|
|
1794
|
-
required: ValidatorService.getRequired(column),
|
|
1795
|
-
maxLength: column.max ? column.max(row) : undefined,
|
|
1796
|
-
minLength: column.min ? column.min(row) : undefined,
|
|
1797
|
-
pattern: undefined,
|
|
1798
|
-
}));
|
|
1823
|
+
if (errorsArr.length > 0) {
|
|
1824
|
+
tempControl.setErrors(errorsArr);
|
|
1799
1825
|
}
|
|
1800
|
-
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
}
|
|
1806
|
-
if (ValidatorService.customMinDateValidatorControl(tempControl.value, column.min ? column.min(row) : null)) {
|
|
1807
|
-
errorsArr.push(ValidatorService.customMinDateValidatorControl(tempControl.value, column.min ? column.min(row) : null));
|
|
1808
|
-
}
|
|
1809
|
-
if (ValidatorService.customMaxDateValidatorControl(tempControl.value, column.max ? column.max(row) : null)) {
|
|
1810
|
-
errorsArr.push(ValidatorService.customMaxDateValidatorControl(tempControl.value, column.max ? column.max(row) : null));
|
|
1811
|
-
}
|
|
1812
|
-
if (errorsArr.length > 0) {
|
|
1813
|
-
tempControl.setErrors(errorsArr);
|
|
1814
|
-
}
|
|
1826
|
+
}
|
|
1827
|
+
if (columnType === ColumnTypeEnum.INPUT_COUNTER || columnType === ColumnTypeEnum.INPUT_CURRENCY) {
|
|
1828
|
+
const errorsArr = [];
|
|
1829
|
+
if (tempControl.errors) {
|
|
1830
|
+
errorsArr.push(tempControl.errors);
|
|
1815
1831
|
}
|
|
1816
|
-
if (
|
|
1817
|
-
|
|
1818
|
-
if (tempControl.errors) {
|
|
1819
|
-
errorsArr.push(tempControl.errors);
|
|
1820
|
-
}
|
|
1821
|
-
if (ValidatorService.customMinValueNsCounterInput(tempControl.value, column.min ? column.min(row) : null)) {
|
|
1822
|
-
errorsArr.push(ValidatorService.customMinValueNsCounterInput(tempControl.value, column.min ? column.min(row) : null));
|
|
1823
|
-
}
|
|
1824
|
-
if (ValidatorService.customMaxValueNsCounterInput(tempControl.value, column.max ? column.max(row) : null)) {
|
|
1825
|
-
errorsArr.push(ValidatorService.customMaxValueNsCounterInput(tempControl.value, column.max ? column.max(row) : null));
|
|
1826
|
-
}
|
|
1827
|
-
if (errorsArr.length > 0) {
|
|
1828
|
-
tempControl.setErrors(errorsArr);
|
|
1829
|
-
}
|
|
1832
|
+
if (ValidatorService.customMinValueNsCounterInput(tempControl.value, column.min ? column.min(row) : null)) {
|
|
1833
|
+
errorsArr.push(ValidatorService.customMinValueNsCounterInput(tempControl.value, column.min ? column.min(row) : null));
|
|
1830
1834
|
}
|
|
1831
|
-
tempControl.
|
|
1832
|
-
|
|
1833
|
-
|
|
1835
|
+
if (ValidatorService.customMaxValueNsCounterInput(tempControl.value, column.max ? column.max(row) : null)) {
|
|
1836
|
+
errorsArr.push(ValidatorService.customMaxValueNsCounterInput(tempControl.value, column.max ? column.max(row) : null));
|
|
1837
|
+
}
|
|
1838
|
+
if (errorsArr.length > 0) {
|
|
1839
|
+
tempControl.setErrors(errorsArr);
|
|
1840
|
+
}
|
|
1841
|
+
}
|
|
1842
|
+
tempControl.markAllAsTouched();
|
|
1843
|
+
errors = tempControl.errors;
|
|
1834
1844
|
});
|
|
1835
|
-
}
|
|
1845
|
+
});
|
|
1836
1846
|
return errors;
|
|
1837
1847
|
};
|
|
1838
|
-
return validator;
|
|
1839
1848
|
}
|
|
1840
1849
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: ValidatorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1841
1850
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: ValidatorService, providedIn: 'root' });
|
|
@@ -1869,7 +1878,7 @@ class CvaCounterInputComponent {
|
|
|
1869
1878
|
onChange = new EventEmitter();
|
|
1870
1879
|
onEnter = new EventEmitter();
|
|
1871
1880
|
// Cái này là để gắn khi nó là FormControl trong 1 FormGroup
|
|
1872
|
-
formControl;
|
|
1881
|
+
formControl = null;
|
|
1873
1882
|
config;
|
|
1874
1883
|
constructor(injector, ngControl) {
|
|
1875
1884
|
this.injector = injector;
|
|
@@ -1889,6 +1898,9 @@ class CvaCounterInputComponent {
|
|
|
1889
1898
|
set counterValue(val) {
|
|
1890
1899
|
this.writeValue(val);
|
|
1891
1900
|
}
|
|
1901
|
+
getFormControl() {
|
|
1902
|
+
return this.formControl;
|
|
1903
|
+
}
|
|
1892
1904
|
ngOnChanges(changes) {
|
|
1893
1905
|
if ('value' in changes) {
|
|
1894
1906
|
this.value = changes.value.currentValue;
|
|
@@ -1910,7 +1922,7 @@ class CvaCounterInputComponent {
|
|
|
1910
1922
|
if (ngControl && !this.formControl) {
|
|
1911
1923
|
// Nếu là NsSmartTable thì phải tự new FormControl còn không thì cứ hóng parent FormControl về ^^
|
|
1912
1924
|
if (this.isFormControl) {
|
|
1913
|
-
this.formControl = ngControl.control ? ngControl.control :
|
|
1925
|
+
this.formControl = ngControl.control ? ngControl.control : null;
|
|
1914
1926
|
}
|
|
1915
1927
|
else {
|
|
1916
1928
|
this.formControl = new FormControl();
|
|
@@ -1974,22 +1986,22 @@ class CvaCounterInputComponent {
|
|
|
1974
1986
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.5", type: CvaCounterInputComponent, isStandalone: false, selector: "cva-counter-input", inputs: { label: "label", placeholder: "placeholder", suffixText: "suffixText", hint: "hint", value: "value", disabled: "disabled", required: "required", errorMessages: "errorMessages", min: "min", max: "max", error: "error", isDecimal: "isDecimal", isLabelOutside: "isLabelOutside", isFloatLabel: "isFloatLabel", percentOfLabelOutside: "percentOfLabelOutside", alignNumber: "alignNumber", isFormControl: "isFormControl" }, outputs: { onChange: "onChange", onEnter: "onEnter" }, usesOnChanges: true, ngImport: i0, template: `
|
|
1975
1987
|
<!-- css labelOutside trong base.theme-->
|
|
1976
1988
|
<div class="cva-counter-input"
|
|
1977
|
-
[ngClass]="{'labelOutside':
|
|
1989
|
+
[ngClass]="{'labelOutside': isLabelOutside, 'float_label': isFloatLabel && !isLabelOutside}"
|
|
1978
1990
|
fxLayout="row" fxLayout.lt-sm="row wrap">
|
|
1979
1991
|
<mat-label *ngIf="isLabelOutside" class="label_width"
|
|
1980
1992
|
fxLayout="column" fxFlex="auto" fxFlex.lt-md="100%">
|
|
1981
1993
|
<div class="label">
|
|
1982
1994
|
<div>
|
|
1983
1995
|
{{ (label ? label : placeholder) | translate }}<span
|
|
1984
|
-
class="required-label-outside">{{
|
|
1996
|
+
class="required-label-outside">{{ required ? '*' : '' }}</span>
|
|
1985
1997
|
</div>
|
|
1986
1998
|
</div>
|
|
1987
1999
|
</mat-label>
|
|
1988
2000
|
<mat-form-field *ngIf="isShowControl()"
|
|
1989
|
-
appearance="outline" [floatLabel]="
|
|
2001
|
+
appearance="outline" [floatLabel]="isFloatLabel ? 'always' : 'auto'"
|
|
1990
2002
|
[hideRequiredMarker]="!isFloatLabel"
|
|
1991
2003
|
fxLayout="column" fxFlex="auto" fxFlex.lt-md="100%">
|
|
1992
|
-
<mat-label *ngIf="!isLabelOutside &&
|
|
2004
|
+
<mat-label *ngIf="!isLabelOutside && isFloatLabel">{{ (label ? label : placeholder) | translate }}</mat-label>
|
|
1993
2005
|
<div class="input-area">
|
|
1994
2006
|
<input matInput type="number" [(ngModel)]="counterValue" #nsCounterInput="ngModel"
|
|
1995
2007
|
[style.text-align]="alignNumber"
|
|
@@ -2005,7 +2017,7 @@ class CvaCounterInputComponent {
|
|
|
2005
2017
|
{{ hint | translate }}
|
|
2006
2018
|
</mat-hint>
|
|
2007
2019
|
<mat-hint style="color: red" *ngIf="NsValidator.invalid(formControl)">
|
|
2008
|
-
{{ NsValidator.
|
|
2020
|
+
{{ NsValidator.getErrorMessageV1(formControl, errorMessages).msg | translate: NsValidator.getErrorMessageV1(formControl, errorMessages).params }}
|
|
2009
2021
|
</mat-hint>
|
|
2010
2022
|
</mat-form-field>
|
|
2011
2023
|
|
|
@@ -2020,7 +2032,7 @@ class CvaCounterInputComponent {
|
|
|
2020
2032
|
</div>
|
|
2021
2033
|
</ng-container>
|
|
2022
2034
|
</div>
|
|
2023
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.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$2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1$2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i1$2.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i6.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type:
|
|
2035
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.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$2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1$2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i1$2.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i6.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8$1.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i9.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
2024
2036
|
}
|
|
2025
2037
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaCounterInputComponent, decorators: [{
|
|
2026
2038
|
type: Component,
|
|
@@ -2030,22 +2042,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
2030
2042
|
template: `
|
|
2031
2043
|
<!-- css labelOutside trong base.theme-->
|
|
2032
2044
|
<div class="cva-counter-input"
|
|
2033
|
-
[ngClass]="{'labelOutside':
|
|
2045
|
+
[ngClass]="{'labelOutside': isLabelOutside, 'float_label': isFloatLabel && !isLabelOutside}"
|
|
2034
2046
|
fxLayout="row" fxLayout.lt-sm="row wrap">
|
|
2035
2047
|
<mat-label *ngIf="isLabelOutside" class="label_width"
|
|
2036
2048
|
fxLayout="column" fxFlex="auto" fxFlex.lt-md="100%">
|
|
2037
2049
|
<div class="label">
|
|
2038
2050
|
<div>
|
|
2039
2051
|
{{ (label ? label : placeholder) | translate }}<span
|
|
2040
|
-
class="required-label-outside">{{
|
|
2052
|
+
class="required-label-outside">{{ required ? '*' : '' }}</span>
|
|
2041
2053
|
</div>
|
|
2042
2054
|
</div>
|
|
2043
2055
|
</mat-label>
|
|
2044
2056
|
<mat-form-field *ngIf="isShowControl()"
|
|
2045
|
-
appearance="outline" [floatLabel]="
|
|
2057
|
+
appearance="outline" [floatLabel]="isFloatLabel ? 'always' : 'auto'"
|
|
2046
2058
|
[hideRequiredMarker]="!isFloatLabel"
|
|
2047
2059
|
fxLayout="column" fxFlex="auto" fxFlex.lt-md="100%">
|
|
2048
|
-
<mat-label *ngIf="!isLabelOutside &&
|
|
2060
|
+
<mat-label *ngIf="!isLabelOutside && isFloatLabel">{{ (label ? label : placeholder) | translate }}</mat-label>
|
|
2049
2061
|
<div class="input-area">
|
|
2050
2062
|
<input matInput type="number" [(ngModel)]="counterValue" #nsCounterInput="ngModel"
|
|
2051
2063
|
[style.text-align]="alignNumber"
|
|
@@ -2061,7 +2073,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
2061
2073
|
{{ hint | translate }}
|
|
2062
2074
|
</mat-hint>
|
|
2063
2075
|
<mat-hint style="color: red" *ngIf="NsValidator.invalid(formControl)">
|
|
2064
|
-
{{ NsValidator.
|
|
2076
|
+
{{ NsValidator.getErrorMessageV1(formControl, errorMessages).msg | translate: NsValidator.getErrorMessageV1(formControl, errorMessages).params }}
|
|
2065
2077
|
</mat-hint>
|
|
2066
2078
|
</mat-form-field>
|
|
2067
2079
|
|
|
@@ -2352,7 +2364,7 @@ class CvaHeaderExpandButtonComponent {
|
|
|
2352
2364
|
</div>
|
|
2353
2365
|
</mat-menu>
|
|
2354
2366
|
|
|
2355
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i4
|
|
2367
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i7$1.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i7$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i7$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i8$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8$1.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
2356
2368
|
}
|
|
2357
2369
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaHeaderExpandButtonComponent, decorators: [{
|
|
2358
2370
|
type: Component,
|
|
@@ -2789,7 +2801,7 @@ class CvaTableComponent {
|
|
|
2789
2801
|
</div>
|
|
2790
2802
|
</div>
|
|
2791
2803
|
</div>
|
|
2792
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i2.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i4
|
|
2804
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i2.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: i5.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i5.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i5.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i5.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i5.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i5.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i5.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i5.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i5.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i5.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i1$5.MatPaginator, selector: "mat-paginator", inputs: ["color", "pageIndex", "length", "pageSize", "pageSizeOptions", "hidePageSize", "showFirstLastButtons", "selectConfig", "disabled"], outputs: ["page"], exportAs: ["matPaginator"] }, { kind: "directive", type: i8$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i1$4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8$1.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i8$1.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i9.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: CvaCounterInputComponent, selector: "cva-counter-input", inputs: ["label", "placeholder", "suffixText", "hint", "value", "disabled", "required", "errorMessages", "min", "max", "error", "isDecimal", "isLabelOutside", "isFloatLabel", "percentOfLabelOutside", "alignNumber", "isFormControl"], outputs: ["onChange", "onEnter"] }, { kind: "directive", type: StylePaginatorDirective, selector: "[style-paginator]", inputs: ["showTotalPages", "paging"], outputs: ["pagingChangeEvent"] }, { kind: "component", type: CvaHeaderExpandButtonComponent, selector: "cva-header-expand-button", inputs: ["expandHeaderButton", "columns", "moduleName"], outputs: ["onChange"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: SecureImgPipe, name: "secure" }] });
|
|
2793
2805
|
}
|
|
2794
2806
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaTableComponent, decorators: [{
|
|
2795
2807
|
type: Component,
|
|
@@ -3020,8 +3032,39 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
3020
3032
|
type: Input
|
|
3021
3033
|
}] } });
|
|
3022
3034
|
|
|
3035
|
+
class NumericInputFormat {
|
|
3036
|
+
locale = 'en';
|
|
3037
|
+
decimalMarker = '.';
|
|
3038
|
+
constructor() {
|
|
3039
|
+
}
|
|
3040
|
+
unformatValue(value) {
|
|
3041
|
+
const regExp = new RegExp(`[^\\d${this.decimalMarker}-]`, 'g');
|
|
3042
|
+
// Separate value on before and after decimal marker
|
|
3043
|
+
const [integer, decimal] = value.replace(regExp, '').split(this.decimalMarker);
|
|
3044
|
+
// Send non localized value, with dot as decimalMarker to API
|
|
3045
|
+
return decimal ? integer.concat('.', decimal) : integer;
|
|
3046
|
+
}
|
|
3047
|
+
formatValue(value) {
|
|
3048
|
+
if (value === null || value === undefined) {
|
|
3049
|
+
return '';
|
|
3050
|
+
}
|
|
3051
|
+
value += '';
|
|
3052
|
+
const [thousandSeparator, decimalMarker] = formatNumber(1000.99, this.locale).replace(/\d/g, '');
|
|
3053
|
+
this.decimalMarker = decimalMarker;
|
|
3054
|
+
// Here value should always come with . as decimal marker thus any other behavior is bug
|
|
3055
|
+
const [integer, decimal] = value.toString().split('.');
|
|
3056
|
+
// console.log('4');
|
|
3057
|
+
// Group every three elements, and add thousandSeparator after them
|
|
3058
|
+
const v = (Number(integer) + '').replace(/\B(?=(\d{3})+(?!\d))/g, thousandSeparator);
|
|
3059
|
+
return Number(decimal) ? v.concat('.', decimal) : (integer === '' ? '' : v);
|
|
3060
|
+
}
|
|
3061
|
+
}
|
|
3062
|
+
|
|
3023
3063
|
class PatternDirective {
|
|
3024
3064
|
el;
|
|
3065
|
+
$regPatternString = '';
|
|
3066
|
+
$regPattern = new RegExp('');
|
|
3067
|
+
inputElement;
|
|
3025
3068
|
navigationKeys = [
|
|
3026
3069
|
'Backspace',
|
|
3027
3070
|
'Delete',
|
|
@@ -3034,21 +3077,18 @@ class PatternDirective {
|
|
|
3034
3077
|
'ArrowRight',
|
|
3035
3078
|
'Clear',
|
|
3036
3079
|
'Copy',
|
|
3037
|
-
'Paste'
|
|
3080
|
+
'Paste',
|
|
3038
3081
|
];
|
|
3082
|
+
constructor(el) {
|
|
3083
|
+
this.el = el;
|
|
3084
|
+
this.inputElement = el.nativeElement;
|
|
3085
|
+
}
|
|
3039
3086
|
set regPattern(reg) {
|
|
3040
3087
|
if (reg) {
|
|
3041
3088
|
this.$regPatternString = reg;
|
|
3042
3089
|
this.$regPattern = new RegExp(reg);
|
|
3043
3090
|
}
|
|
3044
3091
|
}
|
|
3045
|
-
$regPatternString = '';
|
|
3046
|
-
$regPattern = new RegExp('');
|
|
3047
|
-
inputElement;
|
|
3048
|
-
constructor(el) {
|
|
3049
|
-
this.el = el;
|
|
3050
|
-
this.inputElement = el.nativeElement;
|
|
3051
|
-
}
|
|
3052
3092
|
// @Output() valueChange = new EventEmitter()
|
|
3053
3093
|
// @HostListener('input', ['$event']) onInputChange(event: any) {
|
|
3054
3094
|
// const initalValue = this.el.nativeElement.value;
|
|
@@ -3080,7 +3120,7 @@ class PatternDirective {
|
|
|
3080
3120
|
// ) {
|
|
3081
3121
|
// e.preventDefault();
|
|
3082
3122
|
// }
|
|
3083
|
-
if (!e.key
|
|
3123
|
+
if (!e.key?.match(this.$regPattern)) {
|
|
3084
3124
|
e.preventDefault();
|
|
3085
3125
|
return;
|
|
3086
3126
|
}
|
|
@@ -3287,6 +3327,7 @@ class CvaInputComponent {
|
|
|
3287
3327
|
isFloatLabel = true;
|
|
3288
3328
|
minLength;
|
|
3289
3329
|
maxLength;
|
|
3330
|
+
alignText = AlignEnum.LEFT;
|
|
3290
3331
|
onFocusStatus = false;
|
|
3291
3332
|
/* hiển thị suffix thay maxlength */
|
|
3292
3333
|
maxLengthDisplay;
|
|
@@ -3297,7 +3338,7 @@ class CvaInputComponent {
|
|
|
3297
3338
|
// Chỉ bằng false khi trong NsSmartTable thôi nhé @@
|
|
3298
3339
|
isFormControl = true;
|
|
3299
3340
|
formatFunc;
|
|
3300
|
-
|
|
3341
|
+
formControl = null;
|
|
3301
3342
|
config;
|
|
3302
3343
|
constructor(injector, ngControl) {
|
|
3303
3344
|
this.injector = injector;
|
|
@@ -3316,13 +3357,8 @@ class CvaInputComponent {
|
|
|
3316
3357
|
set textValue(val) {
|
|
3317
3358
|
this.writeValue(val);
|
|
3318
3359
|
}
|
|
3319
|
-
|
|
3320
|
-
|
|
3321
|
-
// const ngControl = this.injector.get(NgControl);
|
|
3322
|
-
// if (ngControl) {
|
|
3323
|
-
// this.control = ngControl.control;
|
|
3324
|
-
// this.callValidator();
|
|
3325
|
-
// }
|
|
3360
|
+
getFormControl() {
|
|
3361
|
+
return this.formControl;
|
|
3326
3362
|
}
|
|
3327
3363
|
ngOnInit() {
|
|
3328
3364
|
this.callValidator();
|
|
@@ -3330,28 +3366,28 @@ class CvaInputComponent {
|
|
|
3330
3366
|
callValidator() {
|
|
3331
3367
|
const ngControl = this.injector.get(NgControl);
|
|
3332
3368
|
// Nếu parent FormControl khởi tạo xong và formControl chưa có giá trị lưu
|
|
3333
|
-
if (ngControl && !this.
|
|
3369
|
+
if (ngControl && !this.formControl) {
|
|
3334
3370
|
// Nếu là NsSmartTable thì phải tự new FormControl còn không thì cứ hóng parent FormControl về ^^
|
|
3335
3371
|
if (this.isFormControl) {
|
|
3336
|
-
this.
|
|
3372
|
+
this.formControl = ngControl.control ? ngControl.control : null;
|
|
3337
3373
|
}
|
|
3338
3374
|
else {
|
|
3339
|
-
this.
|
|
3375
|
+
this.formControl = new FormControl();
|
|
3340
3376
|
}
|
|
3341
3377
|
// Hành động này gắn validator vào this.formControl
|
|
3342
3378
|
// - Nếu this.formControl là parent FormControl thì sẽ show error lên FormGroup
|
|
3343
3379
|
// - Nếu this.formControl là new FormControl thì sẽ quét QueryList để check {errors}
|
|
3344
|
-
if (this.
|
|
3345
|
-
if (this.
|
|
3346
|
-
this.
|
|
3380
|
+
if (this.formControl) {
|
|
3381
|
+
if (this.formControl.validator) {
|
|
3382
|
+
this.formControl.setValidators([...ValidatorService.generateNsInputValidators({
|
|
3347
3383
|
required: this.required,
|
|
3348
3384
|
minLength: this.minLength,
|
|
3349
3385
|
maxLength: this.maxLength,
|
|
3350
3386
|
pattern: this.pattern,
|
|
3351
|
-
}), this.
|
|
3387
|
+
}), this.formControl.validator]);
|
|
3352
3388
|
}
|
|
3353
3389
|
else {
|
|
3354
|
-
this.
|
|
3390
|
+
this.formControl.setValidators([...ValidatorService.generateNsInputValidators({
|
|
3355
3391
|
required: this.required,
|
|
3356
3392
|
minLength: this.minLength,
|
|
3357
3393
|
maxLength: this.maxLength,
|
|
@@ -3360,13 +3396,13 @@ class CvaInputComponent {
|
|
|
3360
3396
|
}
|
|
3361
3397
|
}
|
|
3362
3398
|
}
|
|
3363
|
-
if (this.
|
|
3399
|
+
if (this.formControl) {
|
|
3364
3400
|
// Nếu this.formControl thuộc NsSmartTable thì setValue lại
|
|
3365
3401
|
if (!this.isFormControl) {
|
|
3366
|
-
this.
|
|
3402
|
+
this.formControl.setValue(this.text);
|
|
3367
3403
|
}
|
|
3368
3404
|
// Nếu là parent FormControl rồi thì kệ
|
|
3369
|
-
this.
|
|
3405
|
+
this.formControl.updateValueAndValidity();
|
|
3370
3406
|
}
|
|
3371
3407
|
}
|
|
3372
3408
|
propagateChange = (_) => {
|
|
@@ -3415,32 +3451,36 @@ class CvaInputComponent {
|
|
|
3415
3451
|
isShowControl() {
|
|
3416
3452
|
return !this.disabled || (this.disabled && this.config && this.config.STYLE_DISABLE === 'CONTROL');
|
|
3417
3453
|
}
|
|
3454
|
+
onClear() {
|
|
3455
|
+
this.writeValue(null);
|
|
3456
|
+
}
|
|
3418
3457
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaInputComponent, deps: [{ token: i0.Injector }, { token: i1$2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
3419
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.5", type: CvaInputComponent, isStandalone: false, selector: "cva-input", inputs: { label: "label", name: "name", placeholder: "placeholder", hint: "hint", required: "required", disabled: "disabled", text: "text", type: "type", pattern: "pattern", errorMessages: "errorMessages", multiline: "multiline", isLabelOutside: "isLabelOutside", isFloatLabel: "isFloatLabel", minLength: "minLength", maxLength: "maxLength", maxLengthDisplay: "maxLengthDisplay", percentOfLabelOutside: "percentOfLabelOutside", suffixFontAwesomeClass: "suffixFontAwesomeClass", patternFilter: "patternFilter", isFormControl: "isFormControl", formatFunc: "formatFunc" }, outputs: { onChange: "onChange" }, ngImport: i0, template: `
|
|
3458
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.5", type: CvaInputComponent, isStandalone: false, selector: "cva-input", inputs: { label: "label", name: "name", placeholder: "placeholder", hint: "hint", required: "required", disabled: "disabled", text: "text", type: "type", pattern: "pattern", errorMessages: "errorMessages", multiline: "multiline", isLabelOutside: "isLabelOutside", isFloatLabel: "isFloatLabel", minLength: "minLength", maxLength: "maxLength", alignText: "alignText", maxLengthDisplay: "maxLengthDisplay", percentOfLabelOutside: "percentOfLabelOutside", suffixFontAwesomeClass: "suffixFontAwesomeClass", patternFilter: "patternFilter", isFormControl: "isFormControl", formatFunc: "formatFunc" }, outputs: { onChange: "onChange" }, ngImport: i0, template: `
|
|
3420
3459
|
<!-- css labelOutside trong base.theme-->
|
|
3421
3460
|
<div class="cva-input"
|
|
3422
|
-
[ngClass]="{'labelOutside':
|
|
3423
|
-
'float_label':
|
|
3424
|
-
'text_area':
|
|
3461
|
+
[ngClass]="{'labelOutside': isLabelOutside,
|
|
3462
|
+
'float_label': isFloatLabel && !isLabelOutside,
|
|
3463
|
+
'text_area': this.multiline}"
|
|
3425
3464
|
fxLayout="row" fxLayout.lt-sm="row wrap">
|
|
3426
3465
|
<mat-label *ngIf="isLabelOutside" class="label_width"
|
|
3427
3466
|
fxLayout="column" fxFlex="auto" fxFlex.lt-md="100%">
|
|
3428
3467
|
<div class="label">
|
|
3429
3468
|
<div>
|
|
3430
3469
|
{{ (label ? label : placeholder) | translate }}<span
|
|
3431
|
-
class="required-label-outside">{{
|
|
3470
|
+
class="required-label-outside">{{ required ? '*' : '' }}</span>
|
|
3432
3471
|
</div>
|
|
3433
3472
|
</div>
|
|
3434
3473
|
</mat-label>
|
|
3435
3474
|
<mat-form-field *ngIf="isShowControl()"
|
|
3436
|
-
appearance="outline" [floatLabel]="
|
|
3475
|
+
appearance="outline" [floatLabel]="isFloatLabel ? 'always' : 'auto'"
|
|
3437
3476
|
[ngClass]="{'cva-input-multiline': multiline}"
|
|
3438
3477
|
[hideRequiredMarker]="!isFloatLabel"
|
|
3439
3478
|
fxLayout="column" fxFlex="auto" fxFlex.lt-md="100%">
|
|
3440
|
-
<mat-label *ngIf="!isLabelOutside &&
|
|
3479
|
+
<mat-label *ngIf="!isLabelOutside && isFloatLabel" [ngClass]="{'cva-input-multiline': multiline}">
|
|
3441
3480
|
{{ (label ? label : placeholder) | translate }}
|
|
3442
3481
|
</mat-label>
|
|
3443
3482
|
<input matInput placeholder="{{placeholder|translate}}" [type]="type" [(ngModel)]="textValue"
|
|
3483
|
+
[style.text-align]="alignText"
|
|
3444
3484
|
[pattern]="pattern"
|
|
3445
3485
|
minLength="{{minLength ? minLength : 0}}"
|
|
3446
3486
|
maxLength="{{maxLength ? maxLength : 524288}}"
|
|
@@ -3455,6 +3495,7 @@ class CvaInputComponent {
|
|
|
3455
3495
|
[regPattern]="patternFilter"
|
|
3456
3496
|
autocomplete="off">
|
|
3457
3497
|
<textarea matInput [(ngModel)]="textValue" placeholder="{{placeholder|translate}}"
|
|
3498
|
+
[style.text-align]="alignText"
|
|
3458
3499
|
[pattern]="pattern"
|
|
3459
3500
|
minLength="{{minLength ? minLength : 0}}"
|
|
3460
3501
|
maxLength="{{maxLength ? maxLength : 524288}}"
|
|
@@ -3469,9 +3510,13 @@ class CvaInputComponent {
|
|
|
3469
3510
|
<i *ngIf="!!suffixFontAwesomeClass" class="input-suffix {{suffixFontAwesomeClass}}" matSuffix></i>
|
|
3470
3511
|
<span *ngIf="onFocusStatus && (!!maxLength || !!maxLengthDisplay)" class="input-suffix"
|
|
3471
3512
|
matSuffix>{{ displayLength() }}</span>
|
|
3472
|
-
<mat-
|
|
3473
|
-
|
|
3474
|
-
|
|
3513
|
+
<button mat-icon-button color="warn" class="btnTextClear" matSuffix (click)="onClear()" [disabled]="disabled"
|
|
3514
|
+
type="button">
|
|
3515
|
+
<mat-icon>clear</mat-icon>
|
|
3516
|
+
</button>
|
|
3517
|
+
<mat-hint align="start" *ngIf="!NsValidator.invalid(formControl)">{{ hint | translate }}</mat-hint>
|
|
3518
|
+
<mat-hint style="color: red" align="start" *ngIf="NsValidator.invalid(formControl)">
|
|
3519
|
+
{{ NsValidator.getErrorMessageV1(formControl, errorMessages).msg | translate: NsValidator.getErrorMessageV1(formControl, errorMessages).params }}
|
|
3475
3520
|
</mat-hint>
|
|
3476
3521
|
</mat-form-field>
|
|
3477
3522
|
|
|
@@ -3486,7 +3531,7 @@ class CvaInputComponent {
|
|
|
3486
3531
|
</div>
|
|
3487
3532
|
</ng-container>
|
|
3488
3533
|
</div>
|
|
3489
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i6.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type:
|
|
3534
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i6.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: i7$2.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8$1.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i9.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "directive", type: PatternDirective, selector: "[pattern-directive]", inputs: ["regPattern"] }, { kind: "directive", type: FormatInputDirective, selector: "[inputDirective]", inputs: ["inputDirective", "value"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
3490
3535
|
}
|
|
3491
3536
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaInputComponent, decorators: [{
|
|
3492
3537
|
type: Component,
|
|
@@ -3496,28 +3541,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
3496
3541
|
template: `
|
|
3497
3542
|
<!-- css labelOutside trong base.theme-->
|
|
3498
3543
|
<div class="cva-input"
|
|
3499
|
-
[ngClass]="{'labelOutside':
|
|
3500
|
-
'float_label':
|
|
3501
|
-
'text_area':
|
|
3544
|
+
[ngClass]="{'labelOutside': isLabelOutside,
|
|
3545
|
+
'float_label': isFloatLabel && !isLabelOutside,
|
|
3546
|
+
'text_area': this.multiline}"
|
|
3502
3547
|
fxLayout="row" fxLayout.lt-sm="row wrap">
|
|
3503
3548
|
<mat-label *ngIf="isLabelOutside" class="label_width"
|
|
3504
3549
|
fxLayout="column" fxFlex="auto" fxFlex.lt-md="100%">
|
|
3505
3550
|
<div class="label">
|
|
3506
3551
|
<div>
|
|
3507
3552
|
{{ (label ? label : placeholder) | translate }}<span
|
|
3508
|
-
class="required-label-outside">{{
|
|
3553
|
+
class="required-label-outside">{{ required ? '*' : '' }}</span>
|
|
3509
3554
|
</div>
|
|
3510
3555
|
</div>
|
|
3511
3556
|
</mat-label>
|
|
3512
3557
|
<mat-form-field *ngIf="isShowControl()"
|
|
3513
|
-
appearance="outline" [floatLabel]="
|
|
3558
|
+
appearance="outline" [floatLabel]="isFloatLabel ? 'always' : 'auto'"
|
|
3514
3559
|
[ngClass]="{'cva-input-multiline': multiline}"
|
|
3515
3560
|
[hideRequiredMarker]="!isFloatLabel"
|
|
3516
3561
|
fxLayout="column" fxFlex="auto" fxFlex.lt-md="100%">
|
|
3517
|
-
<mat-label *ngIf="!isLabelOutside &&
|
|
3562
|
+
<mat-label *ngIf="!isLabelOutside && isFloatLabel" [ngClass]="{'cva-input-multiline': multiline}">
|
|
3518
3563
|
{{ (label ? label : placeholder) | translate }}
|
|
3519
3564
|
</mat-label>
|
|
3520
3565
|
<input matInput placeholder="{{placeholder|translate}}" [type]="type" [(ngModel)]="textValue"
|
|
3566
|
+
[style.text-align]="alignText"
|
|
3521
3567
|
[pattern]="pattern"
|
|
3522
3568
|
minLength="{{minLength ? minLength : 0}}"
|
|
3523
3569
|
maxLength="{{maxLength ? maxLength : 524288}}"
|
|
@@ -3532,6 +3578,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
3532
3578
|
[regPattern]="patternFilter"
|
|
3533
3579
|
autocomplete="off">
|
|
3534
3580
|
<textarea matInput [(ngModel)]="textValue" placeholder="{{placeholder|translate}}"
|
|
3581
|
+
[style.text-align]="alignText"
|
|
3535
3582
|
[pattern]="pattern"
|
|
3536
3583
|
minLength="{{minLength ? minLength : 0}}"
|
|
3537
3584
|
maxLength="{{maxLength ? maxLength : 524288}}"
|
|
@@ -3546,9 +3593,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
3546
3593
|
<i *ngIf="!!suffixFontAwesomeClass" class="input-suffix {{suffixFontAwesomeClass}}" matSuffix></i>
|
|
3547
3594
|
<span *ngIf="onFocusStatus && (!!maxLength || !!maxLengthDisplay)" class="input-suffix"
|
|
3548
3595
|
matSuffix>{{ displayLength() }}</span>
|
|
3549
|
-
<mat-
|
|
3550
|
-
|
|
3551
|
-
|
|
3596
|
+
<button mat-icon-button color="warn" class="btnTextClear" matSuffix (click)="onClear()" [disabled]="disabled"
|
|
3597
|
+
type="button">
|
|
3598
|
+
<mat-icon>clear</mat-icon>
|
|
3599
|
+
</button>
|
|
3600
|
+
<mat-hint align="start" *ngIf="!NsValidator.invalid(formControl)">{{ hint | translate }}</mat-hint>
|
|
3601
|
+
<mat-hint style="color: red" align="start" *ngIf="NsValidator.invalid(formControl)">
|
|
3602
|
+
{{ NsValidator.getErrorMessageV1(formControl, errorMessages).msg | translate: NsValidator.getErrorMessageV1(formControl, errorMessages).params }}
|
|
3552
3603
|
</mat-hint>
|
|
3553
3604
|
</mat-form-field>
|
|
3554
3605
|
|
|
@@ -3601,6 +3652,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
3601
3652
|
type: Input
|
|
3602
3653
|
}], maxLength: [{
|
|
3603
3654
|
type: Input
|
|
3655
|
+
}], alignText: [{
|
|
3656
|
+
type: Input
|
|
3604
3657
|
}], maxLengthDisplay: [{
|
|
3605
3658
|
type: Input
|
|
3606
3659
|
}], percentOfLabelOutside: [{
|
|
@@ -3724,7 +3777,8 @@ class CvaDatePickerComponent {
|
|
|
3724
3777
|
config;
|
|
3725
3778
|
// Chỉ bằng false khi trong NsSmartTable thôi @@
|
|
3726
3779
|
isFormControl = true;
|
|
3727
|
-
formControl;
|
|
3780
|
+
formControl = null;
|
|
3781
|
+
datepicker;
|
|
3728
3782
|
constructor(dateServiceUtil, ngControl, injector) {
|
|
3729
3783
|
this.dateServiceUtil = dateServiceUtil;
|
|
3730
3784
|
this.injector = injector;
|
|
@@ -3749,6 +3803,9 @@ class CvaDatePickerComponent {
|
|
|
3749
3803
|
set datepickerValue(val) {
|
|
3750
3804
|
this.writeValue(val);
|
|
3751
3805
|
}
|
|
3806
|
+
getFormControl() {
|
|
3807
|
+
return this.formControl;
|
|
3808
|
+
}
|
|
3752
3809
|
ngOnInit() {
|
|
3753
3810
|
if (this.isShowControl()) {
|
|
3754
3811
|
this.callValidator();
|
|
@@ -3760,7 +3817,7 @@ class CvaDatePickerComponent {
|
|
|
3760
3817
|
if (ngControl && !this.formControl) {
|
|
3761
3818
|
// Nếu là NsSmartTable thì phải tự new FormControl còn không thì cứ hóng parent FormControl về ^^
|
|
3762
3819
|
if (this.isFormControl) {
|
|
3763
|
-
this.formControl = ngControl.control ? ngControl.control :
|
|
3820
|
+
this.formControl = ngControl.control ? ngControl.control : null;
|
|
3764
3821
|
}
|
|
3765
3822
|
else {
|
|
3766
3823
|
this.formControl = new FormControl();
|
|
@@ -3865,6 +3922,12 @@ class CvaDatePickerComponent {
|
|
|
3865
3922
|
isShowControl() {
|
|
3866
3923
|
return !this.disabled || (this.disabled && this.config && this.config.STYLE_DISABLE === 'CONTROL');
|
|
3867
3924
|
}
|
|
3925
|
+
openDatepicker(event) {
|
|
3926
|
+
if (!this.disabled && this.datepicker) {
|
|
3927
|
+
event.stopPropagation();
|
|
3928
|
+
this.datepicker.open();
|
|
3929
|
+
}
|
|
3930
|
+
}
|
|
3868
3931
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaDatePickerComponent, deps: [{ token: DateUtilService }, { token: i1$2.NgControl, optional: true, self: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
3869
3932
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.5", type: CvaDatePickerComponent, isStandalone: false, selector: "cva-date-picker", inputs: { label: "label", placeholder: "placeholder", value: "value", disabled: "disabled", required: "required", minDate: "minDate", maxDate: "maxDate", errorMessages: "errorMessages", isLabelOutside: "isLabelOutside", isFloatLabel: "isFloatLabel", percentOfLabelOutside: "percentOfLabelOutside", isFormControl: "isFormControl" }, outputs: { onChange: "onChange" }, providers: [
|
|
3870
3933
|
{ provide: DateAdapter, useClass: NsDateAdapter },
|
|
@@ -3872,7 +3935,7 @@ class CvaDatePickerComponent {
|
|
|
3872
3935
|
provide: MAT_DATE_FORMATS,
|
|
3873
3936
|
useValue: APP_DATE_FORMATS,
|
|
3874
3937
|
},
|
|
3875
|
-
], ngImport: i0, template: `
|
|
3938
|
+
], viewQueries: [{ propertyName: "datepicker", first: true, predicate: ["xDatepicker"], descendants: true }], ngImport: i0, template: `
|
|
3876
3939
|
<!-- css labelOutside trong base.theme-->
|
|
3877
3940
|
<div class="cva-date-picker"
|
|
3878
3941
|
[ngClass]="{'labelOutside': isLabelOutside, 'float_label': isFloatLabel && !isLabelOutside}"
|
|
@@ -3894,19 +3957,20 @@ class CvaDatePickerComponent {
|
|
|
3894
3957
|
<input matInput [matDatepicker]="xDatepicker"
|
|
3895
3958
|
[placeholder]="placeholder|translate"
|
|
3896
3959
|
[(ngModel)]="datepickerValue"
|
|
3960
|
+
[disabled]="disabled"
|
|
3897
3961
|
[readonly]="true"
|
|
3898
3962
|
[required]="checkRequired(required)"
|
|
3899
3963
|
[title]="title ? title : ''"
|
|
3900
|
-
[min]="getMinDate()" [max]="getMaxDate()"
|
|
3964
|
+
[min]="getMinDate()" [max]="getMaxDate()"
|
|
3965
|
+
(click)="openDatepicker($event)">
|
|
3901
3966
|
<mat-datepicker-toggle matPrefix [for]="xDatepicker" [disabled]="disabled"></mat-datepicker-toggle>
|
|
3902
3967
|
<mat-datepicker #xDatepicker></mat-datepicker>
|
|
3903
|
-
<button mat-icon-button color="warn" class="btnDatePicker" matSuffix (click)="onClear()"
|
|
3904
|
-
[disabled]="disabled || checkRequired(required)">
|
|
3968
|
+
<button mat-icon-button color="warn" class="btnDatePicker" matSuffix (click)="onClear()" [disabled]="disabled">
|
|
3905
3969
|
<mat-icon>clear</mat-icon>
|
|
3906
3970
|
</button>
|
|
3907
3971
|
|
|
3908
3972
|
<mat-hint style="color: red" *ngIf="NsValidator.invalid(formControl)">
|
|
3909
|
-
{{ NsValidator.
|
|
3973
|
+
{{ NsValidator.getErrorMessageV1(formControl, errorMessages).msg | translate: NsValidator.getErrorMessageV1(formControl, errorMessages).params }}
|
|
3910
3974
|
</mat-hint>
|
|
3911
3975
|
|
|
3912
3976
|
</mat-form-field>
|
|
@@ -3922,7 +3986,7 @@ class CvaDatePickerComponent {
|
|
|
3922
3986
|
</div>
|
|
3923
3987
|
</ng-container>
|
|
3924
3988
|
</div>
|
|
3925
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i5$
|
|
3989
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i5$1.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i5$1.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i5$1.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i6.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i6.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8$1.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i9.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
3926
3990
|
}
|
|
3927
3991
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaDatePickerComponent, decorators: [{
|
|
3928
3992
|
type: Component,
|
|
@@ -3951,19 +4015,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
3951
4015
|
<input matInput [matDatepicker]="xDatepicker"
|
|
3952
4016
|
[placeholder]="placeholder|translate"
|
|
3953
4017
|
[(ngModel)]="datepickerValue"
|
|
4018
|
+
[disabled]="disabled"
|
|
3954
4019
|
[readonly]="true"
|
|
3955
4020
|
[required]="checkRequired(required)"
|
|
3956
4021
|
[title]="title ? title : ''"
|
|
3957
|
-
[min]="getMinDate()" [max]="getMaxDate()"
|
|
4022
|
+
[min]="getMinDate()" [max]="getMaxDate()"
|
|
4023
|
+
(click)="openDatepicker($event)">
|
|
3958
4024
|
<mat-datepicker-toggle matPrefix [for]="xDatepicker" [disabled]="disabled"></mat-datepicker-toggle>
|
|
3959
4025
|
<mat-datepicker #xDatepicker></mat-datepicker>
|
|
3960
|
-
<button mat-icon-button color="warn" class="btnDatePicker" matSuffix (click)="onClear()"
|
|
3961
|
-
[disabled]="disabled || checkRequired(required)">
|
|
4026
|
+
<button mat-icon-button color="warn" class="btnDatePicker" matSuffix (click)="onClear()" [disabled]="disabled">
|
|
3962
4027
|
<mat-icon>clear</mat-icon>
|
|
3963
4028
|
</button>
|
|
3964
4029
|
|
|
3965
4030
|
<mat-hint style="color: red" *ngIf="NsValidator.invalid(formControl)">
|
|
3966
|
-
{{ NsValidator.
|
|
4031
|
+
{{ NsValidator.getErrorMessageV1(formControl, errorMessages).msg | translate: NsValidator.getErrorMessageV1(formControl, errorMessages).params }}
|
|
3967
4032
|
</mat-hint>
|
|
3968
4033
|
|
|
3969
4034
|
</mat-form-field>
|
|
@@ -4018,6 +4083,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
4018
4083
|
type: Input
|
|
4019
4084
|
}], isFormControl: [{
|
|
4020
4085
|
type: Input
|
|
4086
|
+
}], datepicker: [{
|
|
4087
|
+
type: ViewChild,
|
|
4088
|
+
args: ['xDatepicker']
|
|
4021
4089
|
}] } });
|
|
4022
4090
|
|
|
4023
4091
|
class CvaMultiSelectAutocomplete {
|
|
@@ -4046,7 +4114,7 @@ class CvaMultiSelectAutocomplete {
|
|
|
4046
4114
|
isFormControl = true;
|
|
4047
4115
|
searchInputRef;
|
|
4048
4116
|
// Cái này là để gắn khi nó là FormControl trong 1 FormGroup
|
|
4049
|
-
formControl;
|
|
4117
|
+
formControl = null;
|
|
4050
4118
|
filteredOptions = [];
|
|
4051
4119
|
selectAllChecked = false;
|
|
4052
4120
|
labelCount = 1;
|
|
@@ -4077,6 +4145,9 @@ class CvaMultiSelectAutocomplete {
|
|
|
4077
4145
|
set selectedValue(val) {
|
|
4078
4146
|
// this.writeValue(val); // Đọc comment bên dưới matSelectionChange
|
|
4079
4147
|
}
|
|
4148
|
+
getFormControl() {
|
|
4149
|
+
return this.formControl;
|
|
4150
|
+
}
|
|
4080
4151
|
ngOnInit() {
|
|
4081
4152
|
this.callValidator();
|
|
4082
4153
|
}
|
|
@@ -4088,7 +4159,7 @@ class CvaMultiSelectAutocomplete {
|
|
|
4088
4159
|
if (ngControl && !this.formControl) {
|
|
4089
4160
|
// Nếu là NsSmartTable thì phải tự new FormControl còn không thì cứ hóng parent FormControl về ^^
|
|
4090
4161
|
if (this.isFormControl) {
|
|
4091
|
-
this.formControl = ngControl.control ? ngControl.control :
|
|
4162
|
+
this.formControl = ngControl.control ? ngControl.control : null;
|
|
4092
4163
|
}
|
|
4093
4164
|
else {
|
|
4094
4165
|
this.formControl = new FormControl();
|
|
@@ -4398,7 +4469,7 @@ class CvaMultiSelectAutocomplete {
|
|
|
4398
4469
|
<mat-icon matSuffix>expand_more</mat-icon>
|
|
4399
4470
|
<mat-hint *ngIf="!NsValidator.invalid(formControl)">{{ hint | translate }}</mat-hint>
|
|
4400
4471
|
<mat-hint style="color: red" *ngIf="NsValidator.invalid(formControl)">
|
|
4401
|
-
{{ NsValidator.
|
|
4472
|
+
{{ NsValidator.getErrorMessageV1(formControl, errorMessages).msg | translate: NsValidator.getErrorMessageV1(formControl, errorMessages).params }}
|
|
4402
4473
|
</mat-hint>
|
|
4403
4474
|
</mat-form-field>
|
|
4404
4475
|
<ng-container *ngIf="!isShowControl()">
|
|
@@ -4412,7 +4483,7 @@ class CvaMultiSelectAutocomplete {
|
|
|
4412
4483
|
</div>
|
|
4413
4484
|
</ng-container>
|
|
4414
4485
|
</div>
|
|
4415
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4$
|
|
4486
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4$1.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i6.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i4$1.MatLine, selector: "[mat-line], [matLine]" }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i9$1.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "directive", type: i9$1.MatSelectTrigger, selector: "mat-select-trigger" }, { kind: "directive", type: i10.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i10.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i10.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8$1.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i9.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
4416
4487
|
}
|
|
4417
4488
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaMultiSelectAutocomplete, decorators: [{
|
|
4418
4489
|
type: Component,
|
|
@@ -4495,7 +4566,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
4495
4566
|
<mat-icon matSuffix>expand_more</mat-icon>
|
|
4496
4567
|
<mat-hint *ngIf="!NsValidator.invalid(formControl)">{{ hint | translate }}</mat-hint>
|
|
4497
4568
|
<mat-hint style="color: red" *ngIf="NsValidator.invalid(formControl)">
|
|
4498
|
-
{{ NsValidator.
|
|
4569
|
+
{{ NsValidator.getErrorMessageV1(formControl, errorMessages).msg | translate: NsValidator.getErrorMessageV1(formControl, errorMessages).params }}
|
|
4499
4570
|
</mat-hint>
|
|
4500
4571
|
</mat-form-field>
|
|
4501
4572
|
<ng-container *ngIf="!isShowControl()">
|
|
@@ -4579,7 +4650,7 @@ class CvaLiveSearchingComponent {
|
|
|
4579
4650
|
isFormControl = true;
|
|
4580
4651
|
row;
|
|
4581
4652
|
columnDef;
|
|
4582
|
-
|
|
4653
|
+
formControl = null;
|
|
4583
4654
|
textControl = new FormControl('');
|
|
4584
4655
|
filteredOptions = [];
|
|
4585
4656
|
selected;
|
|
@@ -4597,6 +4668,9 @@ class CvaLiveSearchingComponent {
|
|
|
4597
4668
|
get NsValidator() {
|
|
4598
4669
|
return ValidatorService;
|
|
4599
4670
|
}
|
|
4671
|
+
getFormControl() {
|
|
4672
|
+
return this.formControl;
|
|
4673
|
+
}
|
|
4600
4674
|
ngOnInit() {
|
|
4601
4675
|
this.callValidator();
|
|
4602
4676
|
this.textValueChangeSubscribe();
|
|
@@ -4607,37 +4681,37 @@ class CvaLiveSearchingComponent {
|
|
|
4607
4681
|
callValidator() {
|
|
4608
4682
|
const ngControl = this.injector.get(NgControl);
|
|
4609
4683
|
// Nếu parent FormControl khởi tạo xong và formControl chưa có giá trị lưu
|
|
4610
|
-
if (ngControl && !this.
|
|
4684
|
+
if (ngControl && !this.formControl) {
|
|
4611
4685
|
// Nếu là NsSmartTable thì phải tự new FormControl còn không thì cứ hóng parent FormControl về ^^
|
|
4612
4686
|
if (this.isFormControl) {
|
|
4613
|
-
this.
|
|
4687
|
+
this.formControl = ngControl.control ? ngControl.control : null;
|
|
4614
4688
|
}
|
|
4615
4689
|
else {
|
|
4616
|
-
this.
|
|
4690
|
+
this.formControl = new FormControl();
|
|
4617
4691
|
}
|
|
4618
4692
|
// Hành động này gắn validator vào this.formControl
|
|
4619
4693
|
// - Nếu this.formControl là parent FormControl thì sẽ show error lên FormGroup
|
|
4620
4694
|
// - Nếu this.formControl là new FormControl thì sẽ quét QueryList để check {errors}
|
|
4621
|
-
if (this.
|
|
4622
|
-
if (this.
|
|
4623
|
-
this.
|
|
4695
|
+
if (this.formControl) {
|
|
4696
|
+
if (this.formControl.validator) {
|
|
4697
|
+
this.formControl.setValidators([...ValidatorService.generateNsAutocompleteValidators({
|
|
4624
4698
|
required: this.required,
|
|
4625
|
-
}), this.
|
|
4699
|
+
}), this.formControl.validator]);
|
|
4626
4700
|
}
|
|
4627
4701
|
else {
|
|
4628
|
-
this.
|
|
4702
|
+
this.formControl.setValidators([...ValidatorService.generateNsAutocompleteValidators({
|
|
4629
4703
|
required: this.required,
|
|
4630
4704
|
})]);
|
|
4631
4705
|
}
|
|
4632
4706
|
}
|
|
4633
4707
|
}
|
|
4634
|
-
if (this.
|
|
4708
|
+
if (this.formControl) {
|
|
4635
4709
|
// Nếu this.formControl thuộc NsSmartTable thì setValue lại
|
|
4636
4710
|
if (!this.isFormControl) {
|
|
4637
|
-
this.
|
|
4711
|
+
this.formControl.setValue(this.selected);
|
|
4638
4712
|
}
|
|
4639
4713
|
// Nếu là parent FormControl rồi thì kệ
|
|
4640
|
-
this.
|
|
4714
|
+
this.formControl.updateValueAndValidity();
|
|
4641
4715
|
}
|
|
4642
4716
|
}
|
|
4643
4717
|
propagateChange = (_) => {
|
|
@@ -4662,20 +4736,13 @@ class CvaLiveSearchingComponent {
|
|
|
4662
4736
|
*/
|
|
4663
4737
|
writeValue(obj) {
|
|
4664
4738
|
if (!obj || typeof obj !== 'string') {
|
|
4665
|
-
this.selected = {};
|
|
4666
4739
|
this.filteredOptions.length = 0;
|
|
4667
4740
|
this.filteredOptions = [];
|
|
4668
|
-
this.textControl.setValue('', { emitEvent: false });
|
|
4669
|
-
this.updateRowOrFormGroup();
|
|
4670
|
-
return;
|
|
4671
4741
|
}
|
|
4672
4742
|
const matched = this.filteredOptions.find(opt => {
|
|
4673
4743
|
return JSON.stringify(opt[this.displayKey] ?? '') === JSON.stringify(obj ?? '');
|
|
4674
4744
|
});
|
|
4675
|
-
if (!matched) {
|
|
4676
|
-
if (!this.searchFn) {
|
|
4677
|
-
return;
|
|
4678
|
-
}
|
|
4745
|
+
if (!matched && this.searchFn && !!obj) {
|
|
4679
4746
|
// Khi textValueChange chưa chạy không tìm thấy
|
|
4680
4747
|
this.searchFn(obj).subscribe(values => {
|
|
4681
4748
|
if (values && values.length > 0) {
|
|
@@ -4685,8 +4752,9 @@ class CvaLiveSearchingComponent {
|
|
|
4685
4752
|
});
|
|
4686
4753
|
return;
|
|
4687
4754
|
}
|
|
4688
|
-
this.selected = matched;
|
|
4689
|
-
this.textControl.setValue(matched[this.displayKey], { emitEvent: false });
|
|
4755
|
+
this.selected = matched ?? null;
|
|
4756
|
+
this.textControl.setValue(matched ? matched[this.displayKey] : '', { emitEvent: false });
|
|
4757
|
+
this.callValidator();
|
|
4690
4758
|
this.updateRowOrFormGroup();
|
|
4691
4759
|
}
|
|
4692
4760
|
onOptionSelect(displayValue) {
|
|
@@ -4715,22 +4783,22 @@ class CvaLiveSearchingComponent {
|
|
|
4715
4783
|
if (!this.isFormControl && this.row) {
|
|
4716
4784
|
for (const targetKey in this.mappingConfig) {
|
|
4717
4785
|
const sourceKey = this.mappingConfig[targetKey];
|
|
4718
|
-
this.row[targetKey] = this.selected[sourceKey];
|
|
4786
|
+
this.row[targetKey] = !!this.selected ? this.selected[sourceKey] : '';
|
|
4719
4787
|
}
|
|
4720
4788
|
}
|
|
4721
|
-
if (this.isFormControl && this.
|
|
4789
|
+
if (this.isFormControl && this.formControl?.parent) {
|
|
4722
4790
|
for (const targetKey in this.mappingConfig) {
|
|
4723
4791
|
const sourceKey = this.mappingConfig[targetKey];
|
|
4724
|
-
const formControl = this.
|
|
4792
|
+
const formControl = this.formControl.parent.get(targetKey);
|
|
4725
4793
|
if (formControl)
|
|
4726
|
-
formControl.setValue(this.selected[sourceKey]);
|
|
4794
|
+
formControl.setValue(!!this.selected ? this.selected[sourceKey] : '');
|
|
4727
4795
|
}
|
|
4728
4796
|
}
|
|
4729
|
-
this.propagateChange(this.selected[this.displayKey]);
|
|
4730
|
-
this.onChange.emit(this.selected[this.displayKey]);
|
|
4797
|
+
this.propagateChange(!!this.selected ? this.selected[this.displayKey] : '');
|
|
4798
|
+
this.onChange.emit(!!this.selected ? this.selected[this.displayKey] : '');
|
|
4731
4799
|
}
|
|
4732
4800
|
onClear() {
|
|
4733
|
-
this.writeValue(
|
|
4801
|
+
this.writeValue('');
|
|
4734
4802
|
}
|
|
4735
4803
|
isShowControl() {
|
|
4736
4804
|
return !this.disabled || (this.disabled && this.config && this.config.STYLE_DISABLE === 'CONTROL');
|
|
@@ -4738,23 +4806,23 @@ class CvaLiveSearchingComponent {
|
|
|
4738
4806
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaLiveSearchingComponent, deps: [{ token: i0.Injector }, { token: i1$2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
4739
4807
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.5", type: CvaLiveSearchingComponent, isStandalone: false, selector: "cva-live-searching", inputs: { label: "label", placeholder: "placeholder", hint: "hint", required: "required", disabled: "disabled", errorMessages: "errorMessages", isLabelOutside: "isLabelOutside", isFloatLabel: "isFloatLabel", percentOfLabelOutside: "percentOfLabelOutside", suffixFontAwesomeClass: "suffixFontAwesomeClass", displayKey: "displayKey", mappingConfig: "mappingConfig", searchFn: "searchFn", isFormControl: "isFormControl", row: "row", columnDef: "columnDef" }, outputs: { onChange: "onChange" }, ngImport: i0, template: `
|
|
4740
4808
|
<div class="cva-live-searching"
|
|
4741
|
-
[ngClass]="{'labelOutside':
|
|
4742
|
-
'float_label':
|
|
4809
|
+
[ngClass]="{'labelOutside': isLabelOutside,
|
|
4810
|
+
'float_label': isFloatLabel && !isLabelOutside}"
|
|
4743
4811
|
fxLayout="row" fxLayout.lt-sm="row wrap">
|
|
4744
4812
|
<mat-label *ngIf="isLabelOutside" class="label_width"
|
|
4745
4813
|
fxLayout="column" fxFlex="auto" fxFlex.lt-md="100%">
|
|
4746
4814
|
<div class="label">
|
|
4747
4815
|
<div>
|
|
4748
4816
|
{{ (label ? label : placeholder) | translate }}<span
|
|
4749
|
-
class="required-label-outside">{{
|
|
4817
|
+
class="required-label-outside">{{ required ? '*' : '' }}</span>
|
|
4750
4818
|
</div>
|
|
4751
4819
|
</div>
|
|
4752
4820
|
</mat-label>
|
|
4753
4821
|
<mat-form-field *ngIf="isShowControl()"
|
|
4754
|
-
appearance="outline" [floatLabel]="
|
|
4822
|
+
appearance="outline" [floatLabel]="isFloatLabel ? 'always' : 'auto'"
|
|
4755
4823
|
[hideRequiredMarker]="!isFloatLabel"
|
|
4756
4824
|
fxLayout="column" fxFlex="auto" fxFlex.lt-md="100%">
|
|
4757
|
-
<mat-label *ngIf="!isLabelOutside &&
|
|
4825
|
+
<mat-label *ngIf="!isLabelOutside && isFloatLabel">
|
|
4758
4826
|
{{ (label ? label : placeholder) | translate }}
|
|
4759
4827
|
</mat-label>
|
|
4760
4828
|
<input type="text"
|
|
@@ -4777,9 +4845,9 @@ class CvaLiveSearchingComponent {
|
|
|
4777
4845
|
</mat-option>
|
|
4778
4846
|
</mat-autocomplete>
|
|
4779
4847
|
<i *ngIf="!!suffixFontAwesomeClass" class="input-suffix {{suffixFontAwesomeClass}}" matSuffix></i>
|
|
4780
|
-
<mat-hint align="start" *ngIf="!NsValidator.invalid(
|
|
4781
|
-
<mat-hint style="color: red" align="start" *ngIf="NsValidator.invalid(
|
|
4782
|
-
{{ NsValidator.getErrorMessageV1(
|
|
4848
|
+
<mat-hint align="start" *ngIf="!NsValidator.invalid(formControl)">{{ hint | translate }}</mat-hint>
|
|
4849
|
+
<mat-hint style="color: red" align="start" *ngIf="NsValidator.invalid(formControl)">
|
|
4850
|
+
{{ NsValidator.getErrorMessageV1(formControl, errorMessages).msg | translate: NsValidator.getErrorMessageV1(formControl, errorMessages).params }}
|
|
4783
4851
|
</mat-hint>
|
|
4784
4852
|
</mat-form-field>
|
|
4785
4853
|
|
|
@@ -4794,7 +4862,7 @@ class CvaLiveSearchingComponent {
|
|
|
4794
4862
|
</div>
|
|
4795
4863
|
</ng-container>
|
|
4796
4864
|
</div>
|
|
4797
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3$2.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i4$
|
|
4865
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3$2.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i4$1.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i3$2.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i6.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i9$2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8$1.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i9.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
4798
4866
|
}
|
|
4799
4867
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaLiveSearchingComponent, decorators: [{
|
|
4800
4868
|
type: Component,
|
|
@@ -4803,23 +4871,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
4803
4871
|
standalone: false,
|
|
4804
4872
|
template: `
|
|
4805
4873
|
<div class="cva-live-searching"
|
|
4806
|
-
[ngClass]="{'labelOutside':
|
|
4807
|
-
'float_label':
|
|
4874
|
+
[ngClass]="{'labelOutside': isLabelOutside,
|
|
4875
|
+
'float_label': isFloatLabel && !isLabelOutside}"
|
|
4808
4876
|
fxLayout="row" fxLayout.lt-sm="row wrap">
|
|
4809
4877
|
<mat-label *ngIf="isLabelOutside" class="label_width"
|
|
4810
4878
|
fxLayout="column" fxFlex="auto" fxFlex.lt-md="100%">
|
|
4811
4879
|
<div class="label">
|
|
4812
4880
|
<div>
|
|
4813
4881
|
{{ (label ? label : placeholder) | translate }}<span
|
|
4814
|
-
class="required-label-outside">{{
|
|
4882
|
+
class="required-label-outside">{{ required ? '*' : '' }}</span>
|
|
4815
4883
|
</div>
|
|
4816
4884
|
</div>
|
|
4817
4885
|
</mat-label>
|
|
4818
4886
|
<mat-form-field *ngIf="isShowControl()"
|
|
4819
|
-
appearance="outline" [floatLabel]="
|
|
4887
|
+
appearance="outline" [floatLabel]="isFloatLabel ? 'always' : 'auto'"
|
|
4820
4888
|
[hideRequiredMarker]="!isFloatLabel"
|
|
4821
4889
|
fxLayout="column" fxFlex="auto" fxFlex.lt-md="100%">
|
|
4822
|
-
<mat-label *ngIf="!isLabelOutside &&
|
|
4890
|
+
<mat-label *ngIf="!isLabelOutside && isFloatLabel">
|
|
4823
4891
|
{{ (label ? label : placeholder) | translate }}
|
|
4824
4892
|
</mat-label>
|
|
4825
4893
|
<input type="text"
|
|
@@ -4842,9 +4910,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
4842
4910
|
</mat-option>
|
|
4843
4911
|
</mat-autocomplete>
|
|
4844
4912
|
<i *ngIf="!!suffixFontAwesomeClass" class="input-suffix {{suffixFontAwesomeClass}}" matSuffix></i>
|
|
4845
|
-
<mat-hint align="start" *ngIf="!NsValidator.invalid(
|
|
4846
|
-
<mat-hint style="color: red" align="start" *ngIf="NsValidator.invalid(
|
|
4847
|
-
{{ NsValidator.getErrorMessageV1(
|
|
4913
|
+
<mat-hint align="start" *ngIf="!NsValidator.invalid(formControl)">{{ hint | translate }}</mat-hint>
|
|
4914
|
+
<mat-hint style="color: red" align="start" *ngIf="NsValidator.invalid(formControl)">
|
|
4915
|
+
{{ NsValidator.getErrorMessageV1(formControl, errorMessages).msg | translate: NsValidator.getErrorMessageV1(formControl, errorMessages).params }}
|
|
4848
4916
|
</mat-hint>
|
|
4849
4917
|
</mat-form-field>
|
|
4850
4918
|
|
|
@@ -4905,6 +4973,7 @@ class CvaSmartTableComponent {
|
|
|
4905
4973
|
ref;
|
|
4906
4974
|
config;
|
|
4907
4975
|
injector;
|
|
4976
|
+
cellComponents;
|
|
4908
4977
|
moduleName = '';
|
|
4909
4978
|
columns = [];
|
|
4910
4979
|
buttons = [];
|
|
@@ -4927,6 +4996,7 @@ class CvaSmartTableComponent {
|
|
|
4927
4996
|
formControl;
|
|
4928
4997
|
selectAllChecked = false;
|
|
4929
4998
|
buttonColspan = 0;
|
|
4999
|
+
formatFunc = new NumericInputFormat();
|
|
4930
5000
|
constructor(ref, config, injector, ngControl) {
|
|
4931
5001
|
this.ref = ref;
|
|
4932
5002
|
this.config = config;
|
|
@@ -5066,27 +5136,6 @@ class CvaSmartTableComponent {
|
|
|
5066
5136
|
onDisplayFooter(footer, dataTable) {
|
|
5067
5137
|
return typeof (footer.display) === 'function' ? footer.display(dataTable) : !!footer.display;
|
|
5068
5138
|
}
|
|
5069
|
-
// //Cái khúc này về sau mà có cái loại validate nào mà ngoài thì mới enable validate cột sau
|
|
5070
|
-
// validate(control: AbstractControl): ValidationErrors | null {
|
|
5071
|
-
// let valid = null;
|
|
5072
|
-
//
|
|
5073
|
-
// if (this.value) {
|
|
5074
|
-
// for (const row of this.value) {
|
|
5075
|
-
// for (const column of this.columns) {
|
|
5076
|
-
// if (column.validate) {
|
|
5077
|
-
// valid = column.validate(row);
|
|
5078
|
-
// if (valid) {
|
|
5079
|
-
// break;
|
|
5080
|
-
// }
|
|
5081
|
-
// }
|
|
5082
|
-
// }
|
|
5083
|
-
// if (valid) {
|
|
5084
|
-
// break;
|
|
5085
|
-
// }
|
|
5086
|
-
// }
|
|
5087
|
-
// }
|
|
5088
|
-
// return valid;
|
|
5089
|
-
// }
|
|
5090
5139
|
callValidator() {
|
|
5091
5140
|
const ngControl = this.injector.get(NgControl);
|
|
5092
5141
|
if (ngControl && !this.formControl) {
|
|
@@ -5102,6 +5151,11 @@ class CvaSmartTableComponent {
|
|
|
5102
5151
|
minRow: this.minRow,
|
|
5103
5152
|
maxRow: this.maxRow,
|
|
5104
5153
|
}));
|
|
5154
|
+
this.formControl.statusChanges.subscribe(status => {
|
|
5155
|
+
if (this.formControl?.touched && this.formControl?.dirty) {
|
|
5156
|
+
this.markAllControlsAsDirty();
|
|
5157
|
+
}
|
|
5158
|
+
});
|
|
5105
5159
|
}
|
|
5106
5160
|
}
|
|
5107
5161
|
if (this.formControl) {
|
|
@@ -5125,29 +5179,6 @@ class CvaSmartTableComponent {
|
|
|
5125
5179
|
if (row.isChildRow) {
|
|
5126
5180
|
return;
|
|
5127
5181
|
}
|
|
5128
|
-
// default not expand
|
|
5129
|
-
// if (row.expanded) {
|
|
5130
|
-
// // remove the flag
|
|
5131
|
-
// row.expanded = false;
|
|
5132
|
-
//
|
|
5133
|
-
// // remove the child rows
|
|
5134
|
-
// let childrenDetected = false;
|
|
5135
|
-
// const length = this.datasource.data.length;
|
|
5136
|
-
// for (let index = 0; index < length; index++) {
|
|
5137
|
-
// if (childrenDetected && !this.datasource.data[index].isChildRow) {
|
|
5138
|
-
// break;
|
|
5139
|
-
// }
|
|
5140
|
-
//
|
|
5141
|
-
// if (index > i && this.datasource.data[index].isChildRow) {
|
|
5142
|
-
// this.datasource.data.splice(index, 1);
|
|
5143
|
-
// index--;
|
|
5144
|
-
// childrenDetected = true;
|
|
5145
|
-
// }
|
|
5146
|
-
// }
|
|
5147
|
-
//
|
|
5148
|
-
// this.matTable?.renderRows();
|
|
5149
|
-
// return;
|
|
5150
|
-
// }
|
|
5151
5182
|
// set expanded to true so we don't expand this row again
|
|
5152
5183
|
row.expanded = true;
|
|
5153
5184
|
row.parentRowClassIndex = parentRowClassIndex;
|
|
@@ -5165,15 +5196,26 @@ class CvaSmartTableComponent {
|
|
|
5165
5196
|
// rerender table
|
|
5166
5197
|
this.matTable?.renderRows();
|
|
5167
5198
|
}
|
|
5168
|
-
|
|
5199
|
+
getAlign(column) {
|
|
5169
5200
|
return column.align ? column.align : AlignEnum.RIGHT;
|
|
5170
5201
|
}
|
|
5171
5202
|
getHeaderButtonColspan() {
|
|
5172
5203
|
this.buttonColspan = TableService.getHeaderButtonColspan(this.buttons, this.datasource.data);
|
|
5173
5204
|
return this.buttonColspan;
|
|
5174
5205
|
}
|
|
5206
|
+
markAllControlsAsDirty() {
|
|
5207
|
+
if (this.cellComponents) {
|
|
5208
|
+
this.cellComponents.forEach(cell => {
|
|
5209
|
+
const control = cell.getFormControl();
|
|
5210
|
+
if (control) {
|
|
5211
|
+
control.markAsDirty();
|
|
5212
|
+
control.updateValueAndValidity();
|
|
5213
|
+
}
|
|
5214
|
+
});
|
|
5215
|
+
}
|
|
5216
|
+
}
|
|
5175
5217
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaSmartTableComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: InjectTokenNextSolutionsConfig }, { token: i0.Injector }, { token: i1$2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
5176
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.5", type: CvaSmartTableComponent, isStandalone: false, selector: "cva-smart-table", inputs: { moduleName: "moduleName", columns: "columns", buttons: "buttons", value: "value", minRow: "minRow", maxRow: "maxRow", errorMessages: "errorMessages", isFormControl: "isFormControl", isSticky: "isSticky", isStickyHeader: "isStickyHeader", isStickyFooter: "isStickyFooter", isExpandRowTable: "isExpandRowTable", expandRowProperty: "expandRowProperty" }, outputs: { clickAction: "clickAction", onChange: "onChange" }, viewQueries: [{ propertyName: "matTable", first: true, predicate: ["matTable"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
5218
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.5", type: CvaSmartTableComponent, isStandalone: false, selector: "cva-smart-table", inputs: { moduleName: "moduleName", columns: "columns", buttons: "buttons", value: "value", minRow: "minRow", maxRow: "maxRow", errorMessages: "errorMessages", isFormControl: "isFormControl", isSticky: "isSticky", isStickyHeader: "isStickyHeader", isStickyFooter: "isStickyFooter", isExpandRowTable: "isExpandRowTable", expandRowProperty: "expandRowProperty" }, outputs: { clickAction: "clickAction", onChange: "onChange" }, viewQueries: [{ propertyName: "matTable", first: true, predicate: ["matTable"], descendants: true }, { propertyName: "cellComponents", predicate: ["cellComponentRef"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
5177
5219
|
<div class="table-responsive"
|
|
5178
5220
|
[ngClass]="{'fixed_header': isSticky||isStickyHeader, 'fixed_footer': isSticky||isStickyFooter}">
|
|
5179
5221
|
<table mat-table [dataSource]="datasource" #matTable class="mat-elevation-z8 cva-smart-table">
|
|
@@ -5243,7 +5285,7 @@ class CvaSmartTableComponent {
|
|
|
5243
5285
|
class="{{TableService.getColumnClassName(column, result)}}"
|
|
5244
5286
|
fxLayout="row" [fxLayoutAlign]="TableService.alignCellContent(column)"
|
|
5245
5287
|
(click)="$event.stopPropagation()">
|
|
5246
|
-
<button mat-icon-button
|
|
5288
|
+
<button mat-icon-button type="button"
|
|
5247
5289
|
color="{{column.button.color}}"
|
|
5248
5290
|
[ngClass]="column.button.className"
|
|
5249
5291
|
(click)="onClick(column.button.click, result, i)"
|
|
@@ -5256,9 +5298,10 @@ class CvaSmartTableComponent {
|
|
|
5256
5298
|
</div>
|
|
5257
5299
|
</ng-container>
|
|
5258
5300
|
<cva-counter-input *ngSwitchCase="ColumnTypes.INPUT_COUNTER"
|
|
5301
|
+
#cellComponentRef
|
|
5259
5302
|
class="inputNumber" #nsCounterInput
|
|
5260
5303
|
[isFormControl]="false"
|
|
5261
|
-
[alignNumber]="
|
|
5304
|
+
[alignNumber]="getAlign(column)"
|
|
5262
5305
|
[disabled]="column.disabled ? column.disabled(result) : false"
|
|
5263
5306
|
[value]="result[column.columnDef]"
|
|
5264
5307
|
[required]="getRequired(column)"
|
|
@@ -5269,7 +5312,9 @@ class CvaSmartTableComponent {
|
|
|
5269
5312
|
(onChange)="onCellValueChange(result, column, $event);">
|
|
5270
5313
|
</cva-counter-input>
|
|
5271
5314
|
<cva-input *ngSwitchCase="ColumnTypes.INPUT"
|
|
5315
|
+
#cellComponentRef
|
|
5272
5316
|
[isFormControl]="false"
|
|
5317
|
+
[alignText]="getAlign(column)"
|
|
5273
5318
|
[disabled]="column.disabled ? column.disabled(result) : false"
|
|
5274
5319
|
[text]="result[column.columnDef]"
|
|
5275
5320
|
[minLength]="column.min ? column.min(result) : undefined"
|
|
@@ -5278,7 +5323,22 @@ class CvaSmartTableComponent {
|
|
|
5278
5323
|
[errorMessages]="getErrorMessageMap(column)"
|
|
5279
5324
|
(onChange)="onCellValueChange(result, column, $event);">
|
|
5280
5325
|
</cva-input>
|
|
5326
|
+
<cva-input *ngSwitchCase="ColumnTypes.INPUT_CURRENCY"
|
|
5327
|
+
#cellComponentRef
|
|
5328
|
+
[isFormControl]="false"
|
|
5329
|
+
[alignText]="getAlign(column)"
|
|
5330
|
+
[disabled]="column.disabled ? column.disabled(result) : false"
|
|
5331
|
+
[text]="result[column.columnDef]"
|
|
5332
|
+
[minLength]="column.min ? column.min(result) : undefined"
|
|
5333
|
+
[maxLength]="column.max ? column.max(result) : undefined"
|
|
5334
|
+
[required]="getRequired(column)"
|
|
5335
|
+
[errorMessages]="getErrorMessageMap(column)"
|
|
5336
|
+
(onChange)="onCellValueChange(result, column, $event);"
|
|
5337
|
+
[pattern]="getIsDecimal(column) ? '^\\d{0,15}(\\.\\d*)?$' : '^\\d{0,15}$'"
|
|
5338
|
+
[formatFunc]="formatFunc">
|
|
5339
|
+
</cva-input>
|
|
5281
5340
|
<cva-date-picker *ngSwitchCase="ColumnTypes.DATE_PICKER"
|
|
5341
|
+
#cellComponentRef
|
|
5282
5342
|
[value]="result[column.columnDef]"
|
|
5283
5343
|
[isFormControl]="false"
|
|
5284
5344
|
[minDate]="column.min ? column.min(result) : null"
|
|
@@ -5289,6 +5349,7 @@ class CvaSmartTableComponent {
|
|
|
5289
5349
|
(onChange)="onCellValueChange(result, column, $event);">
|
|
5290
5350
|
</cva-date-picker>
|
|
5291
5351
|
<cva-multi-select-autocomplete [isFormControl]="false"
|
|
5352
|
+
#cellComponentRef
|
|
5292
5353
|
*ngSwitchCase="ColumnTypes.MULTI_SELECT_AUTOCOMPLETE"
|
|
5293
5354
|
class="multiSelectAutocomplete"
|
|
5294
5355
|
[isTree]="column.isTree??false"
|
|
@@ -5311,6 +5372,7 @@ class CvaSmartTableComponent {
|
|
|
5311
5372
|
</mat-checkbox>
|
|
5312
5373
|
</div>
|
|
5313
5374
|
<cva-live-searching *ngSwitchCase="ColumnTypes.LIVE_SEARCHING"
|
|
5375
|
+
#cellComponentRef
|
|
5314
5376
|
[isFormControl]="false" [required]="getRequired(column)"
|
|
5315
5377
|
[row]="result" [columnDef]="column.columnDef"
|
|
5316
5378
|
[searchFn]="column.searchFn"
|
|
@@ -5331,7 +5393,7 @@ class CvaSmartTableComponent {
|
|
|
5331
5393
|
[attr.colspan]="buttonColspan">
|
|
5332
5394
|
<!-- [fxFlex]="getHeaderButtonWidth(i) + 'px' "-->
|
|
5333
5395
|
<ng-container *ngIf="TableService.getButtonHeader(button) as btnHeader">
|
|
5334
|
-
<button mat-icon-button
|
|
5396
|
+
<button mat-icon-button type="button"
|
|
5335
5397
|
class="{{button.className}}"
|
|
5336
5398
|
color="{{$any(btnHeader).color}}"
|
|
5337
5399
|
(click)="onClick($any(btnHeader).click, null, null)"
|
|
@@ -5357,7 +5419,7 @@ class CvaSmartTableComponent {
|
|
|
5357
5419
|
<td mat-cell [ngClass]="button.className"
|
|
5358
5420
|
*ngIf="TableService.onDisplayButtonCell(button, cell)"
|
|
5359
5421
|
(click)="$event.stopPropagation()">
|
|
5360
|
-
<button mat-icon-button
|
|
5422
|
+
<button mat-icon-button type="button"
|
|
5361
5423
|
color="{{button.color}}"
|
|
5362
5424
|
[ngClass]="button.className"
|
|
5363
5425
|
(click)="onClick(button.click, cell, i)"
|
|
@@ -5399,7 +5461,7 @@ class CvaSmartTableComponent {
|
|
|
5399
5461
|
</ng-container>
|
|
5400
5462
|
</table>
|
|
5401
5463
|
</div>
|
|
5402
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i4
|
|
5464
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: i5.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i5.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i5.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i5.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i5.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i5.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i5.MatFooterCellDef, selector: "[matFooterCellDef]" }, { kind: "directive", type: i5.MatFooterRowDef, selector: "[matFooterRowDef]", inputs: ["matFooterRowDef", "matFooterRowDefSticky"] }, { kind: "directive", type: i5.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i5.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "directive", type: i5.MatFooterCell, selector: "mat-footer-cell, td[mat-footer-cell]" }, { kind: "component", type: i5.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i5.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i5.MatFooterRow, selector: "mat-footer-row, tr[mat-footer-row]", exportAs: ["matFooterRow"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i1$4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8$1.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i9.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: CvaInputComponent, selector: "cva-input", inputs: ["label", "name", "placeholder", "hint", "required", "disabled", "text", "type", "pattern", "errorMessages", "multiline", "isLabelOutside", "isFloatLabel", "minLength", "maxLength", "alignText", "maxLengthDisplay", "percentOfLabelOutside", "suffixFontAwesomeClass", "patternFilter", "isFormControl", "formatFunc"], outputs: ["onChange"] }, { kind: "component", type: CvaCounterInputComponent, selector: "cva-counter-input", inputs: ["label", "placeholder", "suffixText", "hint", "value", "disabled", "required", "errorMessages", "min", "max", "error", "isDecimal", "isLabelOutside", "isFloatLabel", "percentOfLabelOutside", "alignNumber", "isFormControl"], outputs: ["onChange", "onEnter"] }, { kind: "component", type: CvaDatePickerComponent, selector: "cva-date-picker", inputs: ["label", "placeholder", "value", "disabled", "required", "minDate", "maxDate", "errorMessages", "isLabelOutside", "isFloatLabel", "percentOfLabelOutside", "isFormControl"], outputs: ["onChange"] }, { kind: "component", type: CvaMultiSelectAutocomplete, selector: "cva-multi-select-autocomplete", inputs: ["placeholder", "label", "hint", "value", "options", "disabled", "errorMessages", "multiple", "required", "isTree", "treeSymbol", "sizeOfItemsInListByPixels", "isLabelOutside", "isFloatLabel", "percentOfLabelOutside", "isFormControl"], outputs: ["selectionChange", "selectedOptionDataChange"] }, { kind: "component", type: CvaLiveSearchingComponent, selector: "cva-live-searching", inputs: ["label", "placeholder", "hint", "required", "disabled", "errorMessages", "isLabelOutside", "isFloatLabel", "percentOfLabelOutside", "suffixFontAwesomeClass", "displayKey", "mappingConfig", "searchFn", "isFormControl", "row", "columnDef"], outputs: ["onChange"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: SecureImgPipe, name: "secure" }] });
|
|
5403
5465
|
}
|
|
5404
5466
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaSmartTableComponent, decorators: [{
|
|
5405
5467
|
type: Component,
|
|
@@ -5476,7 +5538,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
5476
5538
|
class="{{TableService.getColumnClassName(column, result)}}"
|
|
5477
5539
|
fxLayout="row" [fxLayoutAlign]="TableService.alignCellContent(column)"
|
|
5478
5540
|
(click)="$event.stopPropagation()">
|
|
5479
|
-
<button mat-icon-button
|
|
5541
|
+
<button mat-icon-button type="button"
|
|
5480
5542
|
color="{{column.button.color}}"
|
|
5481
5543
|
[ngClass]="column.button.className"
|
|
5482
5544
|
(click)="onClick(column.button.click, result, i)"
|
|
@@ -5489,9 +5551,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
5489
5551
|
</div>
|
|
5490
5552
|
</ng-container>
|
|
5491
5553
|
<cva-counter-input *ngSwitchCase="ColumnTypes.INPUT_COUNTER"
|
|
5554
|
+
#cellComponentRef
|
|
5492
5555
|
class="inputNumber" #nsCounterInput
|
|
5493
5556
|
[isFormControl]="false"
|
|
5494
|
-
[alignNumber]="
|
|
5557
|
+
[alignNumber]="getAlign(column)"
|
|
5495
5558
|
[disabled]="column.disabled ? column.disabled(result) : false"
|
|
5496
5559
|
[value]="result[column.columnDef]"
|
|
5497
5560
|
[required]="getRequired(column)"
|
|
@@ -5502,7 +5565,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
5502
5565
|
(onChange)="onCellValueChange(result, column, $event);">
|
|
5503
5566
|
</cva-counter-input>
|
|
5504
5567
|
<cva-input *ngSwitchCase="ColumnTypes.INPUT"
|
|
5568
|
+
#cellComponentRef
|
|
5505
5569
|
[isFormControl]="false"
|
|
5570
|
+
[alignText]="getAlign(column)"
|
|
5506
5571
|
[disabled]="column.disabled ? column.disabled(result) : false"
|
|
5507
5572
|
[text]="result[column.columnDef]"
|
|
5508
5573
|
[minLength]="column.min ? column.min(result) : undefined"
|
|
@@ -5511,7 +5576,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
5511
5576
|
[errorMessages]="getErrorMessageMap(column)"
|
|
5512
5577
|
(onChange)="onCellValueChange(result, column, $event);">
|
|
5513
5578
|
</cva-input>
|
|
5579
|
+
<cva-input *ngSwitchCase="ColumnTypes.INPUT_CURRENCY"
|
|
5580
|
+
#cellComponentRef
|
|
5581
|
+
[isFormControl]="false"
|
|
5582
|
+
[alignText]="getAlign(column)"
|
|
5583
|
+
[disabled]="column.disabled ? column.disabled(result) : false"
|
|
5584
|
+
[text]="result[column.columnDef]"
|
|
5585
|
+
[minLength]="column.min ? column.min(result) : undefined"
|
|
5586
|
+
[maxLength]="column.max ? column.max(result) : undefined"
|
|
5587
|
+
[required]="getRequired(column)"
|
|
5588
|
+
[errorMessages]="getErrorMessageMap(column)"
|
|
5589
|
+
(onChange)="onCellValueChange(result, column, $event);"
|
|
5590
|
+
[pattern]="getIsDecimal(column) ? '^\\d{0,15}(\\.\\d*)?$' : '^\\d{0,15}$'"
|
|
5591
|
+
[formatFunc]="formatFunc">
|
|
5592
|
+
</cva-input>
|
|
5514
5593
|
<cva-date-picker *ngSwitchCase="ColumnTypes.DATE_PICKER"
|
|
5594
|
+
#cellComponentRef
|
|
5515
5595
|
[value]="result[column.columnDef]"
|
|
5516
5596
|
[isFormControl]="false"
|
|
5517
5597
|
[minDate]="column.min ? column.min(result) : null"
|
|
@@ -5522,6 +5602,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
5522
5602
|
(onChange)="onCellValueChange(result, column, $event);">
|
|
5523
5603
|
</cva-date-picker>
|
|
5524
5604
|
<cva-multi-select-autocomplete [isFormControl]="false"
|
|
5605
|
+
#cellComponentRef
|
|
5525
5606
|
*ngSwitchCase="ColumnTypes.MULTI_SELECT_AUTOCOMPLETE"
|
|
5526
5607
|
class="multiSelectAutocomplete"
|
|
5527
5608
|
[isTree]="column.isTree??false"
|
|
@@ -5544,6 +5625,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
5544
5625
|
</mat-checkbox>
|
|
5545
5626
|
</div>
|
|
5546
5627
|
<cva-live-searching *ngSwitchCase="ColumnTypes.LIVE_SEARCHING"
|
|
5628
|
+
#cellComponentRef
|
|
5547
5629
|
[isFormControl]="false" [required]="getRequired(column)"
|
|
5548
5630
|
[row]="result" [columnDef]="column.columnDef"
|
|
5549
5631
|
[searchFn]="column.searchFn"
|
|
@@ -5564,7 +5646,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
5564
5646
|
[attr.colspan]="buttonColspan">
|
|
5565
5647
|
<!-- [fxFlex]="getHeaderButtonWidth(i) + 'px' "-->
|
|
5566
5648
|
<ng-container *ngIf="TableService.getButtonHeader(button) as btnHeader">
|
|
5567
|
-
<button mat-icon-button
|
|
5649
|
+
<button mat-icon-button type="button"
|
|
5568
5650
|
class="{{button.className}}"
|
|
5569
5651
|
color="{{$any(btnHeader).color}}"
|
|
5570
5652
|
(click)="onClick($any(btnHeader).click, null, null)"
|
|
@@ -5590,7 +5672,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
5590
5672
|
<td mat-cell [ngClass]="button.className"
|
|
5591
5673
|
*ngIf="TableService.onDisplayButtonCell(button, cell)"
|
|
5592
5674
|
(click)="$event.stopPropagation()">
|
|
5593
|
-
<button mat-icon-button
|
|
5675
|
+
<button mat-icon-button type="button"
|
|
5594
5676
|
color="{{button.color}}"
|
|
5595
5677
|
[ngClass]="button.className"
|
|
5596
5678
|
(click)="onClick(button.click, cell, i)"
|
|
@@ -5641,7 +5723,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
5641
5723
|
type: Self
|
|
5642
5724
|
}, {
|
|
5643
5725
|
type: Optional
|
|
5644
|
-
}] }], propDecorators: {
|
|
5726
|
+
}] }], propDecorators: { cellComponents: [{
|
|
5727
|
+
type: ViewChildren,
|
|
5728
|
+
args: ['cellComponentRef']
|
|
5729
|
+
}], moduleName: [{
|
|
5645
5730
|
type: Input
|
|
5646
5731
|
}], columns: [{
|
|
5647
5732
|
type: Input
|
|
@@ -5714,8 +5799,9 @@ class CvaRangeDatePickerComponent {
|
|
|
5714
5799
|
// config: NiceComponentLibraryConfig;
|
|
5715
5800
|
// Chỉ bằng false khi trong NsSmartTable thôi @@
|
|
5716
5801
|
isFormControl = true;
|
|
5717
|
-
formControl;
|
|
5802
|
+
formControl = null;
|
|
5718
5803
|
defaultFromDate; // lưu giá trị khởi tạo ban đầu khi truyền từ bên ngoài vào
|
|
5804
|
+
picker;
|
|
5719
5805
|
constructor(dateServiceUtil, ngControl, injector) {
|
|
5720
5806
|
this.dateServiceUtil = dateServiceUtil;
|
|
5721
5807
|
this.injector = injector;
|
|
@@ -5753,6 +5839,9 @@ class CvaRangeDatePickerComponent {
|
|
|
5753
5839
|
this.value.toDate = val;
|
|
5754
5840
|
this.writeValue(this.value);
|
|
5755
5841
|
}
|
|
5842
|
+
getFormControl() {
|
|
5843
|
+
return this.formControl;
|
|
5844
|
+
}
|
|
5756
5845
|
ngOnInit() {
|
|
5757
5846
|
this.callValidator();
|
|
5758
5847
|
}
|
|
@@ -5798,7 +5887,7 @@ class CvaRangeDatePickerComponent {
|
|
|
5798
5887
|
if (ngControl && !this.formControl) {
|
|
5799
5888
|
// Nếu là NsSmartTable thì phải tự new FormControl còn không thì cứ hóng parent FormControl về ^^
|
|
5800
5889
|
if (this.isFormControl) {
|
|
5801
|
-
this.formControl = ngControl.control ? ngControl.control :
|
|
5890
|
+
this.formControl = ngControl.control ? ngControl.control : null;
|
|
5802
5891
|
if (this.formControl && !this.formControl.value) {
|
|
5803
5892
|
this.formControl.setValue(this.value);
|
|
5804
5893
|
}
|
|
@@ -5926,6 +6015,12 @@ class CvaRangeDatePickerComponent {
|
|
|
5926
6015
|
this.onOpenPicker.emit(picker);
|
|
5927
6016
|
}
|
|
5928
6017
|
}
|
|
6018
|
+
openRangePicker(event) {
|
|
6019
|
+
if (!this.getDisabled(this.disabledAll) && this.picker) {
|
|
6020
|
+
event.stopPropagation();
|
|
6021
|
+
this.picker.open();
|
|
6022
|
+
}
|
|
6023
|
+
}
|
|
5929
6024
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaRangeDatePickerComponent, deps: [{ token: DateUtilService }, { token: i1$2.NgControl, optional: true, self: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
5930
6025
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.5", type: CvaRangeDatePickerComponent, isStandalone: false, selector: "cva-range-date-picker", inputs: { label: "label", placeholderFromDate: "placeholderFromDate", placeholderToDate: "placeholderToDate", disabledAll: "disabledAll", disabledFromDate: "disabledFromDate", value: "value", requiredFromDate: "requiredFromDate", requiredToDate: "requiredToDate", minDate: "minDate", maxDate: "maxDate", errorMessages: "errorMessages", isLabelOutside: "isLabelOutside", isFloatLabel: "isFloatLabel", percentOfLabelOutside: "percentOfLabelOutside", fromDateControlName: "fromDateControlName", toDateControlName: "toDateControlName", isFormControl: "isFormControl" }, outputs: { onChange: "onChange", onOpenPicker: "onOpenPicker" }, providers: [
|
|
5931
6026
|
{ provide: DateAdapter, useClass: NsDateAdapter },
|
|
@@ -5933,7 +6028,7 @@ class CvaRangeDatePickerComponent {
|
|
|
5933
6028
|
provide: MAT_DATE_FORMATS,
|
|
5934
6029
|
useValue: APP_DATE_FORMATS,
|
|
5935
6030
|
},
|
|
5936
|
-
], ngImport: i0, template: `
|
|
6031
|
+
], viewQueries: [{ propertyName: "picker", first: true, predicate: ["picker"], descendants: true }], ngImport: i0, template: `
|
|
5937
6032
|
<div class="cva-range-date-picker"
|
|
5938
6033
|
[ngClass]="{'labelOutside': isLabelOutside, 'float_label': isFloatLabel && !isLabelOutside}"
|
|
5939
6034
|
fxLayout="row" fxLayout.lt-sm="row wrap">
|
|
@@ -5958,11 +6053,13 @@ class CvaRangeDatePickerComponent {
|
|
|
5958
6053
|
<input matStartDate
|
|
5959
6054
|
[(ngModel)]="fromDateValue"
|
|
5960
6055
|
readonly="readonly"
|
|
5961
|
-
[placeholder]="placeholderFromDate|translate"
|
|
6056
|
+
[placeholder]="placeholderFromDate|translate"
|
|
6057
|
+
(click)="openRangePicker($event)">
|
|
5962
6058
|
<input matEndDate
|
|
5963
6059
|
[(ngModel)]="toDateValue"
|
|
5964
6060
|
readOnly="true"
|
|
5965
|
-
[placeholder]="placeholderToDate|translate"
|
|
6061
|
+
[placeholder]="placeholderToDate|translate"
|
|
6062
|
+
(click)="openRangePicker($event)">
|
|
5966
6063
|
</mat-date-range-input>
|
|
5967
6064
|
|
|
5968
6065
|
<mat-datepicker-toggle matPrefix [for]="picker"
|
|
@@ -5978,11 +6075,11 @@ class CvaRangeDatePickerComponent {
|
|
|
5978
6075
|
|
|
5979
6076
|
<mat-date-range-picker #picker (opened)="openPicker(picker)"></mat-date-range-picker>
|
|
5980
6077
|
<mat-hint style="color: red" *ngIf="NsValiator.invalid(formControl)">
|
|
5981
|
-
{{ NsValiator.
|
|
6078
|
+
{{ NsValiator.getErrorMessageV1(formControl, errorMessages).msg | translate: NsValiator.getErrorMessageV1(formControl, errorMessages).params }}
|
|
5982
6079
|
</mat-hint>
|
|
5983
6080
|
</mat-form-field>
|
|
5984
6081
|
</div>
|
|
5985
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i5$
|
|
6082
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i5$1.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i5$1.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i5$1.MatStartDate, selector: "input[matStartDate]", outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i5$1.MatEndDate, selector: "input[matEndDate]", outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i5$1.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i6.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i6.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8$1.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i9.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
5986
6083
|
}
|
|
5987
6084
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaRangeDatePickerComponent, decorators: [{
|
|
5988
6085
|
type: Component,
|
|
@@ -6014,11 +6111,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
6014
6111
|
<input matStartDate
|
|
6015
6112
|
[(ngModel)]="fromDateValue"
|
|
6016
6113
|
readonly="readonly"
|
|
6017
|
-
[placeholder]="placeholderFromDate|translate"
|
|
6114
|
+
[placeholder]="placeholderFromDate|translate"
|
|
6115
|
+
(click)="openRangePicker($event)">
|
|
6018
6116
|
<input matEndDate
|
|
6019
6117
|
[(ngModel)]="toDateValue"
|
|
6020
6118
|
readOnly="true"
|
|
6021
|
-
[placeholder]="placeholderToDate|translate"
|
|
6119
|
+
[placeholder]="placeholderToDate|translate"
|
|
6120
|
+
(click)="openRangePicker($event)">
|
|
6022
6121
|
</mat-date-range-input>
|
|
6023
6122
|
|
|
6024
6123
|
<mat-datepicker-toggle matPrefix [for]="picker"
|
|
@@ -6034,7 +6133,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
6034
6133
|
|
|
6035
6134
|
<mat-date-range-picker #picker (opened)="openPicker(picker)"></mat-date-range-picker>
|
|
6036
6135
|
<mat-hint style="color: red" *ngIf="NsValiator.invalid(formControl)">
|
|
6037
|
-
{{ NsValiator.
|
|
6136
|
+
{{ NsValiator.getErrorMessageV1(formControl, errorMessages).msg | translate: NsValiator.getErrorMessageV1(formControl, errorMessages).params }}
|
|
6038
6137
|
</mat-hint>
|
|
6039
6138
|
</mat-form-field>
|
|
6040
6139
|
</div>
|
|
@@ -6089,6 +6188,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
6089
6188
|
type: Input
|
|
6090
6189
|
}], isFormControl: [{
|
|
6091
6190
|
type: Input
|
|
6191
|
+
}], picker: [{
|
|
6192
|
+
type: ViewChild,
|
|
6193
|
+
args: ['picker']
|
|
6092
6194
|
}] } });
|
|
6093
6195
|
|
|
6094
6196
|
class DragDropDirective {
|
|
@@ -6280,7 +6382,7 @@ class CvaMultiUploadComponent {
|
|
|
6280
6382
|
<mat-error *ngIf="typeError!==null">{{ typeError + ' ' + ('common.is.not-accept' | translate) }}</mat-error>
|
|
6281
6383
|
</div>
|
|
6282
6384
|
</div>
|
|
6283
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3$3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i3$3.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i3$3.MatCardContent, selector: "mat-card-content" }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: DragDropDirective, selector: "[appDragDrop]", outputs: ["onFileDropped"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
6385
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3$3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i3$3.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i3$3.MatCardContent, selector: "mat-card-content" }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8$1.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: DragDropDirective, selector: "[appDragDrop]", outputs: ["onFileDropped"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
6284
6386
|
}
|
|
6285
6387
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaMultiUploadComponent, decorators: [{
|
|
6286
6388
|
type: Component,
|
|
@@ -6697,7 +6799,7 @@ class CvaUploadFileComponent {
|
|
|
6697
6799
|
<mat-error *ngIf="isRectangleError">{{ ('common.error.image.rectangle' | translate) }}</mat-error>
|
|
6698
6800
|
</div>
|
|
6699
6801
|
</div>
|
|
6700
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3$3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i3$3.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i3$3.MatCardContent, selector: "mat-card-content" }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i8.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i9.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "directive", type: DragDropDirective, selector: "[appDragDrop]", outputs: ["onFileDropped"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: SecureImgPipe, name: "secure" }] });
|
|
6802
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3$3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i3$3.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i3$3.MatCardContent, selector: "mat-card-content" }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8$1.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i9.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "directive", type: DragDropDirective, selector: "[appDragDrop]", outputs: ["onFileDropped"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: SecureImgPipe, name: "secure" }] });
|
|
6701
6803
|
}
|
|
6702
6804
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaUploadFileComponent, decorators: [{
|
|
6703
6805
|
type: Component,
|
|
@@ -6883,7 +6985,7 @@ class CvaMultiUploadImgComponent {
|
|
|
6883
6985
|
></cva-upload-file>
|
|
6884
6986
|
</ng-container>
|
|
6885
6987
|
</div>
|
|
6886
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i8.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "component", type: CvaUploadFileComponent, selector: "cva-upload-file", inputs: ["files", "maxSize", "height", "width", "isSquareImg", "isRectangleImg", "accept", "label", "placeholder", "required", "disabled", "percentOfLabelOutside", "value", "defaultUrl"], outputs: ["onFileChange", "onFileDelete"] }] });
|
|
6988
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "component", type: CvaUploadFileComponent, selector: "cva-upload-file", inputs: ["files", "maxSize", "height", "width", "isSquareImg", "isRectangleImg", "accept", "label", "placeholder", "required", "disabled", "percentOfLabelOutside", "value", "defaultUrl"], outputs: ["onFileChange", "onFileDelete"] }] });
|
|
6887
6989
|
}
|
|
6888
6990
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaMultiUploadImgComponent, decorators: [{
|
|
6889
6991
|
type: Component,
|
|
@@ -7252,7 +7354,7 @@ class CvaTreeComponent {
|
|
|
7252
7354
|
</mat-tree>
|
|
7253
7355
|
</div>
|
|
7254
7356
|
</div>
|
|
7255
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8$
|
|
7357
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i6$1.MatNestedTreeNode, selector: "mat-nested-tree-node", inputs: ["matNestedTreeNode", "disabled", "tabIndex"], outputs: ["activation", "expandedChange"], exportAs: ["matNestedTreeNode"] }, { kind: "directive", type: i6$1.MatTreeNodeDef, selector: "[matTreeNodeDef]", inputs: ["matTreeNodeDefWhen", "matTreeNode"] }, { kind: "directive", type: i6$1.MatTreeNodeToggle, selector: "[matTreeNodeToggle]", inputs: ["matTreeNodeToggleRecursive"] }, { kind: "component", type: i6$1.MatTree, selector: "mat-tree", exportAs: ["matTree"] }, { kind: "directive", type: i6$1.MatTreeNode, selector: "mat-tree-node", inputs: ["tabIndex", "disabled"], outputs: ["activation", "expandedChange"], exportAs: ["matTreeNode"] }, { kind: "directive", type: i6$1.MatTreeNodeOutlet, selector: "[matTreeNodeOutlet]" }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8$1.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i9.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: CvaMultiSelectAutocomplete, selector: "cva-multi-select-autocomplete", inputs: ["placeholder", "label", "hint", "value", "options", "disabled", "errorMessages", "multiple", "required", "isTree", "treeSymbol", "sizeOfItemsInListByPixels", "isLabelOutside", "isFloatLabel", "percentOfLabelOutside", "isFormControl"], outputs: ["selectionChange", "selectedOptionDataChange"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
7256
7358
|
}
|
|
7257
7359
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaTreeComponent, decorators: [{
|
|
7258
7360
|
type: Component,
|
|
@@ -7473,7 +7575,7 @@ class CvaRadiobuttonComponent {
|
|
|
7473
7575
|
<mat-hint align="start" *ngIf="NsValidator.invalid(control)">{{NsValidator.getErrorMessage(control, errorMessages) | translate}}</mat-hint>
|
|
7474
7576
|
</div>
|
|
7475
7577
|
</div>
|
|
7476
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$
|
|
7578
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$2.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i4$2.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8$1.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
7477
7579
|
}
|
|
7478
7580
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaRadiobuttonComponent, decorators: [{
|
|
7479
7581
|
type: Component,
|
|
@@ -7646,7 +7748,7 @@ class CvaFlatTreeNodeLeftComponent {
|
|
|
7646
7748
|
</mat-checkbox>
|
|
7647
7749
|
</ng-container>
|
|
7648
7750
|
</ng-container>
|
|
7649
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i4
|
|
7751
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i8$1.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }] });
|
|
7650
7752
|
}
|
|
7651
7753
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaFlatTreeNodeLeftComponent, decorators: [{
|
|
7652
7754
|
type: Component,
|
|
@@ -7769,7 +7871,7 @@ class CvaFlatTreeNodeRightComponent {
|
|
|
7769
7871
|
</div>
|
|
7770
7872
|
</ng-container>
|
|
7771
7873
|
</ng-container>
|
|
7772
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: i8.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }] });
|
|
7874
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8$1.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }] });
|
|
7773
7875
|
}
|
|
7774
7876
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaFlatTreeNodeRightComponent, decorators: [{
|
|
7775
7877
|
type: Component,
|
|
@@ -8500,7 +8602,7 @@ class CvaFlatTreeComponent {
|
|
|
8500
8602
|
</mat-hint>
|
|
8501
8603
|
</div>
|
|
8502
8604
|
</div>
|
|
8503
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type:
|
|
8605
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1$2.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$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i6$2.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: i10.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i10.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i10.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8$1.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i9.DefaultStyleDirective, selector: " [ngStyle], [ngStyle.xs], [ngStyle.sm], [ngStyle.md], [ngStyle.lg], [ngStyle.xl], [ngStyle.lt-sm], [ngStyle.lt-md], [ngStyle.lt-lg], [ngStyle.lt-xl], [ngStyle.gt-xs], [ngStyle.gt-sm], [ngStyle.gt-md], [ngStyle.gt-lg]", inputs: ["ngStyle", "ngStyle.xs", "ngStyle.sm", "ngStyle.md", "ngStyle.lg", "ngStyle.xl", "ngStyle.lt-sm", "ngStyle.lt-md", "ngStyle.lt-lg", "ngStyle.lt-xl", "ngStyle.gt-xs", "ngStyle.gt-sm", "ngStyle.gt-md", "ngStyle.gt-lg"] }, { kind: "component", type: CvaFlatTreeNodeLeftComponent, selector: "cva-flat-tree-node-left", inputs: ["treeControl", "isHideCheckbox", "node", "nodeClicked"], outputs: ["toggle", "onParentNodeClick", "onLeafNodeClick", "ngModelParentChange", "ngModelLeafChange"] }, { kind: "component", type: CvaFlatTreeNodeRightComponent, selector: "cva-flat-tree-node-right", inputs: ["treeControl", "node", "isView"], outputs: ["toggle", "deSelectLeafNode", "deSelectParentNode"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
8504
8606
|
}
|
|
8505
8607
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaFlatTreeComponent, decorators: [{
|
|
8506
8608
|
type: Component,
|
|
@@ -9043,7 +9145,7 @@ class CvaQuillEditorComponent {
|
|
|
9043
9145
|
</mat-hint>
|
|
9044
9146
|
</div>
|
|
9045
9147
|
</div>
|
|
9046
|
-
`, isInline: true, styles: [".cva-quill-editor{margin-bottom:1rem}.cva-quill-editor .required-label-outside{color:red}.cva-quill-editor .ql-container.ql-snow{height:100px;overflow-y:auto}.cva-quill-editor #counter{border:1px solid #ccc;border-width:0px 1px 1px 1px;color:#aaa;padding:5px 15px;text-align:right}.cva-quill-editor quill-editor{margin-bottom:0!important;word-break:break-word}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "component", type: i4$
|
|
9148
|
+
`, isInline: true, styles: [".cva-quill-editor{margin-bottom:1rem}.cva-quill-editor .required-label-outside{color:red}.cva-quill-editor .ql-container.ql-snow{height:100px;overflow-y:auto}.cva-quill-editor #counter{border:1px solid #ccc;border-width:0px 1px 1px 1px;color:#aaa;padding:5px 15px;text-align:right}.cva-quill-editor quill-editor{margin-bottom:0!important;word-break:break-word}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "component", type: i4$3.QuillEditorComponent, selector: "quill-editor" }, { kind: "directive", type: i8$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i8$1.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i9.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "directive", type: i9.DefaultStyleDirective, selector: " [ngStyle], [ngStyle.xs], [ngStyle.sm], [ngStyle.md], [ngStyle.lg], [ngStyle.xl], [ngStyle.lt-sm], [ngStyle.lt-md], [ngStyle.lt-lg], [ngStyle.lt-xl], [ngStyle.gt-xs], [ngStyle.gt-sm], [ngStyle.gt-md], [ngStyle.gt-lg]", inputs: ["ngStyle", "ngStyle.xs", "ngStyle.sm", "ngStyle.md", "ngStyle.lg", "ngStyle.xl", "ngStyle.lt-sm", "ngStyle.lt-md", "ngStyle.lt-lg", "ngStyle.lt-xl", "ngStyle.gt-xs", "ngStyle.gt-sm", "ngStyle.gt-md", "ngStyle.gt-lg"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None });
|
|
9047
9149
|
}
|
|
9048
9150
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImport: i0, type: CvaQuillEditorComponent, decorators: [{
|
|
9049
9151
|
type: Component,
|
|
@@ -9472,7 +9574,7 @@ class NiceComponentLibraryModule {
|
|
|
9472
9574
|
CvaLiveSearchingComponent], imports: [CommonModule,
|
|
9473
9575
|
FormsModule,
|
|
9474
9576
|
ReactiveFormsModule,
|
|
9475
|
-
AngularMaterialModule, i1$4.RouterModule, i1.TranslateModule, i4$
|
|
9577
|
+
AngularMaterialModule, i1$4.RouterModule, i1.TranslateModule, i4$3.QuillModule, FlexLayoutModule], exports: [CvaTableComponent,
|
|
9476
9578
|
CvaSmartTableComponent,
|
|
9477
9579
|
CvaInputComponent,
|
|
9478
9580
|
CvaCounterInputComponent,
|
|
@@ -9598,5 +9700,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.5", ngImpor
|
|
|
9598
9700
|
* Generated bundle index. Do not edit.
|
|
9599
9701
|
*/
|
|
9600
9702
|
|
|
9601
|
-
export { ActionTypeEnum, AlignEnum, ApiService, AuthoritiesResolverService, AuthoritiesService, Authority, BaseAddEditComponent, BaseModel, BaseSearchComponent, BaseStatusEnum, BaseTableComponent, BreadCrumbModel, ButtonClickEvent, ButtonModel, CheckboxModel, ColumnModel, ColumnTypeEnum, CustomDialogDataConfigModel, CvaBreadcrumbComponent, CvaCounterInputComponent, CvaCustomDialogComponent, CvaDatePickerComponent, CvaDialogImportFileComponent, CvaFlatTreeComponent, CvaFlatTreeNodeLeftComponent, CvaFlatTreeNodeRightComponent, CvaInputComponent, CvaLiveSearchingComponent, CvaLoaderComponent, CvaMultiSelectAutocomplete, CvaMultiUploadComponent, CvaMultiUploadImgComponent, CvaQuillEditorComponent, CvaRadiobuttonComponent, CvaRangeDatePickerComponent, CvaSmartTableComponent, CvaTableComponent, CvaTreeComponent, CvaUploadFileComponent, DateUtilService, DialogImportFileConfigModel, DialogTypeEnum, DragDropDirective, FileTypeEnum, FlatTreeConfigModel, FlatTreeModel, FlatTreeNodeModel, FormStateService, FormatInputDirective, IconTypeEnum, InjectTokenNextSolutionsConfig, JsogHttpInterceptor, LoaderInterceptor, LoaderService, MenuModel, MultiTranslateHttpLoader, NavigatorModel, NiceComponentLibraryModule, OAuth2AuthenticationDto, PatternDirective, PermissionModel, Principal, RangeDatePickerModel, RoleModel, SecureImgPipe, SelectModel, SingletonTranslateService, StylePaginatorDirective, TableFooterModel, TablePagingRequestModel, TablePagingResponseModel, TableService, UIState, UploadModel, UtilsService, ValidatorService };
|
|
9703
|
+
export { ActionTypeEnum, AlignEnum, ApiService, AuthoritiesResolverService, AuthoritiesService, Authority, BaseAddEditComponent, BaseModel, BaseSearchComponent, BaseStatusEnum, BaseTableComponent, BreadCrumbModel, ButtonClickEvent, ButtonModel, CheckboxModel, ColumnModel, ColumnTypeEnum, CustomDialogDataConfigModel, CvaBreadcrumbComponent, CvaCounterInputComponent, CvaCustomDialogComponent, CvaDatePickerComponent, CvaDialogImportFileComponent, CvaFlatTreeComponent, CvaFlatTreeNodeLeftComponent, CvaFlatTreeNodeRightComponent, CvaInputComponent, CvaLiveSearchingComponent, CvaLoaderComponent, CvaMultiSelectAutocomplete, CvaMultiUploadComponent, CvaMultiUploadImgComponent, CvaQuillEditorComponent, CvaRadiobuttonComponent, CvaRangeDatePickerComponent, CvaSmartTableComponent, CvaTableComponent, CvaTreeComponent, CvaUploadFileComponent, DateUtilService, DialogImportFileConfigModel, DialogTypeEnum, DragDropDirective, FileTypeEnum, FlatTreeConfigModel, FlatTreeModel, FlatTreeNodeModel, FormStateService, FormatInputDirective, IconTypeEnum, InjectTokenNextSolutionsConfig, JsogHttpInterceptor, LoaderInterceptor, LoaderService, MenuModel, MultiTranslateHttpLoader, NavigatorModel, NiceComponentLibraryModule, NumericInputFormat, OAuth2AuthenticationDto, PatternDirective, PermissionModel, Principal, RangeDatePickerModel, RoleModel, SecureImgPipe, SelectModel, SingletonTranslateService, StylePaginatorDirective, TableFooterModel, TablePagingRequestModel, TablePagingResponseModel, TableService, UIState, UploadModel, UtilsService, ValidatorService };
|
|
9602
9704
|
//# sourceMappingURL=c10t-nice-component-library.mjs.map
|