@tots/editable-columns 16.0.6 → 20.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,18 +1,16 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Component, EventEmitter, ViewChild, Input, Output, NgModule } from '@angular/core';
3
- import * as i2 from '@angular/forms';
2
+ import { Component, EventEmitter, Output, Input, ViewChild, NgModule } from '@angular/core';
3
+ import * as i1 from '@angular/forms';
4
4
  import { FormControl, FormArray, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';
5
5
  import * as i1$1 from '@tots/table';
6
6
  import { TotsBaseColumnComponent, TotsTableHelper, TotsTableConfig, TotsColumn, TotsTableModule } from '@tots/table';
7
- import * as i1 from '@angular/common';
8
- import { CommonModule } from '@angular/common';
9
- import * as i3 from '@angular/material/form-field';
7
+ import * as i2 from '@angular/material/form-field';
10
8
  import { MatFormFieldModule } from '@angular/material/form-field';
11
- import * as i4 from '@angular/material/input';
9
+ import * as i3 from '@angular/material/input';
12
10
  import { MatInputModule } from '@angular/material/input';
13
- import * as i4$1 from '@angular/material/select';
11
+ import * as i3$1 from '@angular/material/select';
14
12
  import { MatSelectModule } from '@angular/material/select';
15
- import * as i5 from '@angular/material/core';
13
+ import { CommonModule } from '@angular/common';
16
14
 
17
15
  class TotsValidator {
18
16
  constructor(validator, name, message) {
@@ -115,13 +113,13 @@ class InputColumnComponent extends TotsBaseColumnComponent {
115
113
  getInput() {
116
114
  return this.input;
117
115
  }
118
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: InputColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
119
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.11", type: InputColumnComponent, selector: "tots-input-column", usesInheritance: true, ngImport: i0, template: "<mat-form-field class=\"{{getClass()}}\" [appearance]=\"getAppearance()\" (click)=\"$event.stopPropagation()\">\n <mat-label *ngIf=\"getLabel()\"> {{ getLabel() }} </mat-label>\n <input matInput type=\"text\" [formControl]=\"input\" [placeholder]=\"getPlaceholder()\"/>\n <mat-hint *ngIf=\"getCaption()\" [align]=\"'end'\"> {{getCaption()}} </mat-hint>\n <mat-error *ngIf=\"hasError()\">{{getErrorMessage()}}</mat-error>\n</mat-form-field>\n", styles: ["mat-form-field{margin-bottom:0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }] }); }
116
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.10", ngImport: i0, type: InputColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
117
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.10", type: InputColumnComponent, isStandalone: false, selector: "tots-input-column", usesInheritance: true, ngImport: i0, template: "<mat-form-field class=\"{{getClass()}}\" [appearance]=\"getAppearance()\" (click)=\"$event.stopPropagation()\">\n\n\t@if (getLabel()) {\n \t\t<mat-label>\n\t\t\t{{ getLabel() }}\n\t\t</mat-label>\n\t}\n\n\t<input matInput type=\"text\" [formControl]=\"input\" [placeholder]=\"getPlaceholder()\"/>\n\n\t@if (getCaption()) {\n \t\t<mat-hint [align]=\"'end'\">\n\t\t\t{{ getCaption() }}\n\t\t</mat-hint>\n\t}\n\n\t@if (hasError()) {\n \t\t<mat-error>\n\t\t\t{{ getErrorMessage() }}\n\t\t</mat-error>\n\t}\n\n</mat-form-field>\n", styles: ["mat-form-field{margin-bottom:0}\n"], dependencies: [{ kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.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"] }] }); }
120
118
  }
121
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: InputColumnComponent, decorators: [{
119
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.10", ngImport: i0, type: InputColumnComponent, decorators: [{
122
120
  type: Component,
123
- args: [{ selector: 'tots-input-column', template: "<mat-form-field class=\"{{getClass()}}\" [appearance]=\"getAppearance()\" (click)=\"$event.stopPropagation()\">\n <mat-label *ngIf=\"getLabel()\"> {{ getLabel() }} </mat-label>\n <input matInput type=\"text\" [formControl]=\"input\" [placeholder]=\"getPlaceholder()\"/>\n <mat-hint *ngIf=\"getCaption()\" [align]=\"'end'\"> {{getCaption()}} </mat-hint>\n <mat-error *ngIf=\"hasError()\">{{getErrorMessage()}}</mat-error>\n</mat-form-field>\n", styles: ["mat-form-field{margin-bottom:0}\n"] }]
124
- }], ctorParameters: function () { return []; } });
121
+ args: [{ selector: 'tots-input-column', standalone: false, template: "<mat-form-field class=\"{{getClass()}}\" [appearance]=\"getAppearance()\" (click)=\"$event.stopPropagation()\">\n\n\t@if (getLabel()) {\n \t\t<mat-label>\n\t\t\t{{ getLabel() }}\n\t\t</mat-label>\n\t}\n\n\t<input matInput type=\"text\" [formControl]=\"input\" [placeholder]=\"getPlaceholder()\"/>\n\n\t@if (getCaption()) {\n \t\t<mat-hint [align]=\"'end'\">\n\t\t\t{{ getCaption() }}\n\t\t</mat-hint>\n\t}\n\n\t@if (hasError()) {\n \t\t<mat-error>\n\t\t\t{{ getErrorMessage() }}\n\t\t</mat-error>\n\t}\n\n</mat-form-field>\n", styles: ["mat-form-field{margin-bottom:0}\n"] }]
122
+ }], ctorParameters: () => [] });
125
123
 
126
124
  class SelectColumnComponent extends TotsBaseColumnComponent {
127
125
  constructor() {
@@ -221,13 +219,13 @@ class SelectColumnComponent extends TotsBaseColumnComponent {
221
219
  getInput() {
222
220
  return this.input;
223
221
  }
224
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: SelectColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
225
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.11", type: SelectColumnComponent, selector: "tots-select-column", usesInheritance: true, ngImport: i0, template: "<mat-form-field class=\"{{getClasses()}}\" [appearance]=\"getAppearance()\" (click)=\"$event.stopPropagation()\">\n <mat-label *ngIf=\"getLabel()\"> {{ getLabel() }} </mat-label>\n <mat-select [formControl]=\"input\" [placeholder]=\"getPlaceholder()\">\n <mat-option *ngFor=\"let option of options; let index=index;\" [value]=\"getOptionValue(option)\">\n {{ displayOption(option) }}\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"getCaption()\" [align]=\"'end'\"> {{getCaption()}} </mat-hint>\n <mat-error *ngIf=\"hasError()\">{{getErrorMessage()}}</mat-error>\n</mat-form-field>\n", styles: ["mat-form-field{margin-bottom:0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4$1.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }] }); }
222
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.10", ngImport: i0, type: SelectColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
223
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.10", type: SelectColumnComponent, isStandalone: false, selector: "tots-select-column", usesInheritance: true, ngImport: i0, template: "<mat-form-field class=\"{{getClasses()}}\" [appearance]=\"getAppearance()\" (click)=\"$event.stopPropagation()\">\n\t@if (getLabel()) {\n \t\t<mat-label>\n\t\t\t{{ getLabel() }}\n\t\t</mat-label>\n\t}\n\n\t<mat-select [formControl]=\"input\" [placeholder]=\"getPlaceholder()\">\n\t\t@for (option of options; track $index) {\n\t\t\t<mat-option [value]=\"getOptionValue(option)\">\n\t\t\t\t{{ displayOption(option) }}\n\t\t\t</mat-option>\n\t\t}\n\t</mat-select>\n\n\t@if (getCaption()) {\n \t\t<mat-hint [align]=\"'end'\">\n\t\t\t{{ getCaption() }}\n\t\t</mat-hint>\n\t}\n\n\t@if (hasError()) {\n \t\t<mat-error>\n\t\t\t{{ getErrorMessage() }}\n\t\t</mat-error>\n\t}\n</mat-form-field>\n", styles: ["mat-form-field{margin-bottom:0}\n"], dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i3$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: "component", type: i3$1.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }] }); }
226
224
  }
227
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: SelectColumnComponent, decorators: [{
225
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.10", ngImport: i0, type: SelectColumnComponent, decorators: [{
228
226
  type: Component,
229
- args: [{ selector: 'tots-select-column', template: "<mat-form-field class=\"{{getClasses()}}\" [appearance]=\"getAppearance()\" (click)=\"$event.stopPropagation()\">\n <mat-label *ngIf=\"getLabel()\"> {{ getLabel() }} </mat-label>\n <mat-select [formControl]=\"input\" [placeholder]=\"getPlaceholder()\">\n <mat-option *ngFor=\"let option of options; let index=index;\" [value]=\"getOptionValue(option)\">\n {{ displayOption(option) }}\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"getCaption()\" [align]=\"'end'\"> {{getCaption()}} </mat-hint>\n <mat-error *ngIf=\"hasError()\">{{getErrorMessage()}}</mat-error>\n</mat-form-field>\n", styles: ["mat-form-field{margin-bottom:0}\n"] }]
230
- }], ctorParameters: function () { return []; } });
227
+ args: [{ selector: 'tots-select-column', standalone: false, template: "<mat-form-field class=\"{{getClasses()}}\" [appearance]=\"getAppearance()\" (click)=\"$event.stopPropagation()\">\n\t@if (getLabel()) {\n \t\t<mat-label>\n\t\t\t{{ getLabel() }}\n\t\t</mat-label>\n\t}\n\n\t<mat-select [formControl]=\"input\" [placeholder]=\"getPlaceholder()\">\n\t\t@for (option of options; track $index) {\n\t\t\t<mat-option [value]=\"getOptionValue(option)\">\n\t\t\t\t{{ displayOption(option) }}\n\t\t\t</mat-option>\n\t\t}\n\t</mat-select>\n\n\t@if (getCaption()) {\n \t\t<mat-hint [align]=\"'end'\">\n\t\t\t{{ getCaption() }}\n\t\t</mat-hint>\n\t}\n\n\t@if (hasError()) {\n \t\t<mat-error>\n\t\t\t{{ getErrorMessage() }}\n\t\t</mat-error>\n\t}\n</mat-form-field>\n", styles: ["mat-form-field{margin-bottom:0}\n"] }]
228
+ }], ctorParameters: () => [] });
231
229
 
232
230
  class TotsTableFullGroupComponent {
233
231
  constructor() {
@@ -292,12 +290,12 @@ class TotsTableFullGroupComponent {
292
290
  emitFormChange() {
293
291
  this.onAction.emit({ key: 'form-change', item: { valid: this.formArrayMain.valid, values: this.formArrayMain.value } });
294
292
  }
295
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: TotsTableFullGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
296
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.11", type: TotsTableFullGroupComponent, selector: "tots-table-full-group", inputs: { config: "config", pageIndex: "pageIndex", pageSize: "pageSize", hasPagination: "hasPagination", messageNotFound: "messageNotFound" }, outputs: { onAction: "onAction" }, viewQueries: [{ propertyName: "tableComp", first: true, predicate: ["tableComp"], descendants: true }], ngImport: i0, template: "<tots-table #tableComp [config]=\"config\" [pageIndex]=\"pageIndex\" [pageSize]=\"pageSize\" [hasPagination]=\"hasPagination\" [messageNotFound]=\"messageNotFound\" (onAction)=\"onTableAction($event)\"></tots-table>\n", styles: [""], dependencies: [{ kind: "component", type: i1$1.TotsTableComponent, selector: "tots-table", inputs: ["config", "pageIndex", "pageSize", "hasPagination", "messageNotFound"], outputs: ["onAction"] }] }); }
293
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.10", ngImport: i0, type: TotsTableFullGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
294
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.10", type: TotsTableFullGroupComponent, isStandalone: false, selector: "tots-table-full-group", inputs: { config: "config", pageIndex: "pageIndex", pageSize: "pageSize", hasPagination: "hasPagination", messageNotFound: "messageNotFound" }, outputs: { onAction: "onAction" }, viewQueries: [{ propertyName: "tableComp", first: true, predicate: ["tableComp"], descendants: true }], ngImport: i0, template: "<tots-table #tableComp [config]=\"config\" [pageIndex]=\"pageIndex\" [pageSize]=\"pageSize\" [hasPagination]=\"hasPagination\" [messageNotFound]=\"messageNotFound\" (onAction)=\"onTableAction($event)\"></tots-table>\n", styles: [""], dependencies: [{ kind: "component", type: i1$1.TotsTableComponent, selector: "tots-table", inputs: ["config", "pageIndex", "pageSize", "hasPagination", "messageNotFound"], outputs: ["onAction"] }] }); }
297
295
  }
298
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: TotsTableFullGroupComponent, decorators: [{
296
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.10", ngImport: i0, type: TotsTableFullGroupComponent, decorators: [{
299
297
  type: Component,
300
- args: [{ selector: 'tots-table-full-group', template: "<tots-table #tableComp [config]=\"config\" [pageIndex]=\"pageIndex\" [pageSize]=\"pageSize\" [hasPagination]=\"hasPagination\" [messageNotFound]=\"messageNotFound\" (onAction)=\"onTableAction($event)\"></tots-table>\n" }]
298
+ args: [{ selector: 'tots-table-full-group', standalone: false, template: "<tots-table #tableComp [config]=\"config\" [pageIndex]=\"pageIndex\" [pageSize]=\"pageSize\" [hasPagination]=\"hasPagination\" [messageNotFound]=\"messageNotFound\" (onAction)=\"onTableAction($event)\"></tots-table>\n" }]
301
299
  }], propDecorators: { tableComp: [{
302
300
  type: ViewChild,
303
301
  args: ['tableComp']
@@ -351,8 +349,8 @@ class TotsSelectColumn extends TotsColumn {
351
349
  }
352
350
 
353
351
  class TotsEditableColumnsModule {
354
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: TotsEditableColumnsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
355
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.11", ngImport: i0, type: TotsEditableColumnsModule, declarations: [
352
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.10", ngImport: i0, type: TotsEditableColumnsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
353
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.10", ngImport: i0, type: TotsEditableColumnsModule, declarations: [
356
354
  /** Columns */
357
355
  InputColumnComponent,
358
356
  SelectColumnComponent,
@@ -370,7 +368,7 @@ class TotsEditableColumnsModule {
370
368
  InputColumnComponent,
371
369
  /** Components */
372
370
  TotsTableFullGroupComponent] }); }
373
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: TotsEditableColumnsModule, imports: [CommonModule,
371
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.10", ngImport: i0, type: TotsEditableColumnsModule, imports: [CommonModule,
374
372
  FormsModule,
375
373
  ReactiveFormsModule,
376
374
  /** Angular Material */
@@ -380,7 +378,7 @@ class TotsEditableColumnsModule {
380
378
  /** Tots Libraries */
381
379
  TotsTableModule] }); }
382
380
  }
383
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: TotsEditableColumnsModule, decorators: [{
381
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.10", ngImport: i0, type: TotsEditableColumnsModule, decorators: [{
384
382
  type: NgModule,
385
383
  args: [{
386
384
  declarations: [
@@ -1 +1 @@
1
- {"version":3,"file":"tots-editable-columns.mjs","sources":["../../../../projects/tots/editable-columns/src/lib/entities/tots-validator.ts","../../../../projects/tots/editable-columns/src/lib/columns/input-column/input-column.component.ts","../../../../projects/tots/editable-columns/src/lib/columns/input-column/input-column.component.html","../../../../projects/tots/editable-columns/src/lib/columns/select-column/select-column.component.ts","../../../../projects/tots/editable-columns/src/lib/columns/select-column/select-column.component.html","../../../../projects/tots/editable-columns/src/lib/components/tots-table-full-group/tots-table-full-group.component.ts","../../../../projects/tots/editable-columns/src/lib/components/tots-table-full-group/tots-table-full-group.component.html","../../../../projects/tots/editable-columns/src/lib/column-factories/tots-input-column.ts","../../../../projects/tots/editable-columns/src/lib/column-factories/tots-select-column.ts","../../../../projects/tots/editable-columns/src/lib/editable-columns.module.ts","../../../../projects/tots/editable-columns/src/public-api.ts","../../../../projects/tots/editable-columns/src/tots-editable-columns.ts"],"sourcesContent":["import { ValidatorFn } from \"@angular/forms\"\n\nexport class TotsValidator {\n validator: ValidatorFn;\n name: string;\n message: string;\n \n constructor(validator:ValidatorFn, name:string, message:string) {\n this.validator = validator;\n this.name = name;\n this.message = message;\n }\n}","import { Component, OnDestroy } from '@angular/core';\nimport { FormControl, FormGroup, ValidatorFn } from '@angular/forms';\nimport { MatFormFieldAppearance } from '@angular/material/form-field';\nimport { TotsBaseColumnComponent, TotsTableHelper } from '@tots/table';\n\n@Component({\n selector: 'tots-input-column',\n templateUrl: './input-column.component.html',\n styleUrls: ['./input-column.component.css']\n})\nexport class InputColumnComponent extends TotsBaseColumnComponent implements OnDestroy {\n\n input!: FormControl;\n\n constructor() {\n super();\n }\n\n ngOnInit(): void {\n this.loadInput();\n this.loadForm();\n this.loadChanges();\n }\n ngOnDestroy(): void {\n this.onAction.next({ key: 'input-destroy', item: { field_key: this.getFormKey(), index: this.index } });\n }\n\n loadChanges() {\n this.input.valueChanges.subscribe(value => {\n this.onAction.next({ key: 'input-change', item: { field_key: this.getFormKey(), item: this.item, value: value, valid: this.input.valid, index: this.index } });\n });\n }\n\n loadForm() {\n if(this.column.extra == undefined || this.column.extra.group == undefined){\n return;\n }\n\n let group: FormGroup = this.column.extra.group;\n if(group.get(this.getFormKey()) != undefined){\n return;\n }\n\n group.addControl(this.getFormKey(), this.input);\n }\n\n loadInput() {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n this.input = new FormControl(value, this.getValidators());\n\n this.onAction.next({ key: 'input-create', item: { field_key: this.getFormKey(), input: this.input, index: this.index, column: this.column } });\n }\n\n getFormKey(): string {\n if(Array.isArray(this.column.field_key)){\n return this.column.field_key.join('_');\n } else {\n return this.column.field_key!;\n }\n }\n\n getValidators() : ValidatorFn[] | ValidatorFn | null {\n if (this.column.extra && this.column.extra.validators) {\n return this.column.extra.validators;\n }\n return null;\n }\n\n getErrorMessage() : string {\n if (!this.column.extra.errors) {\n return '';\n }\n\n for (const error of this.column.extra.errors) {\n if (this.input.hasError(error.name)) {\n return error.message;\n }\n }\n\n return '';\n }\n\n getAppearance() : MatFormFieldAppearance {\n if (this.column.extra && this.column.extra.appearance) {\n return this.column.extra.appearance;\n }\n return 'fill';\n }\n\n getLabel() : string | undefined {\n if (this.column.extra && this.column.extra.label) {\n return this.column.extra.label;\n }\n return undefined;\n }\n\n getClass() : string {\n if (this.column.extra && this.column.extra.class) {\n return this.column.extra.class;\n }\n return '';\n }\n\n getPlaceholder() : string {\n if (this.column.extra && this.column.extra.placeholder) {\n return this.column.extra.placeholder;\n }\n return '';\n }\n\n getCaption() : string {\n if (this.column.extra && this.column.extra.caption) {\n return this.column.extra.caption;\n }\n return '';\n }\n\n hasError() : boolean {\n return this.input.invalid && (this.input.dirty || this.input.touched);\n }\n\n getInput() {\n return this.input;\n }\n}\n","<mat-form-field class=\"{{getClass()}}\" [appearance]=\"getAppearance()\" (click)=\"$event.stopPropagation()\">\n <mat-label *ngIf=\"getLabel()\"> {{ getLabel() }} </mat-label>\n <input matInput type=\"text\" [formControl]=\"input\" [placeholder]=\"getPlaceholder()\"/>\n <mat-hint *ngIf=\"getCaption()\" [align]=\"'end'\"> {{getCaption()}} </mat-hint>\n <mat-error *ngIf=\"hasError()\">{{getErrorMessage()}}</mat-error>\n</mat-form-field>\n","import { Component } from '@angular/core';\nimport { FormControl, FormGroup, ValidatorFn } from '@angular/forms';\nimport { MatFormFieldAppearance } from '@angular/material/form-field';\nimport { TotsBaseColumnComponent, TotsTableHelper } from '@tots/table';\n\n@Component({\n selector: 'tots-select-column',\n templateUrl: './select-column.component.html',\n styleUrls: ['./select-column.component.css']\n})\nexport class SelectColumnComponent extends TotsBaseColumnComponent {\n\n input!: FormControl;\n protected options! : any[];\n\n constructor() {\n super();\n }\n\n ngOnInit(): void {\n this.loadInput();\n this.loadForm();\n this.loadChanges();\n this.options = this.column.extra.options || [];\n }\n\n loadChanges() {\n this.input.valueChanges\n .subscribe(res => {\n this.onAction.next({ key: 'input-change', item: { field_key: this.getFormKey(), item: this.item, value: res, valid: this.input.valid, index: this.index } });\n });\n }\n\n loadForm() {\n if(this.column.extra == undefined || this.column.extra.group == undefined){\n return;\n }\n\n let group: FormGroup = this.column.extra.group;\n if(group.get(this.getFormKey()) != undefined){\n return;\n }\n\n group.addControl(this.getFormKey(), this.input);\n }\n\n loadInput() {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n this.input = new FormControl(value, this.getValidators());\n\n this.onAction.next({ key: 'input-create', item: { field_key: this.getFormKey(), input: this.input, index: this.index, column: this.column } });\n }\n\n protected getOptionValue(option:any) {\n return TotsTableHelper.getItemValueByKey(option, this.column.extra.field_select_key);\n }\n protected displayOption(option:any) {\n return TotsTableHelper.getItemValueByKey(option, this.column.extra.field_print_key);\n }\n\n getFormKey(): string {\n if(Array.isArray(this.column.field_key)){\n return this.column.field_key.join('_');\n } else {\n return this.column.field_key!;\n }\n }\n\n getValidators() : ValidatorFn[] | ValidatorFn | null {\n if (this.column.extra && this.column.extra.validators) {\n return this.column.extra.validators;\n }\n return null;\n }\n\n getErrorMessage() : string {\n if (!this.column.extra.errors) {\n return '';\n }\n\n for (const error of this.column.extra.errors) {\n if (this.input.hasError(error.name)) {\n return error.message;\n }\n }\n\n return '';\n }\n\n getAppearance() : MatFormFieldAppearance {\n if (this.column.extra && this.column.extra.appearance) {\n return this.column.extra.appearance;\n }\n return 'fill';\n }\n\n getLabel() : string | undefined {\n if (this.column.extra && this.column.extra.label) {\n return this.column.extra.label;\n }\n return undefined;\n }\n\n getClasses() : string {\n if (this.column.extra && this.column.extra.classes) {\n return this.column.extra.classes;\n }\n return '';\n }\n\n getPlaceholder() : string {\n if (this.column.extra && this.column.extra.placeholder) {\n return this.column.extra.placeholder;\n }\n return '';\n }\n\n getCaption() : string {\n if (this.column.extra && this.column.extra.caption) {\n return this.column.extra.caption;\n }\n return '';\n }\n\n hasError() : boolean {\n return this.input.invalid && (this.input.dirty || this.input.touched);\n }\n\n getInput() {\n return this.input;\n }\n}\n","<mat-form-field class=\"{{getClasses()}}\" [appearance]=\"getAppearance()\" (click)=\"$event.stopPropagation()\">\n <mat-label *ngIf=\"getLabel()\"> {{ getLabel() }} </mat-label>\n <mat-select [formControl]=\"input\" [placeholder]=\"getPlaceholder()\">\n <mat-option *ngFor=\"let option of options; let index=index;\" [value]=\"getOptionValue(option)\">\n {{ displayOption(option) }}\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"getCaption()\" [align]=\"'end'\"> {{getCaption()}} </mat-hint>\n <mat-error *ngIf=\"hasError()\">{{getErrorMessage()}}</mat-error>\n</mat-form-field>\n","import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';\nimport { FormArray, FormControl, FormGroup } from '@angular/forms';\nimport { TotsListResponse } from '@tots/core';\nimport { TotsActionTable, TotsColumn, TotsTableComponent, TotsTableConfig } from '@tots/table';\n\n@Component({\n selector: 'tots-table-full-group',\n templateUrl: './tots-table-full-group.component.html',\n styleUrls: ['./tots-table-full-group.component.css']\n})\nexport class TotsTableFullGroupComponent {\n\n @ViewChild('tableComp') protected tableComp!: TotsTableComponent;\n\n @Input() config = new TotsTableConfig();\n @Input() pageIndex: number = 0;\n @Input() pageSize: number = 50;\n @Input() hasPagination: boolean = true;\n @Input() messageNotFound: string = \"No results found, please try with other search terms\";\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n\n formArrayMain : FormArray<FormGroup> = new FormArray<FormGroup>([]);\n\n protected onTableAction(action: TotsActionTable) {\n if (action.key == 'input-create') {\n this.addInputInGroup(action.item.input, action.item.index, action.item.column);\n\n } else if (action.key == 'input-change') {\n this.onAction.emit(action);\n setTimeout(() => {\n this.emitFormChange();\n });\n\n } else if (action.key == \"input-destroy\" ) {\n this.removeInputFromGroup(action.item.index, action.item.field_key);\n }\n\n this.onAction.emit(action);\n }\n\n private addInputInGroup(input: FormControl, index: number, column: TotsColumn) {\n let group = this.formArrayMain.at(index);\n \n if (group) {\n group.addControl(this.getFormKey(column), input);\n this.formArrayMain.setControl(index, group);\n\n } else {\n group = new FormGroup({});\n group.addControl(this.getFormKey(column), input);\n this.formArrayMain.push(group);\n this.emitFormChange();\n }\n \n }\n private removeInputFromGroup(index: number, field_key: string) {\n let formGroup = this.formArrayMain.at(index);\n if (!formGroup)\n return\n\n formGroup.removeControl(field_key);\n\n let keys = Object.keys(formGroup.controls);\n\n if (keys.length == 0) {\n this.formArrayMain.removeAt(index);\n this.emitFormChange();\n }\n }\n\n private getFormKey(column: TotsColumn): string {\n if(Array.isArray(column.field_key)){\n return column.field_key.join('_');\n } else {\n return column.field_key!;\n }\n }\n\n loadItems() {\n this.tableComp?.loadItems();\n }\n\n private emitFormChange() {\n this.onAction.emit({ key: 'form-change', item: { valid: this.formArrayMain.valid, values: this.formArrayMain.value } });\n }\n}\n","<tots-table #tableComp [config]=\"config\" [pageIndex]=\"pageIndex\" [pageSize]=\"pageSize\" [hasPagination]=\"hasPagination\" [messageNotFound]=\"messageNotFound\" (onAction)=\"onTableAction($event)\"></tots-table>\n","import { TotsColumn } from \"@tots/table\";\r\nimport { InputColumnComponent } from \"../columns/input-column/input-column.component\";\r\nimport { FormGroup } from \"@angular/forms\";\r\nimport { MatFormFieldAppearance } from \"@angular/material/form-field\";\r\nimport { TotsValidator } from \"../entities/tots-validator\";\r\n\r\nexport class TotsInputColumn extends TotsColumn {\r\n\tconstructor(id:string, fieldKey:string|string[], validators?:TotsValidator[], title?:string, formGroup?:FormGroup, label?:string, placeholder?:string, hint?:string, cssClass?:string, appearance?:MatFormFieldAppearance) {\r\n super(id, InputColumnComponent, fieldKey, title);\r\n this.extra = {\r\n group: formGroup,\r\n validators: validators?.map(v=> v.validator),\r\n errors: validators?.map(v=> {return {name:v.name, message:v.message}}),\r\n label: label,\r\n class: cssClass,\r\n placeholder: placeholder,\r\n caption: hint,\r\n appearance: appearance\r\n }\r\n }\r\n}","import { TotsColumn, TotsColumnOption } from \"@tots/table\";\r\nimport { SelectColumnComponent } from \"../columns/select-column/select-column.component\";\r\nimport { FormGroup } from \"@angular/forms\";\r\nimport { MatFormFieldAppearance } from \"@angular/material/form-field\";\r\nimport { TotsValidator } from \"../entities/tots-validator\";\r\n\r\nexport class TotsSelectColumn extends TotsColumn {\r\n\tconstructor(id:string, fieldKey:string|string[], options:TotsColumnOption[], validators?:TotsValidator[], title?:string, formGroup?:FormGroup, label?:string, placeholder?:string, hint?:string, cssClass?:string, appearance?:MatFormFieldAppearance) {\r\n super(id, SelectColumnComponent, fieldKey, title);\r\n this.extra = {\r\n group: formGroup,\r\n options: options,\r\n field_select_key: \"value\",\r\n field_print_key: \"caption\",\r\n validators: validators?.map(v=> v.validator),\r\n errors: validators?.map(v=> {return {name:v.name, message:v.message}}),\r\n label: label,\r\n class: cssClass,\r\n placeholder: placeholder,\r\n caption: hint,\r\n appearance: appearance\r\n }\r\n }\r\n}","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n\n/** Angular Material */\nimport { MatInputModule } from '@angular/material/input';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatSelectModule } from '@angular/material/select';\n\n/** Tots Libraries */\nimport { TotsTableModule } from '@tots/table';\n\n/** Columns */\nimport { InputColumnComponent } from './columns/input-column/input-column.component';\nimport { SelectColumnComponent } from './columns/select-column/select-column.component';\n\n/** Components */\nimport { TotsTableFullGroupComponent } from './components/tots-table-full-group/tots-table-full-group.component';\n\n\n\n\n\n@NgModule({\n declarations: [\n /** Columns */\n InputColumnComponent,\n SelectColumnComponent,\n\n /** Components */\n TotsTableFullGroupComponent\n ],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n\n /** Angular Material */\n MatFormFieldModule,\n MatInputModule,\n MatSelectModule,\n\n /** Tots Libraries */\n TotsTableModule\n ],\n exports: [\n /** Columns */\n InputColumnComponent,\n\n /** Components */\n TotsTableFullGroupComponent\n ]\n})\nexport class TotsEditableColumnsModule { }\n","/*\n * Public API Surface of editable-columns\n */\n\n/**\n * Entities\n */\nexport * from './lib/entities/tots-validator';\n\n/**\n * Columns\n */\nexport * from './lib/columns/input-column/input-column.component';\nexport * from './lib/columns/select-column/select-column.component';\n\n/**\n * Components\n */\nexport * from './lib/components/tots-table-full-group/tots-table-full-group.component';\n\n/**\n * Factories\n */\nexport * from './lib/column-factories/tots-input-column';\nexport * from './lib/column-factories/tots-select-column';\n\n/**\n * Modules\n */\nexport * from './lib/editable-columns.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i4","i1"],"mappings":"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"}
1
+ {"version":3,"file":"tots-editable-columns.mjs","sources":["../../../../projects/tots/editable-columns/src/lib/entities/tots-validator.ts","../../../../projects/tots/editable-columns/src/lib/columns/input-column/input-column.component.ts","../../../../projects/tots/editable-columns/src/lib/columns/input-column/input-column.component.html","../../../../projects/tots/editable-columns/src/lib/columns/select-column/select-column.component.ts","../../../../projects/tots/editable-columns/src/lib/columns/select-column/select-column.component.html","../../../../projects/tots/editable-columns/src/lib/components/tots-table-full-group/tots-table-full-group.component.ts","../../../../projects/tots/editable-columns/src/lib/components/tots-table-full-group/tots-table-full-group.component.html","../../../../projects/tots/editable-columns/src/lib/column-factories/tots-input-column.ts","../../../../projects/tots/editable-columns/src/lib/column-factories/tots-select-column.ts","../../../../projects/tots/editable-columns/src/lib/editable-columns.module.ts","../../../../projects/tots/editable-columns/src/public-api.ts","../../../../projects/tots/editable-columns/src/tots-editable-columns.ts"],"sourcesContent":["import { ValidatorFn } from \"@angular/forms\"\n\nexport class TotsValidator {\n validator: ValidatorFn;\n name: string;\n message: string;\n \n constructor(validator:ValidatorFn, name:string, message:string) {\n this.validator = validator;\n this.name = name;\n this.message = message;\n }\n}","import { Component, OnDestroy } from '@angular/core';\nimport { FormControl, FormGroup, ValidatorFn } from '@angular/forms';\nimport { MatFormFieldAppearance } from '@angular/material/form-field';\nimport { TotsBaseColumnComponent, TotsTableHelper } from '@tots/table';\n\n@Component({\n selector: 'tots-input-column',\n templateUrl: './input-column.component.html',\n styleUrls: ['./input-column.component.css'],\n standalone: false\n})\nexport class InputColumnComponent extends TotsBaseColumnComponent implements OnDestroy {\n\n input!: FormControl;\n\n constructor() {\n super();\n }\n\n ngOnInit(): void {\n this.loadInput();\n this.loadForm();\n this.loadChanges();\n }\n ngOnDestroy(): void {\n this.onAction.next({ key: 'input-destroy', item: { field_key: this.getFormKey(), index: this.index } });\n }\n\n loadChanges() {\n this.input.valueChanges.subscribe(value => {\n this.onAction.next({ key: 'input-change', item: { field_key: this.getFormKey(), item: this.item, value: value, valid: this.input.valid, index: this.index } });\n });\n }\n\n loadForm() {\n if(this.column.extra == undefined || this.column.extra.group == undefined){\n return;\n }\n\n let group: FormGroup = this.column.extra.group;\n if(group.get(this.getFormKey()) != undefined){\n return;\n }\n\n group.addControl(this.getFormKey(), this.input);\n }\n\n loadInput() {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n this.input = new FormControl(value, this.getValidators());\n\n this.onAction.next({ key: 'input-create', item: { field_key: this.getFormKey(), input: this.input, index: this.index, column: this.column } });\n }\n\n getFormKey(): string {\n if(Array.isArray(this.column.field_key)){\n return this.column.field_key.join('_');\n } else {\n return this.column.field_key!;\n }\n }\n\n getValidators() : ValidatorFn[] | ValidatorFn | null {\n if (this.column.extra && this.column.extra.validators) {\n return this.column.extra.validators;\n }\n return null;\n }\n\n getErrorMessage() : string {\n if (!this.column.extra.errors) {\n return '';\n }\n\n for (const error of this.column.extra.errors) {\n if (this.input.hasError(error.name)) {\n return error.message;\n }\n }\n\n return '';\n }\n\n getAppearance() : MatFormFieldAppearance {\n if (this.column.extra && this.column.extra.appearance) {\n return this.column.extra.appearance;\n }\n return 'fill';\n }\n\n getLabel() : string | undefined {\n if (this.column.extra && this.column.extra.label) {\n return this.column.extra.label;\n }\n return undefined;\n }\n\n getClass() : string {\n if (this.column.extra && this.column.extra.class) {\n return this.column.extra.class;\n }\n return '';\n }\n\n getPlaceholder() : string {\n if (this.column.extra && this.column.extra.placeholder) {\n return this.column.extra.placeholder;\n }\n return '';\n }\n\n getCaption() : string {\n if (this.column.extra && this.column.extra.caption) {\n return this.column.extra.caption;\n }\n return '';\n }\n\n hasError() : boolean {\n return this.input.invalid && (this.input.dirty || this.input.touched);\n }\n\n getInput() {\n return this.input;\n }\n}\n","<mat-form-field class=\"{{getClass()}}\" [appearance]=\"getAppearance()\" (click)=\"$event.stopPropagation()\">\n\n\t@if (getLabel()) {\n \t\t<mat-label>\n\t\t\t{{ getLabel() }}\n\t\t</mat-label>\n\t}\n\n\t<input matInput type=\"text\" [formControl]=\"input\" [placeholder]=\"getPlaceholder()\"/>\n\n\t@if (getCaption()) {\n \t\t<mat-hint [align]=\"'end'\">\n\t\t\t{{ getCaption() }}\n\t\t</mat-hint>\n\t}\n\n\t@if (hasError()) {\n \t\t<mat-error>\n\t\t\t{{ getErrorMessage() }}\n\t\t</mat-error>\n\t}\n\n</mat-form-field>\n","import { Component } from '@angular/core';\nimport { FormControl, FormGroup, ValidatorFn } from '@angular/forms';\nimport { MatFormFieldAppearance } from '@angular/material/form-field';\nimport { TotsBaseColumnComponent, TotsTableHelper } from '@tots/table';\n\n@Component({\n selector: 'tots-select-column',\n templateUrl: './select-column.component.html',\n styleUrls: ['./select-column.component.css'],\n standalone: false\n})\nexport class SelectColumnComponent extends TotsBaseColumnComponent {\n\n input!: FormControl;\n protected options! : any[];\n\n constructor() {\n super();\n }\n\n ngOnInit(): void {\n this.loadInput();\n this.loadForm();\n this.loadChanges();\n this.options = this.column.extra.options || [];\n }\n\n loadChanges() {\n this.input.valueChanges\n .subscribe(res => {\n this.onAction.next({ key: 'input-change', item: { field_key: this.getFormKey(), item: this.item, value: res, valid: this.input.valid, index: this.index } });\n });\n }\n\n loadForm() {\n if(this.column.extra == undefined || this.column.extra.group == undefined){\n return;\n }\n\n let group: FormGroup = this.column.extra.group;\n if(group.get(this.getFormKey()) != undefined){\n return;\n }\n\n group.addControl(this.getFormKey(), this.input);\n }\n\n loadInput() {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n this.input = new FormControl(value, this.getValidators());\n\n this.onAction.next({ key: 'input-create', item: { field_key: this.getFormKey(), input: this.input, index: this.index, column: this.column } });\n }\n\n protected getOptionValue(option:any) {\n return TotsTableHelper.getItemValueByKey(option, this.column.extra.field_select_key);\n }\n protected displayOption(option:any) {\n return TotsTableHelper.getItemValueByKey(option, this.column.extra.field_print_key);\n }\n\n getFormKey(): string {\n if(Array.isArray(this.column.field_key)){\n return this.column.field_key.join('_');\n } else {\n return this.column.field_key!;\n }\n }\n\n getValidators() : ValidatorFn[] | ValidatorFn | null {\n if (this.column.extra && this.column.extra.validators) {\n return this.column.extra.validators;\n }\n return null;\n }\n\n getErrorMessage() : string {\n if (!this.column.extra.errors) {\n return '';\n }\n\n for (const error of this.column.extra.errors) {\n if (this.input.hasError(error.name)) {\n return error.message;\n }\n }\n\n return '';\n }\n\n getAppearance() : MatFormFieldAppearance {\n if (this.column.extra && this.column.extra.appearance) {\n return this.column.extra.appearance;\n }\n return 'fill';\n }\n\n getLabel() : string | undefined {\n if (this.column.extra && this.column.extra.label) {\n return this.column.extra.label;\n }\n return undefined;\n }\n\n getClasses() : string {\n if (this.column.extra && this.column.extra.classes) {\n return this.column.extra.classes;\n }\n return '';\n }\n\n getPlaceholder() : string {\n if (this.column.extra && this.column.extra.placeholder) {\n return this.column.extra.placeholder;\n }\n return '';\n }\n\n getCaption() : string {\n if (this.column.extra && this.column.extra.caption) {\n return this.column.extra.caption;\n }\n return '';\n }\n\n hasError() : boolean {\n return this.input.invalid && (this.input.dirty || this.input.touched);\n }\n\n getInput() {\n return this.input;\n }\n}\n","<mat-form-field class=\"{{getClasses()}}\" [appearance]=\"getAppearance()\" (click)=\"$event.stopPropagation()\">\n\t@if (getLabel()) {\n \t\t<mat-label>\n\t\t\t{{ getLabel() }}\n\t\t</mat-label>\n\t}\n\n\t<mat-select [formControl]=\"input\" [placeholder]=\"getPlaceholder()\">\n\t\t@for (option of options; track $index) {\n\t\t\t<mat-option [value]=\"getOptionValue(option)\">\n\t\t\t\t{{ displayOption(option) }}\n\t\t\t</mat-option>\n\t\t}\n\t</mat-select>\n\n\t@if (getCaption()) {\n \t\t<mat-hint [align]=\"'end'\">\n\t\t\t{{ getCaption() }}\n\t\t</mat-hint>\n\t}\n\n\t@if (hasError()) {\n \t\t<mat-error>\n\t\t\t{{ getErrorMessage() }}\n\t\t</mat-error>\n\t}\n</mat-form-field>\n","import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';\nimport { FormArray, FormControl, FormGroup } from '@angular/forms';\nimport { TotsListResponse } from '@tots/core';\nimport { TotsActionTable, TotsColumn, TotsTableComponent, TotsTableConfig } from '@tots/table';\n\n@Component({\n selector: 'tots-table-full-group',\n templateUrl: './tots-table-full-group.component.html',\n styleUrls: ['./tots-table-full-group.component.css'],\n standalone: false\n})\nexport class TotsTableFullGroupComponent {\n\n @ViewChild('tableComp') protected tableComp!: TotsTableComponent;\n\n @Input() config = new TotsTableConfig();\n @Input() pageIndex: number = 0;\n @Input() pageSize: number = 50;\n @Input() hasPagination: boolean = true;\n @Input() messageNotFound: string = \"No results found, please try with other search terms\";\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n\n formArrayMain : FormArray<FormGroup> = new FormArray<FormGroup>([]);\n\n protected onTableAction(action: TotsActionTable) {\n if (action.key == 'input-create') {\n this.addInputInGroup(action.item.input, action.item.index, action.item.column);\n\n } else if (action.key == 'input-change') {\n this.onAction.emit(action);\n setTimeout(() => {\n this.emitFormChange();\n });\n\n } else if (action.key == \"input-destroy\" ) {\n this.removeInputFromGroup(action.item.index, action.item.field_key);\n }\n\n this.onAction.emit(action);\n }\n\n private addInputInGroup(input: FormControl, index: number, column: TotsColumn) {\n let group = this.formArrayMain.at(index);\n \n if (group) {\n group.addControl(this.getFormKey(column), input);\n this.formArrayMain.setControl(index, group);\n\n } else {\n group = new FormGroup({});\n group.addControl(this.getFormKey(column), input);\n this.formArrayMain.push(group);\n this.emitFormChange();\n }\n \n }\n private removeInputFromGroup(index: number, field_key: string) {\n let formGroup = this.formArrayMain.at(index);\n if (!formGroup)\n return\n\n formGroup.removeControl(field_key);\n\n let keys = Object.keys(formGroup.controls);\n\n if (keys.length == 0) {\n this.formArrayMain.removeAt(index);\n this.emitFormChange();\n }\n }\n\n private getFormKey(column: TotsColumn): string {\n if(Array.isArray(column.field_key)){\n return column.field_key.join('_');\n } else {\n return column.field_key!;\n }\n }\n\n loadItems() {\n this.tableComp?.loadItems();\n }\n\n private emitFormChange() {\n this.onAction.emit({ key: 'form-change', item: { valid: this.formArrayMain.valid, values: this.formArrayMain.value } });\n }\n}\n","<tots-table #tableComp [config]=\"config\" [pageIndex]=\"pageIndex\" [pageSize]=\"pageSize\" [hasPagination]=\"hasPagination\" [messageNotFound]=\"messageNotFound\" (onAction)=\"onTableAction($event)\"></tots-table>\n","import { TotsColumn } from \"@tots/table\";\r\nimport { InputColumnComponent } from \"../columns/input-column/input-column.component\";\r\nimport { FormGroup } from \"@angular/forms\";\r\nimport { MatFormFieldAppearance } from \"@angular/material/form-field\";\r\nimport { TotsValidator } from \"../entities/tots-validator\";\r\n\r\nexport class TotsInputColumn extends TotsColumn {\r\n\tconstructor(id:string, fieldKey:string|string[], validators?:TotsValidator[], title?:string, formGroup?:FormGroup, label?:string, placeholder?:string, hint?:string, cssClass?:string, appearance?:MatFormFieldAppearance) {\r\n super(id, InputColumnComponent, fieldKey, title);\r\n this.extra = {\r\n group: formGroup,\r\n validators: validators?.map(v=> v.validator),\r\n errors: validators?.map(v=> {return {name:v.name, message:v.message}}),\r\n label: label,\r\n class: cssClass,\r\n placeholder: placeholder,\r\n caption: hint,\r\n appearance: appearance\r\n }\r\n }\r\n}","import { TotsColumn, TotsColumnOption } from \"@tots/table\";\r\nimport { SelectColumnComponent } from \"../columns/select-column/select-column.component\";\r\nimport { FormGroup } from \"@angular/forms\";\r\nimport { MatFormFieldAppearance } from \"@angular/material/form-field\";\r\nimport { TotsValidator } from \"../entities/tots-validator\";\r\n\r\nexport class TotsSelectColumn extends TotsColumn {\r\n\tconstructor(id:string, fieldKey:string|string[], options:TotsColumnOption[], validators?:TotsValidator[], title?:string, formGroup?:FormGroup, label?:string, placeholder?:string, hint?:string, cssClass?:string, appearance?:MatFormFieldAppearance) {\r\n super(id, SelectColumnComponent, fieldKey, title);\r\n this.extra = {\r\n group: formGroup,\r\n options: options,\r\n field_select_key: \"value\",\r\n field_print_key: \"caption\",\r\n validators: validators?.map(v=> v.validator),\r\n errors: validators?.map(v=> {return {name:v.name, message:v.message}}),\r\n label: label,\r\n class: cssClass,\r\n placeholder: placeholder,\r\n caption: hint,\r\n appearance: appearance\r\n }\r\n }\r\n}","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n\n/** Angular Material */\nimport { MatInputModule } from '@angular/material/input';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatSelectModule } from '@angular/material/select';\n\n/** Tots Libraries */\nimport { TotsTableModule } from '@tots/table';\n\n/** Columns */\nimport { InputColumnComponent } from './columns/input-column/input-column.component';\nimport { SelectColumnComponent } from './columns/select-column/select-column.component';\n\n/** Components */\nimport { TotsTableFullGroupComponent } from './components/tots-table-full-group/tots-table-full-group.component';\n\n\n\n\n\n@NgModule({\n declarations: [\n /** Columns */\n InputColumnComponent,\n SelectColumnComponent,\n\n /** Components */\n TotsTableFullGroupComponent\n ],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n\n /** Angular Material */\n MatFormFieldModule,\n MatInputModule,\n MatSelectModule,\n\n /** Tots Libraries */\n TotsTableModule\n ],\n exports: [\n /** Columns */\n InputColumnComponent,\n\n /** Components */\n TotsTableFullGroupComponent\n ]\n})\nexport class TotsEditableColumnsModule { }\n","/*\n * Public API Surface of editable-columns\n */\n\n/**\n * Entities\n */\nexport * from './lib/entities/tots-validator';\n\n/**\n * Columns\n */\nexport * from './lib/columns/input-column/input-column.component';\nexport * from './lib/columns/select-column/select-column.component';\n\n/**\n * Components\n */\nexport * from './lib/components/tots-table-full-group/tots-table-full-group.component';\n\n/**\n * Factories\n */\nexport * from './lib/column-factories/tots-input-column';\nexport * from './lib/column-factories/tots-select-column';\n\n/**\n * Modules\n */\nexport * from './lib/editable-columns.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3","i1"],"mappings":"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"}
package/index.d.ts CHANGED
@@ -1,5 +1,99 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- /// <amd-module name="@tots/editable-columns" />
5
- export * from './public-api';
1
+ import * as i5 from '@angular/forms';
2
+ import { ValidatorFn, FormControl, FormArray, FormGroup } from '@angular/forms';
3
+ import * as i0 from '@angular/core';
4
+ import { OnDestroy, EventEmitter } from '@angular/core';
5
+ import * as i6 from '@angular/material/form-field';
6
+ import { MatFormFieldAppearance } from '@angular/material/form-field';
7
+ import * as i9 from '@tots/table';
8
+ import { TotsBaseColumnComponent, TotsTableComponent, TotsTableConfig, TotsActionTable, TotsColumn, TotsColumnOption } from '@tots/table';
9
+ import * as i4 from '@angular/common';
10
+ import * as i7 from '@angular/material/input';
11
+ import * as i8 from '@angular/material/select';
12
+
13
+ declare class TotsValidator {
14
+ validator: ValidatorFn;
15
+ name: string;
16
+ message: string;
17
+ constructor(validator: ValidatorFn, name: string, message: string);
18
+ }
19
+
20
+ declare class InputColumnComponent extends TotsBaseColumnComponent implements OnDestroy {
21
+ input: FormControl;
22
+ constructor();
23
+ ngOnInit(): void;
24
+ ngOnDestroy(): void;
25
+ loadChanges(): void;
26
+ loadForm(): void;
27
+ loadInput(): void;
28
+ getFormKey(): string;
29
+ getValidators(): ValidatorFn[] | ValidatorFn | null;
30
+ getErrorMessage(): string;
31
+ getAppearance(): MatFormFieldAppearance;
32
+ getLabel(): string | undefined;
33
+ getClass(): string;
34
+ getPlaceholder(): string;
35
+ getCaption(): string;
36
+ hasError(): boolean;
37
+ getInput(): FormControl<any>;
38
+ static ɵfac: i0.ɵɵFactoryDeclaration<InputColumnComponent, never>;
39
+ static ɵcmp: i0.ɵɵComponentDeclaration<InputColumnComponent, "tots-input-column", never, {}, {}, never, never, false, never>;
40
+ }
41
+
42
+ declare class SelectColumnComponent extends TotsBaseColumnComponent {
43
+ input: FormControl;
44
+ protected options: any[];
45
+ constructor();
46
+ ngOnInit(): void;
47
+ loadChanges(): void;
48
+ loadForm(): void;
49
+ loadInput(): void;
50
+ protected getOptionValue(option: any): any;
51
+ protected displayOption(option: any): any;
52
+ getFormKey(): string;
53
+ getValidators(): ValidatorFn[] | ValidatorFn | null;
54
+ getErrorMessage(): string;
55
+ getAppearance(): MatFormFieldAppearance;
56
+ getLabel(): string | undefined;
57
+ getClasses(): string;
58
+ getPlaceholder(): string;
59
+ getCaption(): string;
60
+ hasError(): boolean;
61
+ getInput(): FormControl<any>;
62
+ static ɵfac: i0.ɵɵFactoryDeclaration<SelectColumnComponent, never>;
63
+ static ɵcmp: i0.ɵɵComponentDeclaration<SelectColumnComponent, "tots-select-column", never, {}, {}, never, never, false, never>;
64
+ }
65
+
66
+ declare class TotsTableFullGroupComponent {
67
+ protected tableComp: TotsTableComponent;
68
+ config: TotsTableConfig;
69
+ pageIndex: number;
70
+ pageSize: number;
71
+ hasPagination: boolean;
72
+ messageNotFound: string;
73
+ onAction: EventEmitter<TotsActionTable>;
74
+ formArrayMain: FormArray<FormGroup>;
75
+ protected onTableAction(action: TotsActionTable): void;
76
+ private addInputInGroup;
77
+ private removeInputFromGroup;
78
+ private getFormKey;
79
+ loadItems(): void;
80
+ private emitFormChange;
81
+ static ɵfac: i0.ɵɵFactoryDeclaration<TotsTableFullGroupComponent, never>;
82
+ static ɵcmp: i0.ɵɵComponentDeclaration<TotsTableFullGroupComponent, "tots-table-full-group", never, { "config": { "alias": "config"; "required": false; }; "pageIndex": { "alias": "pageIndex"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; "hasPagination": { "alias": "hasPagination"; "required": false; }; "messageNotFound": { "alias": "messageNotFound"; "required": false; }; }, { "onAction": "onAction"; }, never, never, false, never>;
83
+ }
84
+
85
+ declare class TotsInputColumn extends TotsColumn {
86
+ constructor(id: string, fieldKey: string | string[], validators?: TotsValidator[], title?: string, formGroup?: FormGroup, label?: string, placeholder?: string, hint?: string, cssClass?: string, appearance?: MatFormFieldAppearance);
87
+ }
88
+
89
+ declare class TotsSelectColumn extends TotsColumn {
90
+ constructor(id: string, fieldKey: string | string[], options: TotsColumnOption[], validators?: TotsValidator[], title?: string, formGroup?: FormGroup, label?: string, placeholder?: string, hint?: string, cssClass?: string, appearance?: MatFormFieldAppearance);
91
+ }
92
+
93
+ declare class TotsEditableColumnsModule {
94
+ static ɵfac: i0.ɵɵFactoryDeclaration<TotsEditableColumnsModule, never>;
95
+ static ɵmod: i0.ɵɵNgModuleDeclaration<TotsEditableColumnsModule, [typeof InputColumnComponent, typeof SelectColumnComponent, typeof TotsTableFullGroupComponent], [typeof i4.CommonModule, typeof i5.FormsModule, typeof i5.ReactiveFormsModule, typeof i6.MatFormFieldModule, typeof i7.MatInputModule, typeof i8.MatSelectModule, typeof i9.TotsTableModule], [typeof InputColumnComponent, typeof TotsTableFullGroupComponent]>;
96
+ static ɵinj: i0.ɵɵInjectorDeclaration<TotsEditableColumnsModule>;
97
+ }
98
+
99
+ export { InputColumnComponent, SelectColumnComponent, TotsEditableColumnsModule, TotsInputColumn, TotsSelectColumn, TotsTableFullGroupComponent, TotsValidator };
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "@tots/editable-columns",
3
- "version": "16.0.6",
3
+ "version": "20.0.0",
4
4
  "peerDependencies": {
5
- "@angular/common": "^16.0.0",
6
- "@angular/core": "^16.0.0",
7
- "@angular/material": "^16.0.0",
8
- "@tots/table": "^16.0.0"
5
+ "@angular/common": "^20.3.0",
6
+ "@angular/core": "^20.3.0",
7
+ "@angular/material": "^20.0.0",
8
+ "@tots/table": "^20.0.0"
9
9
  },
10
10
  "dependencies": {
11
- "tslib": "^2.3.0"
11
+ "tslib": "^2.8.0"
12
12
  },
13
13
  "module": "fesm2022/tots-editable-columns.mjs",
14
14
  "typings": "index.d.ts",
@@ -18,8 +18,6 @@
18
18
  },
19
19
  ".": {
20
20
  "types": "./index.d.ts",
21
- "esm2022": "./esm2022/tots-editable-columns.mjs",
22
- "esm": "./esm2022/tots-editable-columns.mjs",
23
21
  "default": "./fesm2022/tots-editable-columns.mjs"
24
22
  }
25
23
  },
@@ -1,18 +0,0 @@
1
- import { TotsColumn } from "@tots/table";
2
- import { InputColumnComponent } from "../columns/input-column/input-column.component";
3
- export class TotsInputColumn extends TotsColumn {
4
- constructor(id, fieldKey, validators, title, formGroup, label, placeholder, hint, cssClass, appearance) {
5
- super(id, InputColumnComponent, fieldKey, title);
6
- this.extra = {
7
- group: formGroup,
8
- validators: validators?.map(v => v.validator),
9
- errors: validators?.map(v => { return { name: v.name, message: v.message }; }),
10
- label: label,
11
- class: cssClass,
12
- placeholder: placeholder,
13
- caption: hint,
14
- appearance: appearance
15
- };
16
- }
17
- }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy1pbnB1dC1jb2x1bW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL2VkaXRhYmxlLWNvbHVtbnMvc3JjL2xpYi9jb2x1bW4tZmFjdG9yaWVzL3RvdHMtaW5wdXQtY29sdW1uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDekMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFLdEYsTUFBTSxPQUFPLGVBQWdCLFNBQVEsVUFBVTtJQUM5QyxZQUFZLEVBQVMsRUFBRSxRQUF3QixFQUFFLFVBQTJCLEVBQUUsS0FBYSxFQUFFLFNBQW9CLEVBQUUsS0FBYSxFQUFFLFdBQW1CLEVBQUUsSUFBWSxFQUFFLFFBQWdCLEVBQUUsVUFBa0M7UUFDbE4sS0FBSyxDQUFDLEVBQUUsRUFBRSxvQkFBb0IsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLEtBQUssR0FBRztZQUNULEtBQUssRUFBRSxTQUFTO1lBQ2hCLFVBQVUsRUFBRSxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUM1QyxNQUFNLEVBQUUsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUEsRUFBRSxHQUFFLE9BQU8sRUFBQyxJQUFJLEVBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBQyxDQUFBLENBQUEsQ0FBQyxDQUFDO1lBQ3RFLEtBQUssRUFBRSxLQUFLO1lBQ1osS0FBSyxFQUFFLFFBQVE7WUFDZixXQUFXLEVBQUUsV0FBVztZQUN4QixPQUFPLEVBQUUsSUFBSTtZQUNiLFVBQVUsRUFBRSxVQUFVO1NBQ3pCLENBQUE7SUFDTCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUb3RzQ29sdW1uIH0gZnJvbSBcIkB0b3RzL3RhYmxlXCI7XHJcbmltcG9ydCB7IElucHV0Q29sdW1uQ29tcG9uZW50IH0gZnJvbSBcIi4uL2NvbHVtbnMvaW5wdXQtY29sdW1uL2lucHV0LWNvbHVtbi5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IE1hdEZvcm1GaWVsZEFwcGVhcmFuY2UgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZFwiO1xyXG5pbXBvcnQgeyBUb3RzVmFsaWRhdG9yIH0gZnJvbSBcIi4uL2VudGl0aWVzL3RvdHMtdmFsaWRhdG9yXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgVG90c0lucHV0Q29sdW1uIGV4dGVuZHMgVG90c0NvbHVtbiB7XHJcblx0Y29uc3RydWN0b3IoaWQ6c3RyaW5nLCBmaWVsZEtleTpzdHJpbmd8c3RyaW5nW10sIHZhbGlkYXRvcnM/OlRvdHNWYWxpZGF0b3JbXSwgdGl0bGU/OnN0cmluZywgZm9ybUdyb3VwPzpGb3JtR3JvdXAsIGxhYmVsPzpzdHJpbmcsIHBsYWNlaG9sZGVyPzpzdHJpbmcsIGhpbnQ/OnN0cmluZywgY3NzQ2xhc3M/OnN0cmluZywgYXBwZWFyYW5jZT86TWF0Rm9ybUZpZWxkQXBwZWFyYW5jZSkge1xyXG4gICAgICAgIHN1cGVyKGlkLCBJbnB1dENvbHVtbkNvbXBvbmVudCwgZmllbGRLZXksIHRpdGxlKTtcclxuICAgICAgICB0aGlzLmV4dHJhID0ge1xyXG4gICAgICAgICAgICBncm91cDogZm9ybUdyb3VwLFxyXG4gICAgICAgICAgICB2YWxpZGF0b3JzOiB2YWxpZGF0b3JzPy5tYXAodj0+IHYudmFsaWRhdG9yKSxcclxuICAgICAgICAgICAgZXJyb3JzOiB2YWxpZGF0b3JzPy5tYXAodj0+IHtyZXR1cm4ge25hbWU6di5uYW1lLCBtZXNzYWdlOnYubWVzc2FnZX19KSxcclxuICAgICAgICAgICAgbGFiZWw6IGxhYmVsLFxyXG4gICAgICAgICAgICBjbGFzczogY3NzQ2xhc3MsXHJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBwbGFjZWhvbGRlcixcclxuICAgICAgICAgICAgY2FwdGlvbjogaGludCxcclxuICAgICAgICAgICAgYXBwZWFyYW5jZTogYXBwZWFyYW5jZVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSJdfQ==
@@ -1,21 +0,0 @@
1
- import { TotsColumn } from "@tots/table";
2
- import { SelectColumnComponent } from "../columns/select-column/select-column.component";
3
- export class TotsSelectColumn extends TotsColumn {
4
- constructor(id, fieldKey, options, validators, title, formGroup, label, placeholder, hint, cssClass, appearance) {
5
- super(id, SelectColumnComponent, fieldKey, title);
6
- this.extra = {
7
- group: formGroup,
8
- options: options,
9
- field_select_key: "value",
10
- field_print_key: "caption",
11
- validators: validators?.map(v => v.validator),
12
- errors: validators?.map(v => { return { name: v.name, message: v.message }; }),
13
- label: label,
14
- class: cssClass,
15
- placeholder: placeholder,
16
- caption: hint,
17
- appearance: appearance
18
- };
19
- }
20
- }
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy1zZWxlY3QtY29sdW1uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy9lZGl0YWJsZS1jb2x1bW5zL3NyYy9saWIvY29sdW1uLWZhY3Rvcmllcy90b3RzLXNlbGVjdC1jb2x1bW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBb0IsTUFBTSxhQUFhLENBQUM7QUFDM0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFLekYsTUFBTSxPQUFPLGdCQUFpQixTQUFRLFVBQVU7SUFDL0MsWUFBWSxFQUFTLEVBQUUsUUFBd0IsRUFBRSxPQUEwQixFQUFFLFVBQTJCLEVBQUUsS0FBYSxFQUFFLFNBQW9CLEVBQUUsS0FBYSxFQUFFLFdBQW1CLEVBQUUsSUFBWSxFQUFFLFFBQWdCLEVBQUUsVUFBa0M7UUFDOU8sS0FBSyxDQUFDLEVBQUUsRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLEtBQUssR0FBRztZQUNULEtBQUssRUFBRSxTQUFTO1lBQ2hCLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLGdCQUFnQixFQUFFLE9BQU87WUFDekIsZUFBZSxFQUFFLFNBQVM7WUFDMUIsVUFBVSxFQUFFLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFBLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQzVDLE1BQU0sRUFBRSxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQSxFQUFFLEdBQUUsT0FBTyxFQUFDLElBQUksRUFBQyxDQUFDLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBQyxDQUFDLENBQUMsT0FBTyxFQUFDLENBQUEsQ0FBQSxDQUFDLENBQUM7WUFDdEUsS0FBSyxFQUFFLEtBQUs7WUFDWixLQUFLLEVBQUUsUUFBUTtZQUNmLFdBQVcsRUFBRSxXQUFXO1lBQ3hCLE9BQU8sRUFBRSxJQUFJO1lBQ2IsVUFBVSxFQUFFLFVBQVU7U0FDekIsQ0FBQTtJQUNMLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRvdHNDb2x1bW4sIFRvdHNDb2x1bW5PcHRpb24gfSBmcm9tIFwiQHRvdHMvdGFibGVcIjtcclxuaW1wb3J0IHsgU2VsZWN0Q29sdW1uQ29tcG9uZW50IH0gZnJvbSBcIi4uL2NvbHVtbnMvc2VsZWN0LWNvbHVtbi9zZWxlY3QtY29sdW1uLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkQXBwZWFyYW5jZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkXCI7XHJcbmltcG9ydCB7IFRvdHNWYWxpZGF0b3IgfSBmcm9tIFwiLi4vZW50aXRpZXMvdG90cy12YWxpZGF0b3JcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBUb3RzU2VsZWN0Q29sdW1uIGV4dGVuZHMgVG90c0NvbHVtbiB7XHJcblx0Y29uc3RydWN0b3IoaWQ6c3RyaW5nLCBmaWVsZEtleTpzdHJpbmd8c3RyaW5nW10sIG9wdGlvbnM6VG90c0NvbHVtbk9wdGlvbltdLCB2YWxpZGF0b3JzPzpUb3RzVmFsaWRhdG9yW10sIHRpdGxlPzpzdHJpbmcsIGZvcm1Hcm91cD86Rm9ybUdyb3VwLCBsYWJlbD86c3RyaW5nLCBwbGFjZWhvbGRlcj86c3RyaW5nLCBoaW50PzpzdHJpbmcsIGNzc0NsYXNzPzpzdHJpbmcsIGFwcGVhcmFuY2U/Ok1hdEZvcm1GaWVsZEFwcGVhcmFuY2UpIHtcclxuICAgICAgICBzdXBlcihpZCwgU2VsZWN0Q29sdW1uQ29tcG9uZW50LCBmaWVsZEtleSwgdGl0bGUpO1xyXG4gICAgICAgIHRoaXMuZXh0cmEgPSB7XHJcbiAgICAgICAgICAgIGdyb3VwOiBmb3JtR3JvdXAsXHJcbiAgICAgICAgICAgIG9wdGlvbnM6IG9wdGlvbnMsXHJcbiAgICAgICAgICAgIGZpZWxkX3NlbGVjdF9rZXk6IFwidmFsdWVcIixcclxuICAgICAgICAgICAgZmllbGRfcHJpbnRfa2V5OiBcImNhcHRpb25cIixcclxuICAgICAgICAgICAgdmFsaWRhdG9yczogdmFsaWRhdG9ycz8ubWFwKHY9PiB2LnZhbGlkYXRvciksXHJcbiAgICAgICAgICAgIGVycm9yczogdmFsaWRhdG9ycz8ubWFwKHY9PiB7cmV0dXJuIHtuYW1lOnYubmFtZSwgbWVzc2FnZTp2Lm1lc3NhZ2V9fSksXHJcbiAgICAgICAgICAgIGxhYmVsOiBsYWJlbCxcclxuICAgICAgICAgICAgY2xhc3M6IGNzc0NsYXNzLFxyXG4gICAgICAgICAgICBwbGFjZWhvbGRlcjogcGxhY2Vob2xkZXIsXHJcbiAgICAgICAgICAgIGNhcHRpb246IGhpbnQsXHJcbiAgICAgICAgICAgIGFwcGVhcmFuY2U6IGFwcGVhcmFuY2VcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iXX0=
@@ -1,109 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import { FormControl } from '@angular/forms';
3
- import { TotsBaseColumnComponent, TotsTableHelper } from '@tots/table';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
- import * as i2 from "@angular/forms";
7
- import * as i3 from "@angular/material/form-field";
8
- import * as i4 from "@angular/material/input";
9
- export class InputColumnComponent extends TotsBaseColumnComponent {
10
- constructor() {
11
- super();
12
- }
13
- ngOnInit() {
14
- this.loadInput();
15
- this.loadForm();
16
- this.loadChanges();
17
- }
18
- ngOnDestroy() {
19
- this.onAction.next({ key: 'input-destroy', item: { field_key: this.getFormKey(), index: this.index } });
20
- }
21
- loadChanges() {
22
- this.input.valueChanges.subscribe(value => {
23
- this.onAction.next({ key: 'input-change', item: { field_key: this.getFormKey(), item: this.item, value: value, valid: this.input.valid, index: this.index } });
24
- });
25
- }
26
- loadForm() {
27
- if (this.column.extra == undefined || this.column.extra.group == undefined) {
28
- return;
29
- }
30
- let group = this.column.extra.group;
31
- if (group.get(this.getFormKey()) != undefined) {
32
- return;
33
- }
34
- group.addControl(this.getFormKey(), this.input);
35
- }
36
- loadInput() {
37
- let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);
38
- this.input = new FormControl(value, this.getValidators());
39
- this.onAction.next({ key: 'input-create', item: { field_key: this.getFormKey(), input: this.input, index: this.index, column: this.column } });
40
- }
41
- getFormKey() {
42
- if (Array.isArray(this.column.field_key)) {
43
- return this.column.field_key.join('_');
44
- }
45
- else {
46
- return this.column.field_key;
47
- }
48
- }
49
- getValidators() {
50
- if (this.column.extra && this.column.extra.validators) {
51
- return this.column.extra.validators;
52
- }
53
- return null;
54
- }
55
- getErrorMessage() {
56
- if (!this.column.extra.errors) {
57
- return '';
58
- }
59
- for (const error of this.column.extra.errors) {
60
- if (this.input.hasError(error.name)) {
61
- return error.message;
62
- }
63
- }
64
- return '';
65
- }
66
- getAppearance() {
67
- if (this.column.extra && this.column.extra.appearance) {
68
- return this.column.extra.appearance;
69
- }
70
- return 'fill';
71
- }
72
- getLabel() {
73
- if (this.column.extra && this.column.extra.label) {
74
- return this.column.extra.label;
75
- }
76
- return undefined;
77
- }
78
- getClass() {
79
- if (this.column.extra && this.column.extra.class) {
80
- return this.column.extra.class;
81
- }
82
- return '';
83
- }
84
- getPlaceholder() {
85
- if (this.column.extra && this.column.extra.placeholder) {
86
- return this.column.extra.placeholder;
87
- }
88
- return '';
89
- }
90
- getCaption() {
91
- if (this.column.extra && this.column.extra.caption) {
92
- return this.column.extra.caption;
93
- }
94
- return '';
95
- }
96
- hasError() {
97
- return this.input.invalid && (this.input.dirty || this.input.touched);
98
- }
99
- getInput() {
100
- return this.input;
101
- }
102
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: InputColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
103
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.11", type: InputColumnComponent, selector: "tots-input-column", usesInheritance: true, ngImport: i0, template: "<mat-form-field class=\"{{getClass()}}\" [appearance]=\"getAppearance()\" (click)=\"$event.stopPropagation()\">\n <mat-label *ngIf=\"getLabel()\"> {{ getLabel() }} </mat-label>\n <input matInput type=\"text\" [formControl]=\"input\" [placeholder]=\"getPlaceholder()\"/>\n <mat-hint *ngIf=\"getCaption()\" [align]=\"'end'\"> {{getCaption()}} </mat-hint>\n <mat-error *ngIf=\"hasError()\">{{getErrorMessage()}}</mat-error>\n</mat-form-field>\n", styles: ["mat-form-field{margin-bottom:0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }] }); }
104
- }
105
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: InputColumnComponent, decorators: [{
106
- type: Component,
107
- args: [{ selector: 'tots-input-column', template: "<mat-form-field class=\"{{getClass()}}\" [appearance]=\"getAppearance()\" (click)=\"$event.stopPropagation()\">\n <mat-label *ngIf=\"getLabel()\"> {{ getLabel() }} </mat-label>\n <input matInput type=\"text\" [formControl]=\"input\" [placeholder]=\"getPlaceholder()\"/>\n <mat-hint *ngIf=\"getCaption()\" [align]=\"'end'\"> {{getCaption()}} </mat-hint>\n <mat-error *ngIf=\"hasError()\">{{getErrorMessage()}}</mat-error>\n</mat-form-field>\n", styles: ["mat-form-field{margin-bottom:0}\n"] }]
108
- }], ctorParameters: function () { return []; } });
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY29sdW1uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RvdHMvZWRpdGFibGUtY29sdW1ucy9zcmMvbGliL2NvbHVtbnMvaW5wdXQtY29sdW1uL2lucHV0LWNvbHVtbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL2VkaXRhYmxlLWNvbHVtbnMvc3JjL2xpYi9jb2x1bW5zL2lucHV0LWNvbHVtbi9pbnB1dC1jb2x1bW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsV0FBVyxFQUEwQixNQUFNLGdCQUFnQixDQUFDO0FBRXJFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7OztBQU92RSxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsdUJBQXVCO0lBSS9EO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFDRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDMUcsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDeEMsSUFB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QUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDOytHQWpIVSxvQkFBb0I7bUdBQXBCLG9CQUFvQixnRkNWakMsK2JBTUE7OzRGRElhLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRBcHBlYXJhbmNlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBUb3RzQmFzZUNvbHVtbkNvbXBvbmVudCwgVG90c1RhYmxlSGVscGVyIH0gZnJvbSAnQHRvdHMvdGFibGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0b3RzLWlucHV0LWNvbHVtbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1jb2x1bW4uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pbnB1dC1jb2x1bW4uY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIElucHV0Q29sdW1uQ29tcG9uZW50IGV4dGVuZHMgVG90c0Jhc2VDb2x1bW5Db21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gIGlucHV0ITogRm9ybUNvbnRyb2w7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubG9hZElucHV0KCk7XG4gICAgdGhpcy5sb2FkRm9ybSgpO1xuICAgIHRoaXMubG9hZENoYW5nZXMoKTtcbiAgfVxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLm9uQWN0aW9uLm5leHQoeyBrZXk6ICdpbnB1dC1kZXN0cm95JywgaXRlbTogeyBmaWVsZF9rZXk6IHRoaXMuZ2V0Rm9ybUtleSgpLCBpbmRleDogdGhpcy5pbmRleCB9IH0pO1xuICB9XG5cbiAgbG9hZENoYW5nZXMoKSB7XG4gICAgdGhpcy5pbnB1dC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbHVlID0+IHtcbiAgICAgIHRoaXMub25BY3Rpb24ubmV4dCh7IGtleTogJ2lucHV0LWNoYW5nZScsIGl0ZW06IHsgZmllbGRfa2V5OiB0aGlzLmdldEZvcm1LZXkoKSwgaXRlbTogdGhpcy5pdGVtLCB2YWx1ZTogdmFsdWUsIHZhbGlkOiB0aGlzLmlucHV0LnZhbGlkLCBpbmRleDogdGhpcy5pbmRleCB9IH0pO1xuICAgIH0pO1xuICB9XG5cbiAgbG9hZEZvcm0oKSB7XG4gICAgaWYodGhpcy5jb2x1bW4uZXh0cmEgPT0gdW5kZWZpbmVkIHx8IHRoaXMuY29sdW1uLmV4dHJhLmdyb3VwID09IHVuZGVmaW5lZCl7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGV0IGdyb3VwOiBGb3JtR3JvdXAgPSB0aGlzLmNvbHVtbi5leHRyYS5ncm91cDtcbiAgICBpZihncm91cC5nZXQodGhpcy5nZXRGb3JtS2V5KCkpICE9IHVuZGVmaW5lZCl7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBncm91cC5hZGRDb250cm9sKHRoaXMuZ2V0Rm9ybUtleSgpLCB0aGlzLmlucHV0KTtcbiAgfVxuXG4gIGxvYWRJbnB1dCgpIHtcbiAgICBsZXQgdmFsdWUgPSBUb3RzVGFibGVIZWxwZXIuZ2V0SXRlbVZhbHVlQnlLZXkodGhpcy5pdGVtLCB0aGlzLmNvbHVtbi5maWVsZF9rZXkpO1xuICAgIHRoaXMuaW5wdXQgPSBuZXcgRm9ybUNvbnRyb2wodmFsdWUsIHRoaXMuZ2V0VmFsaWRhdG9ycygpKTtcblxuICAgIHRoaXMub25BY3Rpb24ubmV4dCh7IGtleTogJ2lucHV0LWNyZWF0ZScsIGl0ZW06IHsgZmllbGRfa2V5OiB0aGlzLmdldEZvcm1LZXkoKSwgaW5wdXQ6IHRoaXMuaW5wdXQsIGluZGV4OiB0aGlzLmluZGV4LCBjb2x1bW46IHRoaXMuY29sdW1uIH0gfSk7XG4gIH1cblxuICBnZXRGb3JtS2V5KCk6IHN0cmluZyB7XG4gICAgaWYoQXJyYXkuaXNBcnJheSh0aGlzLmNvbHVtbi5maWVsZF9rZXkpKXtcbiAgICAgIHJldHVybiB0aGlzLmNvbHVtbi5maWVsZF9rZXkuam9pbignXycpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5jb2x1bW4uZmllbGRfa2V5ITtcbiAgICB9XG4gIH1cblxuICBnZXRWYWxpZGF0b3JzKCkgOiBWYWxpZGF0b3JGbltdIHwgVmFsaWRhdG9yRm4gfCBudWxsIHtcbiAgICBpZiAodGhpcy5jb2x1bW4uZXh0cmEgJiYgdGhpcy5jb2x1bW4uZXh0cmEudmFsaWRhdG9ycykge1xuICAgICAgcmV0dXJuIHRoaXMuY29sdW1uLmV4dHJhLnZhbGlkYXRvcnM7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgZ2V0RXJyb3JNZXNzYWdlKCkgOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5jb2x1bW4uZXh0cmEuZXJyb3JzKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBlcnJvciBvZiB0aGlzLmNvbHVtbi5leHRyYS5lcnJvcnMpIHtcbiAgICAgIGlmICh0aGlzLmlucHV0Lmhhc0Vycm9yKGVycm9yLm5hbWUpKSB7XG4gICAgICAgIHJldHVybiBlcnJvci5tZXNzYWdlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGdldEFwcGVhcmFuY2UoKSA6IE1hdEZvcm1GaWVsZEFwcGVhcmFuY2Uge1xuICAgIGlmICh0aGlzLmNvbHVtbi5leHRyYSAmJiB0aGlzLmNvbHVtbi5leHRyYS5hcHBlYXJhbmNlKSB7XG4gICAgICByZXR1cm4gdGhpcy5jb2x1bW4uZXh0cmEuYXBwZWFyYW5jZTtcbiAgICB9XG4gICAgcmV0dXJuICdmaWxsJztcbiAgfVxuXG4gIGdldExhYmVsKCkgOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIGlmICh0aGlzLmNvbHVtbi5leHRyYSAmJiB0aGlzLmNvbHVtbi5leHRyYS5sYWJlbCkge1xuICAgICAgcmV0dXJuIHRoaXMuY29sdW1uLmV4dHJhLmxhYmVsO1xuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgZ2V0Q2xhc3MoKSA6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuY29sdW1uLmV4dHJhICYmIHRoaXMuY29sdW1uLmV4dHJhLmNsYXNzKSB7XG4gICAgICByZXR1cm4gdGhpcy5jb2x1bW4uZXh0cmEuY2xhc3M7XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGdldFBsYWNlaG9sZGVyKCkgOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmNvbHVtbi5leHRyYSAmJiB0aGlzLmNvbHVtbi5leHRyYS5wbGFjZWhvbGRlcikge1xuICAgICAgcmV0dXJuIHRoaXMuY29sdW1uLmV4dHJhLnBsYWNlaG9sZGVyO1xuICAgIH1cbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBnZXRDYXB0aW9uKCkgOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmNvbHVtbi5leHRyYSAmJiB0aGlzLmNvbHVtbi5leHRyYS5jYXB0aW9uKSB7XG4gICAgICByZXR1cm4gdGhpcy5jb2x1bW4uZXh0cmEuY2FwdGlvbjtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgaGFzRXJyb3IoKSA6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmlucHV0LmludmFsaWQgJiYgKHRoaXMuaW5wdXQuZGlydHkgfHwgdGhpcy5pbnB1dC50b3VjaGVkKTtcbiAgfVxuXG4gIGdldElucHV0KCkge1xuICAgIHJldHVybiB0aGlzLmlucHV0O1xuICB9XG59XG4iLCI8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJ7e2dldENsYXNzKCl9fVwiIFthcHBlYXJhbmNlXT1cImdldEFwcGVhcmFuY2UoKVwiIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cbiAgPG1hdC1sYWJlbCAqbmdJZj1cImdldExhYmVsKClcIj4ge3sgZ2V0TGFiZWwoKSB9fSA8L21hdC1sYWJlbD5cbiAgPGlucHV0IG1hdElucHV0IHR5cGU9XCJ0ZXh0XCIgW2Zvcm1Db250cm9sXT1cImlucHV0XCIgW3BsYWNlaG9sZGVyXT1cImdldFBsYWNlaG9sZGVyKClcIi8+XG4gIDxtYXQtaGludCAqbmdJZj1cImdldENhcHRpb24oKVwiIFthbGlnbl09XCInZW5kJ1wiPiB7e2dldENhcHRpb24oKX19IDwvbWF0LWhpbnQ+XG4gIDxtYXQtZXJyb3IgKm5nSWY9XCJoYXNFcnJvcigpXCI+e3tnZXRFcnJvck1lc3NhZ2UoKX19PC9tYXQtZXJyb3I+XG48L21hdC1mb3JtLWZpZWxkPlxuIl19
@@ -1,115 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import { FormControl } from '@angular/forms';
3
- import { TotsBaseColumnComponent, TotsTableHelper } from '@tots/table';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
- import * as i2 from "@angular/forms";
7
- import * as i3 from "@angular/material/form-field";
8
- import * as i4 from "@angular/material/select";
9
- import * as i5 from "@angular/material/core";
10
- export class SelectColumnComponent extends TotsBaseColumnComponent {
11
- constructor() {
12
- super();
13
- }
14
- ngOnInit() {
15
- this.loadInput();
16
- this.loadForm();
17
- this.loadChanges();
18
- this.options = this.column.extra.options || [];
19
- }
20
- loadChanges() {
21
- this.input.valueChanges
22
- .subscribe(res => {
23
- this.onAction.next({ key: 'input-change', item: { field_key: this.getFormKey(), item: this.item, value: res, valid: this.input.valid, index: this.index } });
24
- });
25
- }
26
- loadForm() {
27
- if (this.column.extra == undefined || this.column.extra.group == undefined) {
28
- return;
29
- }
30
- let group = this.column.extra.group;
31
- if (group.get(this.getFormKey()) != undefined) {
32
- return;
33
- }
34
- group.addControl(this.getFormKey(), this.input);
35
- }
36
- loadInput() {
37
- let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);
38
- this.input = new FormControl(value, this.getValidators());
39
- this.onAction.next({ key: 'input-create', item: { field_key: this.getFormKey(), input: this.input, index: this.index, column: this.column } });
40
- }
41
- getOptionValue(option) {
42
- return TotsTableHelper.getItemValueByKey(option, this.column.extra.field_select_key);
43
- }
44
- displayOption(option) {
45
- return TotsTableHelper.getItemValueByKey(option, this.column.extra.field_print_key);
46
- }
47
- getFormKey() {
48
- if (Array.isArray(this.column.field_key)) {
49
- return this.column.field_key.join('_');
50
- }
51
- else {
52
- return this.column.field_key;
53
- }
54
- }
55
- getValidators() {
56
- if (this.column.extra && this.column.extra.validators) {
57
- return this.column.extra.validators;
58
- }
59
- return null;
60
- }
61
- getErrorMessage() {
62
- if (!this.column.extra.errors) {
63
- return '';
64
- }
65
- for (const error of this.column.extra.errors) {
66
- if (this.input.hasError(error.name)) {
67
- return error.message;
68
- }
69
- }
70
- return '';
71
- }
72
- getAppearance() {
73
- if (this.column.extra && this.column.extra.appearance) {
74
- return this.column.extra.appearance;
75
- }
76
- return 'fill';
77
- }
78
- getLabel() {
79
- if (this.column.extra && this.column.extra.label) {
80
- return this.column.extra.label;
81
- }
82
- return undefined;
83
- }
84
- getClasses() {
85
- if (this.column.extra && this.column.extra.classes) {
86
- return this.column.extra.classes;
87
- }
88
- return '';
89
- }
90
- getPlaceholder() {
91
- if (this.column.extra && this.column.extra.placeholder) {
92
- return this.column.extra.placeholder;
93
- }
94
- return '';
95
- }
96
- getCaption() {
97
- if (this.column.extra && this.column.extra.caption) {
98
- return this.column.extra.caption;
99
- }
100
- return '';
101
- }
102
- hasError() {
103
- return this.input.invalid && (this.input.dirty || this.input.touched);
104
- }
105
- getInput() {
106
- return this.input;
107
- }
108
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: SelectColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
109
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.11", type: SelectColumnComponent, selector: "tots-select-column", usesInheritance: true, ngImport: i0, template: "<mat-form-field class=\"{{getClasses()}}\" [appearance]=\"getAppearance()\" (click)=\"$event.stopPropagation()\">\n <mat-label *ngIf=\"getLabel()\"> {{ getLabel() }} </mat-label>\n <mat-select [formControl]=\"input\" [placeholder]=\"getPlaceholder()\">\n <mat-option *ngFor=\"let option of options; let index=index;\" [value]=\"getOptionValue(option)\">\n {{ displayOption(option) }}\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"getCaption()\" [align]=\"'end'\"> {{getCaption()}} </mat-hint>\n <mat-error *ngIf=\"hasError()\">{{getErrorMessage()}}</mat-error>\n</mat-form-field>\n", styles: ["mat-form-field{margin-bottom:0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }] }); }
110
- }
111
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: SelectColumnComponent, decorators: [{
112
- type: Component,
113
- args: [{ selector: 'tots-select-column', template: "<mat-form-field class=\"{{getClasses()}}\" [appearance]=\"getAppearance()\" (click)=\"$event.stopPropagation()\">\n <mat-label *ngIf=\"getLabel()\"> {{ getLabel() }} </mat-label>\n <mat-select [formControl]=\"input\" [placeholder]=\"getPlaceholder()\">\n <mat-option *ngFor=\"let option of options; let index=index;\" [value]=\"getOptionValue(option)\">\n {{ displayOption(option) }}\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"getCaption()\" [align]=\"'end'\"> {{getCaption()}} </mat-hint>\n <mat-error *ngIf=\"hasError()\">{{getErrorMessage()}}</mat-error>\n</mat-form-field>\n", styles: ["mat-form-field{margin-bottom:0}\n"] }]
114
- }], ctorParameters: function () { return []; } });
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWNvbHVtbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL2VkaXRhYmxlLWNvbHVtbnMvc3JjL2xpYi9jb2x1bW5zL3NlbGVjdC1jb2x1bW4vc2VsZWN0LWNvbHVtbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL2VkaXRhYmxlLWNvbHVtbnMvc3JjL2xpYi9jb2x1bW5zL3NlbGVjdC1jb2x1bW4vc2VsZWN0LWNvbHVtbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxXQUFXLEVBQTBCLE1BQU0sZ0JBQWdCLENBQUM7QUFFckUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7Ozs7OztBQU92RSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsdUJBQXVCO0lBS2hFO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQztJQUNqRCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWTthQUN0QixTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDZixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxVQUFVLEVB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QUFLLENBQUMsT0FBTyxDQUFDO1NBQ2xDO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7K0dBeEhVLHFCQUFxQjttR0FBckIscUJBQXFCLGlGQ1ZsQyw2bEJBVUE7OzRGREFhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkQXBwZWFyYW5jZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgVG90c0Jhc2VDb2x1bW5Db21wb25lbnQsIFRvdHNUYWJsZUhlbHBlciB9IGZyb20gJ0B0b3RzL3RhYmxlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndG90cy1zZWxlY3QtY29sdW1uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlbGVjdC1jb2x1bW4uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zZWxlY3QtY29sdW1uLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBTZWxlY3RDb2x1bW5Db21wb25lbnQgZXh0ZW5kcyBUb3RzQmFzZUNvbHVtbkNvbXBvbmVudCB7XG5cbiAgaW5wdXQhOiBGb3JtQ29udHJvbDtcbiAgcHJvdGVjdGVkIG9wdGlvbnMhIDogYW55W107XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubG9hZElucHV0KCk7XG4gICAgdGhpcy5sb2FkRm9ybSgpO1xuICAgIHRoaXMubG9hZENoYW5nZXMoKTtcbiAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLmNvbHVtbi5leHRyYS5vcHRpb25zIHx8IFtdO1xuICB9XG5cbiAgbG9hZENoYW5nZXMoKSB7XG4gICAgdGhpcy5pbnB1dC52YWx1ZUNoYW5nZXNcbiAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICB0aGlzLm9uQWN0aW9uLm5leHQoeyBrZXk6ICdpbnB1dC1jaGFuZ2UnLCBpdGVtOiB7IGZpZWxkX2tleTogdGhpcy5nZXRGb3JtS2V5KCksIGl0ZW06IHRoaXMuaXRlbSwgdmFsdWU6IHJlcywgdmFsaWQ6IHRoaXMuaW5wdXQudmFsaWQsIGluZGV4OiB0aGlzLmluZGV4IH0gfSk7XG4gICAgfSk7XG4gIH1cblxuICBsb2FkRm9ybSgpIHtcbiAgICBpZih0aGlzLmNvbHVtbi5leHRyYSA9PSB1bmRlZmluZWQgfHwgdGhpcy5jb2x1bW4uZXh0cmEuZ3JvdXAgPT0gdW5kZWZpbmVkKXtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBsZXQgZ3JvdXA6IEZvcm1Hcm91cCA9IHRoaXMuY29sdW1uLmV4dHJhLmdyb3VwO1xuICAgIGlmKGdyb3VwLmdldCh0aGlzLmdldEZvcm1LZXkoKSkgIT0gdW5kZWZpbmVkKXtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGdyb3VwLmFkZENvbnRyb2wodGhpcy5nZXRGb3JtS2V5KCksIHRoaXMuaW5wdXQpO1xuICB9XG5cbiAgbG9hZElucHV0KCkge1xuICAgIGxldCB2YWx1ZSA9IFRvdHNUYWJsZUhlbHBlci5nZXRJdGVtVmFsdWVCeUtleSh0aGlzLml0ZW0sIHRoaXMuY29sdW1uLmZpZWxkX2tleSk7XG4gICAgdGhpcy5pbnB1dCA9IG5ldyBGb3JtQ29udHJvbCh2YWx1ZSwgdGhpcy5nZXRWYWxpZGF0b3JzKCkpO1xuXG4gICAgdGhpcy5vbkFjdGlvbi5uZXh0KHsga2V5OiAnaW5wdXQtY3JlYXRlJywgaXRlbTogeyBmaWVsZF9rZXk6IHRoaXMuZ2V0Rm9ybUtleSgpLCBpbnB1dDogdGhpcy5pbnB1dCwgaW5kZXg6IHRoaXMuaW5kZXgsIGNvbHVtbjogdGhpcy5jb2x1bW4gfSB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRPcHRpb25WYWx1ZShvcHRpb246YW55KSB7XG4gICAgcmV0dXJuIFRvdHNUYWJsZUhlbHBlci5nZXRJdGVtVmFsdWVCeUtleShvcHRpb24sIHRoaXMuY29sdW1uLmV4dHJhLmZpZWxkX3NlbGVjdF9rZXkpO1xuICB9XG4gIHByb3RlY3RlZCBkaXNwbGF5T3B0aW9uKG9wdGlvbjphbnkpIHtcbiAgICByZXR1cm4gVG90c1RhYmxlSGVscGVyLmdldEl0ZW1WYWx1ZUJ5S2V5KG9wdGlvbiwgdGhpcy5jb2x1bW4uZXh0cmEuZmllbGRfcHJpbnRfa2V5KTtcbiAgfVxuXG4gIGdldEZvcm1LZXkoKTogc3RyaW5nIHtcbiAgICBpZihBcnJheS5pc0FycmF5KHRoaXMuY29sdW1uLmZpZWxkX2tleSkpe1xuICAgICAgcmV0dXJuIHRoaXMuY29sdW1uLmZpZWxkX2tleS5qb2luKCdfJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLmNvbHVtbi5maWVsZF9rZXkhO1xuICAgIH1cbiAgfVxuXG4gIGdldFZhbGlkYXRvcnMoKSA6IFZhbGlkYXRvckZuW10gfCBWYWxpZGF0b3JGbiB8IG51bGwge1xuICAgIGlmICh0aGlzLmNvbHVtbi5leHRyYSAmJiB0aGlzLmNvbHVtbi5leHRyYS52YWxpZGF0b3JzKSB7XG4gICAgICByZXR1cm4gdGhpcy5jb2x1bW4uZXh0cmEudmFsaWRhdG9ycztcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBnZXRFcnJvck1lc3NhZ2UoKSA6IHN0cmluZyB7XG4gICAgaWYgKCF0aGlzLmNvbHVtbi5leHRyYS5lcnJvcnMpIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGVycm9yIG9mIHRoaXMuY29sdW1uLmV4dHJhLmVycm9ycykge1xuICAgICAgaWYgKHRoaXMuaW5wdXQuaGFzRXJyb3IoZXJyb3IubmFtZSkpIHtcbiAgICAgICAgcmV0dXJuIGVycm9yLm1lc3NhZ2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgZ2V0QXBwZWFyYW5jZSgpIDogTWF0Rm9ybUZpZWxkQXBwZWFyYW5jZSB7XG4gICAgaWYgKHRoaXMuY29sdW1uLmV4dHJhICYmIHRoaXMuY29sdW1uLmV4dHJhLmFwcGVhcmFuY2UpIHtcbiAgICAgIHJldHVybiB0aGlzLmNvbHVtbi5leHRyYS5hcHBlYXJhbmNlO1xuICAgIH1cbiAgICByZXR1cm4gJ2ZpbGwnO1xuICB9XG5cbiAgZ2V0TGFiZWwoKSA6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKHRoaXMuY29sdW1uLmV4dHJhICYmIHRoaXMuY29sdW1uLmV4dHJhLmxhYmVsKSB7XG4gICAgICByZXR1cm4gdGhpcy5jb2x1bW4uZXh0cmEubGFiZWw7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBnZXRDbGFzc2VzKCkgOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmNvbHVtbi5leHRyYSAmJiB0aGlzLmNvbHVtbi5leHRyYS5jbGFzc2VzKSB7XG4gICAgICByZXR1cm4gdGhpcy5jb2x1bW4uZXh0cmEuY2xhc3NlcztcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgZ2V0UGxhY2Vob2xkZXIoKSA6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuY29sdW1uLmV4dHJhICYmIHRoaXMuY29sdW1uLmV4dHJhLnBsYWNlaG9sZGVyKSB7XG4gICAgICByZXR1cm4gdGhpcy5jb2x1bW4uZXh0cmEucGxhY2Vob2xkZXI7XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGdldENhcHRpb24oKSA6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuY29sdW1uLmV4dHJhICYmIHRoaXMuY29sdW1uLmV4dHJhLmNhcHRpb24pIHtcbiAgICAgIHJldHVybiB0aGlzLmNvbHVtbi5leHRyYS5jYXB0aW9uO1xuICAgIH1cbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBoYXNFcnJvcigpIDogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaW5wdXQuaW52YWxpZCAmJiAodGhpcy5pbnB1dC5kaXJ0eSB8fCB0aGlzLmlucHV0LnRvdWNoZWQpO1xuICB9XG5cbiAgZ2V0SW5wdXQoKSB7XG4gICAgcmV0dXJuIHRoaXMuaW5wdXQ7XG4gIH1cbn1cbiIsIjxtYXQtZm9ybS1maWVsZCBjbGFzcz1cInt7Z2V0Q2xhc3NlcygpfX1cIiBbYXBwZWFyYW5jZV09XCJnZXRBcHBlYXJhbmNlKClcIiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XG4gIDxtYXQtbGFiZWwgKm5nSWY9XCJnZXRMYWJlbCgpXCI+IHt7IGdldExhYmVsKCkgfX0gPC9tYXQtbGFiZWw+XG4gIDxtYXQtc2VsZWN0IFtmb3JtQ29udHJvbF09XCJpbnB1dFwiIFtwbGFjZWhvbGRlcl09XCJnZXRQbGFjZWhvbGRlcigpXCI+XG4gICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBvcHRpb25zOyBsZXQgaW5kZXg9aW5kZXg7XCIgW3ZhbHVlXT1cImdldE9wdGlvblZhbHVlKG9wdGlvbilcIj5cbiAgICAgIHt7IGRpc3BsYXlPcHRpb24ob3B0aW9uKSB9fVxuICAgIDwvbWF0LW9wdGlvbj5cbiAgPC9tYXQtc2VsZWN0PlxuICA8bWF0LWhpbnQgKm5nSWY9XCJnZXRDYXB0aW9uKClcIiBbYWxpZ25dPVwiJ2VuZCdcIj4ge3tnZXRDYXB0aW9uKCl9fSA8L21hdC1oaW50PlxuICA8bWF0LWVycm9yICpuZ0lmPVwiaGFzRXJyb3IoKVwiPnt7Z2V0RXJyb3JNZXNzYWdlKCl9fTwvbWF0LWVycm9yPlxuPC9tYXQtZm9ybS1maWVsZD5cbiJdfQ==
@@ -1,91 +0,0 @@
1
- import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
2
- import { FormArray, FormGroup } from '@angular/forms';
3
- import { TotsTableConfig } from '@tots/table';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@tots/table";
6
- export class TotsTableFullGroupComponent {
7
- constructor() {
8
- this.config = new TotsTableConfig();
9
- this.pageIndex = 0;
10
- this.pageSize = 50;
11
- this.hasPagination = true;
12
- this.messageNotFound = "No results found, please try with other search terms";
13
- this.onAction = new EventEmitter();
14
- this.formArrayMain = new FormArray([]);
15
- }
16
- onTableAction(action) {
17
- if (action.key == 'input-create') {
18
- this.addInputInGroup(action.item.input, action.item.index, action.item.column);
19
- }
20
- else if (action.key == 'input-change') {
21
- this.onAction.emit(action);
22
- setTimeout(() => {
23
- this.emitFormChange();
24
- });
25
- }
26
- else if (action.key == "input-destroy") {
27
- this.removeInputFromGroup(action.item.index, action.item.field_key);
28
- }
29
- this.onAction.emit(action);
30
- }
31
- addInputInGroup(input, index, column) {
32
- let group = this.formArrayMain.at(index);
33
- if (group) {
34
- group.addControl(this.getFormKey(column), input);
35
- this.formArrayMain.setControl(index, group);
36
- }
37
- else {
38
- group = new FormGroup({});
39
- group.addControl(this.getFormKey(column), input);
40
- this.formArrayMain.push(group);
41
- this.emitFormChange();
42
- }
43
- }
44
- removeInputFromGroup(index, field_key) {
45
- let formGroup = this.formArrayMain.at(index);
46
- if (!formGroup)
47
- return;
48
- formGroup.removeControl(field_key);
49
- let keys = Object.keys(formGroup.controls);
50
- if (keys.length == 0) {
51
- this.formArrayMain.removeAt(index);
52
- this.emitFormChange();
53
- }
54
- }
55
- getFormKey(column) {
56
- if (Array.isArray(column.field_key)) {
57
- return column.field_key.join('_');
58
- }
59
- else {
60
- return column.field_key;
61
- }
62
- }
63
- loadItems() {
64
- this.tableComp?.loadItems();
65
- }
66
- emitFormChange() {
67
- this.onAction.emit({ key: 'form-change', item: { valid: this.formArrayMain.valid, values: this.formArrayMain.value } });
68
- }
69
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: TotsTableFullGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
70
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.11", type: TotsTableFullGroupComponent, selector: "tots-table-full-group", inputs: { config: "config", pageIndex: "pageIndex", pageSize: "pageSize", hasPagination: "hasPagination", messageNotFound: "messageNotFound" }, outputs: { onAction: "onAction" }, viewQueries: [{ propertyName: "tableComp", first: true, predicate: ["tableComp"], descendants: true }], ngImport: i0, template: "<tots-table #tableComp [config]=\"config\" [pageIndex]=\"pageIndex\" [pageSize]=\"pageSize\" [hasPagination]=\"hasPagination\" [messageNotFound]=\"messageNotFound\" (onAction)=\"onTableAction($event)\"></tots-table>\n", styles: [""], dependencies: [{ kind: "component", type: i1.TotsTableComponent, selector: "tots-table", inputs: ["config", "pageIndex", "pageSize", "hasPagination", "messageNotFound"], outputs: ["onAction"] }] }); }
71
- }
72
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: TotsTableFullGroupComponent, decorators: [{
73
- type: Component,
74
- args: [{ selector: 'tots-table-full-group', template: "<tots-table #tableComp [config]=\"config\" [pageIndex]=\"pageIndex\" [pageSize]=\"pageSize\" [hasPagination]=\"hasPagination\" [messageNotFound]=\"messageNotFound\" (onAction)=\"onTableAction($event)\"></tots-table>\n" }]
75
- }], propDecorators: { tableComp: [{
76
- type: ViewChild,
77
- args: ['tableComp']
78
- }], config: [{
79
- type: Input
80
- }], pageIndex: [{
81
- type: Input
82
- }], pageSize: [{
83
- type: Input
84
- }], hasPagination: [{
85
- type: Input
86
- }], messageNotFound: [{
87
- type: Input
88
- }], onAction: [{
89
- type: Output
90
- }] } });
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS1mdWxsLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RvdHMvZWRpdGFibGUtY29sdW1ucy9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS1mdWxsLWdyb3VwL3RvdHMtdGFibGUtZnVsbC1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL2VkaXRhYmxlLWNvbHVtbnMvc3JjL2xpYi9jb21wb25lbnRzL3RvdHMtdGFibGUtZnVsbC1ncm91cC90b3RzLXRhYmxlLWZ1bGwtZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFFLFNBQVMsRUFBZSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRSxPQUFPLEVBQW1ELGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7O0FBTy9GLE1BQU0sT0FBTywyQkFBMkI7SUFMeEM7UUFTVyxXQUFNLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUMvQixjQUFTLEdBQVcsQ0FBQyxDQUFDO1FBQ3RCLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFDdEIsa0JBQWEsR0FBWSxJQUFJLENBQUM7UUFDOUIsb0JBQWUsR0FBVyxzREFBc0QsQ0FBQztRQUVoRixhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7UUFFekQsa0JBQWEsR0FBMEIsSUFBSSxTQUFTLENBQVksRUFBRSxDQUFDLENBQUM7S0FnRXJFO0lBOURXLGFBQWEsQ0FBQyxNQUF1QjtRQUM3QyxJQUFJLE1BQU0sQ0FBQyxHQUFHLElBQUksY0FBYyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxlQUFlLENBQUMs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QjttR0FBM0IsMkJBQTJCLHdWQ1Z4QywyTkFDQTs7NEZEU2EsMkJBQTJCO2tCQUx2QyxTQUFTOytCQUNFLHVCQUF1Qjs4QkFNQyxTQUFTO3NCQUExQyxTQUFTO3VCQUFDLFdBQVc7Z0JBRWIsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBRUksUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1BcnJheSwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRvdHNMaXN0UmVzcG9uc2UgfSBmcm9tICdAdG90cy9jb3JlJztcbmltcG9ydCB7IFRvdHNBY3Rpb25UYWJsZSwgVG90c0NvbHVtbiwgVG90c1RhYmxlQ29tcG9uZW50LCBUb3RzVGFibGVDb25maWcgfSBmcm9tICdAdG90cy90YWJsZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RvdHMtdGFibGUtZnVsbC1ncm91cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90b3RzLXRhYmxlLWZ1bGwtZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b3RzLXRhYmxlLWZ1bGwtZ3JvdXAuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIFRvdHNUYWJsZUZ1bGxHcm91cENvbXBvbmVudCB7XG5cbiAgQFZpZXdDaGlsZCgndGFibGVDb21wJykgcHJvdGVjdGVkIHRhYmxlQ29tcCE6IFRvdHNUYWJsZUNvbXBvbmVudDtcblxuICBASW5wdXQoKSBjb25maWcgPSBuZXcgVG90c1RhYmxlQ29uZmlnKCk7XG4gIEBJbnB1dCgpIHBhZ2VJbmRleDogbnVtYmVyID0gMDtcbiAgQElucHV0KCkgcGFnZVNpemU6IG51bWJlciA9IDUwO1xuICBASW5wdXQoKSBoYXNQYWdpbmF0aW9uOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgbWVzc2FnZU5vdEZvdW5kOiBzdHJpbmcgPSBcIk5vIHJlc3VsdHMgZm91bmQsIHBsZWFzZSB0cnkgd2l0aCBvdGhlciBzZWFyY2ggdGVybXNcIjtcblxuICBAT3V0cHV0KCkgb25BY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPFRvdHNBY3Rpb25UYWJsZT4oKTtcblxuICBmb3JtQXJyYXlNYWluIDogRm9ybUFycmF5PEZvcm1Hcm91cD4gPSBuZXcgRm9ybUFycmF5PEZvcm1Hcm91cD4oW10pO1xuXG4gIHByb3RlY3RlZCBvblRhYmxlQWN0aW9uKGFjdGlvbjogVG90c0FjdGlvblRhYmxlKSB7XG4gICAgaWYgKGFjdGlvbi5rZXkgPT0gJ2lucHV0LWNyZWF0ZScpIHtcbiAgICAgIHRoaXMuYWRkSW5wdXRJbkdyb3VwKGFjdGlvbi5pdGVtLmlucHV0LCBhY3Rpb24uaXRlbS5pbmRleCwgYWN0aW9uLml0ZW0uY29sdW1uKTtcblxuICAgIH0gZWxzZSBpZiAoYWN0aW9uLmtleSA9PSAnaW5wdXQtY2hhbmdlJykge1xuICAgICAgdGhpcy5vbkFjdGlvbi5lbWl0KGFjdGlvbik7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5lbWl0Rm9ybUNoYW5nZSgpO1xuICAgICAgfSk7XG5cbiAgICB9IGVsc2UgaWYgKGFjdGlvbi5rZXkgPT0gXCJpbnB1dC1kZXN0cm95XCIgKSB7XG4gICAgICB0aGlzLnJlbW92ZUlucHV0RnJvbUdyb3VwKGFjdGlvbi5pdGVtLmluZGV4LCBhY3Rpb24uaXRlbS5maWVsZF9rZXkpO1xuICAgIH1cblxuICAgIHRoaXMub25BY3Rpb24uZW1pdChhY3Rpb24pO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRJbnB1dEluR3JvdXAoaW5wdXQ6IEZvcm1Db250cm9sLCBpbmRleDogbnVtYmVyLCBjb2x1bW46IFRvdHNDb2x1bW4pIHtcbiAgICBsZXQgZ3JvdXAgPSB0aGlzLmZvcm1BcnJheU1haW4uYXQoaW5kZXgpO1xuICAgIFxuICAgIGlmIChncm91cCkge1xuICAgICAgZ3JvdXAuYWRkQ29udHJvbCh0aGlzLmdldEZvcm1LZXkoY29sdW1uKSwgaW5wdXQpO1xuICAgICAgdGhpcy5mb3JtQXJyYXlNYWluLnNldENvbnRyb2woaW5kZXgsIGdyb3VwKTtcblxuICAgIH0gZWxzZSB7XG4gICAgICBncm91cCA9IG5ldyBGb3JtR3JvdXAoe30pO1xuICAgICAgZ3JvdXAuYWRkQ29udHJvbCh0aGlzLmdldEZvcm1LZXkoY29sdW1uKSwgaW5wdXQpO1xuICAgICAgdGhpcy5mb3JtQXJyYXlNYWluLnB1c2goZ3JvdXApO1xuICAgICAgdGhpcy5lbWl0Rm9ybUNoYW5nZSgpO1xuICAgIH1cbiAgICBcbiAgfVxuICBwcml2YXRlIHJlbW92ZUlucHV0RnJvbUdyb3VwKGluZGV4OiBudW1iZXIsIGZpZWxkX2tleTogc3RyaW5nKSB7XG4gICAgbGV0IGZvcm1Hcm91cCA9IHRoaXMuZm9ybUFycmF5TWFpbi5hdChpbmRleCk7XG4gICAgaWYgKCFmb3JtR3JvdXApXG4gICAgICByZXR1cm5cblxuICAgIGZvcm1Hcm91cC5yZW1vdmVDb250cm9sKGZpZWxkX2tleSk7XG5cbiAgICBsZXQga2V5cyA9IE9iamVjdC5rZXlzKGZvcm1Hcm91cC5jb250cm9scyk7XG5cbiAgICBpZiAoa2V5cy5sZW5ndGggPT0gMCkge1xuICAgICAgdGhpcy5mb3JtQXJyYXlNYWluLnJlbW92ZUF0KGluZGV4KTtcbiAgICAgIHRoaXMuZW1pdEZvcm1DaGFuZ2UoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldEZvcm1LZXkoY29sdW1uOiBUb3RzQ29sdW1uKTogc3RyaW5nIHtcbiAgICBpZihBcnJheS5pc0FycmF5KGNvbHVtbi5maWVsZF9rZXkpKXtcbiAgICAgIHJldHVybiBjb2x1bW4uZmllbGRfa2V5LmpvaW4oJ18nKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGNvbHVtbi5maWVsZF9rZXkhO1xuICAgIH1cbiAgfVxuXG4gIGxvYWRJdGVtcygpIHtcbiAgICB0aGlzLnRhYmxlQ29tcD8ubG9hZEl0ZW1zKCk7XG4gIH1cblxuICBwcml2YXRlIGVtaXRGb3JtQ2hhbmdlKCkge1xuICAgIHRoaXMub25BY3Rpb24uZW1pdCh7IGtleTogJ2Zvcm0tY2hhbmdlJywgaXRlbTogeyB2YWxpZDogdGhpcy5mb3JtQXJyYXlNYWluLnZhbGlkLCB2YWx1ZXM6IHRoaXMuZm9ybUFycmF5TWFpbi52YWx1ZSB9IH0pO1xuICB9XG59XG4iLCI8dG90cy10YWJsZSAjdGFibGVDb21wIFtjb25maWddPVwiY29uZmlnXCIgW3BhZ2VJbmRleF09XCJwYWdlSW5kZXhcIiBbcGFnZVNpemVdPVwicGFnZVNpemVcIiBbaGFzUGFnaW5hdGlvbl09XCJoYXNQYWdpbmF0aW9uXCIgW21lc3NhZ2VOb3RGb3VuZF09XCJtZXNzYWdlTm90Rm91bmRcIiAob25BY3Rpb24pPVwib25UYWJsZUFjdGlvbigkZXZlbnQpXCI+PC90b3RzLXRhYmxlPlxuIl19
@@ -1,75 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { FormsModule, ReactiveFormsModule } from '@angular/forms';
4
- /** Angular Material */
5
- import { MatInputModule } from '@angular/material/input';
6
- import { MatFormFieldModule } from '@angular/material/form-field';
7
- import { MatSelectModule } from '@angular/material/select';
8
- /** Tots Libraries */
9
- import { TotsTableModule } from '@tots/table';
10
- /** Columns */
11
- import { InputColumnComponent } from './columns/input-column/input-column.component';
12
- import { SelectColumnComponent } from './columns/select-column/select-column.component';
13
- /** Components */
14
- import { TotsTableFullGroupComponent } from './components/tots-table-full-group/tots-table-full-group.component';
15
- import * as i0 from "@angular/core";
16
- export class TotsEditableColumnsModule {
17
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: TotsEditableColumnsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
18
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.11", ngImport: i0, type: TotsEditableColumnsModule, declarations: [
19
- /** Columns */
20
- InputColumnComponent,
21
- SelectColumnComponent,
22
- /** Components */
23
- TotsTableFullGroupComponent], imports: [CommonModule,
24
- FormsModule,
25
- ReactiveFormsModule,
26
- /** Angular Material */
27
- MatFormFieldModule,
28
- MatInputModule,
29
- MatSelectModule,
30
- /** Tots Libraries */
31
- TotsTableModule], exports: [
32
- /** Columns */
33
- InputColumnComponent,
34
- /** Components */
35
- TotsTableFullGroupComponent] }); }
36
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: TotsEditableColumnsModule, imports: [CommonModule,
37
- FormsModule,
38
- ReactiveFormsModule,
39
- /** Angular Material */
40
- MatFormFieldModule,
41
- MatInputModule,
42
- MatSelectModule,
43
- /** Tots Libraries */
44
- TotsTableModule] }); }
45
- }
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: TotsEditableColumnsModule, decorators: [{
47
- type: NgModule,
48
- args: [{
49
- declarations: [
50
- /** Columns */
51
- InputColumnComponent,
52
- SelectColumnComponent,
53
- /** Components */
54
- TotsTableFullGroupComponent
55
- ],
56
- imports: [
57
- CommonModule,
58
- FormsModule,
59
- ReactiveFormsModule,
60
- /** Angular Material */
61
- MatFormFieldModule,
62
- MatInputModule,
63
- MatSelectModule,
64
- /** Tots Libraries */
65
- TotsTableModule
66
- ],
67
- exports: [
68
- /** Columns */
69
- InputColumnComponent,
70
- /** Components */
71
- TotsTableFullGroupComponent
72
- ]
73
- }]
74
- }] });
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdGFibGUtY29sdW1ucy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL2VkaXRhYmxlLWNvbHVtbnMvc3JjL2xpYi9lZGl0YWJsZS1jb2x1bW5zLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsdUJBQXVCO0FBQ3ZCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFM0QscUJBQXFCO0FBQ3JCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFOUMsY0FBYztBQUNkLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBRXhGLGlCQUFpQjtBQUNqQixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQzs7QUFvQ2pILE1BQU0sT0FBTyx5QkFBeUI7K0dBQXpCLHlCQUF5QjtnSEFBekIseUJBQXlCO1lBNUJsQyxjQUFjO1lBQ2Qsb0JBQW9CO1lBQ3BCLHFCQUFxQjtZQUVyQixpQkFBaUI7WUFDakIsMkJBQTJCLGFBRzNCLFlBQVk7WUFDWixXQUFXO1lBQ1gsbUJBQW1CO1lBRW5CLHVCQUF1QjtZQUN2QixrQkFBa0I7WUFDbEIsY0FBYztZQUNkLGVBQWU7WUFFZixxQkFBcUI7WUFDckIsZUFBZTtZQUdmLGNBQWM7WUFDZCxvQkFBb0I7WUFFcEIsaUJBQWlCO1lBQ2pCLDJCQUEyQjtnSEFHbEIseUJBQXlCLFlBcEJsQyxZQUFZO1lBQ1osV0FBVztZQUNYLG1CQUFtQjtZQUVuQix1QkFBdUI7WUFDdkIsa0JBQWtCO1lBQ2xCLGNBQWM7WUFDZCxlQUFlO1lBRWYscUJBQXFCO1lBQ3JCLGVBQWU7OzRGQVVOLHlCQUF5QjtrQkE5QnJDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGNBQWM7d0JBQ2Qsb0JBQW9CO3dCQUNwQixxQkFBcUI7d0JBRXJCLGlCQUFpQjt3QkFDakIsMkJBQTJCO3FCQUM1QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLG1CQUFtQjt3QkFFbkIsdUJBQXVCO3dCQUN2QixrQkFBa0I7d0JBQ2xCLGNBQWM7d0JBQ2QsZUFBZTt3QkFFZixxQkFBcUI7d0JBQ3JCLGVBQWU7cUJBQ2hCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxjQUFjO3dCQUNkLG9CQUFvQjt3QkFFcEIsaUJBQWlCO3dCQUNqQiwyQkFBMkI7cUJBQzVCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuLyoqIEFuZ3VsYXIgTWF0ZXJpYWwgKi9cbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xuXG4vKiogVG90cyBMaWJyYXJpZXMgKi9cbmltcG9ydCB7IFRvdHNUYWJsZU1vZHVsZSB9IGZyb20gJ0B0b3RzL3RhYmxlJztcblxuLyoqIENvbHVtbnMgKi9cbmltcG9ydCB7IElucHV0Q29sdW1uQ29tcG9uZW50IH0gZnJvbSAnLi9jb2x1bW5zL2lucHV0LWNvbHVtbi9pbnB1dC1jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7IFNlbGVjdENvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4vY29sdW1ucy9zZWxlY3QtY29sdW1uL3NlbGVjdC1jb2x1bW4uY29tcG9uZW50JztcblxuLyoqIENvbXBvbmVudHMgKi9cbmltcG9ydCB7IFRvdHNUYWJsZUZ1bGxHcm91cENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90b3RzLXRhYmxlLWZ1bGwtZ3JvdXAvdG90cy10YWJsZS1mdWxsLWdyb3VwLmNvbXBvbmVudCc7XG5cblxuXG5cblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgLyoqIENvbHVtbnMgKi9cbiAgICBJbnB1dENvbHVtbkNvbXBvbmVudCxcbiAgICBTZWxlY3RDb2x1bW5Db21wb25lbnQsXG5cbiAgICAvKiogQ29tcG9uZW50cyAqL1xuICAgIFRvdHNUYWJsZUZ1bGxHcm91cENvbXBvbmVudFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG5cbiAgICAvKiogQW5ndWxhciBNYXRlcmlhbCAqL1xuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICBNYXRTZWxlY3RNb2R1bGUsXG5cbiAgICAvKiogVG90cyBMaWJyYXJpZXMgKi9cbiAgICBUb3RzVGFibGVNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIC8qKiBDb2x1bW5zICovXG4gICAgSW5wdXRDb2x1bW5Db21wb25lbnQsXG5cbiAgICAvKiogQ29tcG9uZW50cyAqL1xuICAgIFRvdHNUYWJsZUZ1bGxHcm91cENvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFRvdHNFZGl0YWJsZUNvbHVtbnNNb2R1bGUgeyB9XG4iXX0=
@@ -1,8 +0,0 @@
1
- export class TotsValidator {
2
- constructor(validator, name, message) {
3
- this.validator = validator;
4
- this.name = name;
5
- this.message = message;
6
- }
7
- }
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy12YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL2VkaXRhYmxlLWNvbHVtbnMvc3JjL2xpYi9lbnRpdGllcy90b3RzLXZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sYUFBYTtJQUt0QixZQUFZLFNBQXFCLEVBQUUsSUFBVyxFQUFFLE9BQWM7UUFDMUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDM0IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDM0IsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmFsaWRhdG9yRm4gfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIlxuXG5leHBvcnQgY2xhc3MgVG90c1ZhbGlkYXRvciB7XG4gICAgdmFsaWRhdG9yOiBWYWxpZGF0b3JGbjtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgbWVzc2FnZTogc3RyaW5nO1xuICAgIFxuICAgIGNvbnN0cnVjdG9yKHZhbGlkYXRvcjpWYWxpZGF0b3JGbiwgbmFtZTpzdHJpbmcsIG1lc3NhZ2U6c3RyaW5nKSB7XG4gICAgICAgIHRoaXMudmFsaWRhdG9yID0gdmFsaWRhdG9yO1xuICAgICAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICAgICAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlO1xuICAgIH1cbn0iXX0=
@@ -1,26 +0,0 @@
1
- /*
2
- * Public API Surface of editable-columns
3
- */
4
- /**
5
- * Entities
6
- */
7
- export * from './lib/entities/tots-validator';
8
- /**
9
- * Columns
10
- */
11
- export * from './lib/columns/input-column/input-column.component';
12
- export * from './lib/columns/select-column/select-column.component';
13
- /**
14
- * Components
15
- */
16
- export * from './lib/components/tots-table-full-group/tots-table-full-group.component';
17
- /**
18
- * Factories
19
- */
20
- export * from './lib/column-factories/tots-input-column';
21
- export * from './lib/column-factories/tots-select-column';
22
- /**
23
- * Modules
24
- */
25
- export * from './lib/editable-columns.module';
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3RvdHMvZWRpdGFibGUtY29sdW1ucy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVIOztHQUVHO0FBQ0gsY0FBYywrQkFBK0IsQ0FBQztBQUU5Qzs7R0FFRztBQUNILGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxxREFBcUQsQ0FBQztBQUVwRTs7R0FFRztBQUNILGNBQWMsd0VBQXdFLENBQUM7QUFFdkY7O0dBRUc7QUFDSCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsMkNBQTJDLENBQUM7QUFFMUQ7O0dBRUc7QUFDSCxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBlZGl0YWJsZS1jb2x1bW5zXG4gKi9cblxuLyoqXG4gKiBFbnRpdGllc1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbnRpdGllcy90b3RzLXZhbGlkYXRvcic7XG5cbi8qKlxuICogQ29sdW1uc1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb2x1bW5zL2lucHV0LWNvbHVtbi9pbnB1dC1jb2x1bW4uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbHVtbnMvc2VsZWN0LWNvbHVtbi9zZWxlY3QtY29sdW1uLmNvbXBvbmVudCc7XG5cbi8qKlxuICogQ29tcG9uZW50c1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RvdHMtdGFibGUtZnVsbC1ncm91cC90b3RzLXRhYmxlLWZ1bGwtZ3JvdXAuY29tcG9uZW50JztcblxuLyoqXG4gKiBGYWN0b3JpZXNcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29sdW1uLWZhY3Rvcmllcy90b3RzLWlucHV0LWNvbHVtbic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb2x1bW4tZmFjdG9yaWVzL3RvdHMtc2VsZWN0LWNvbHVtbic7XG5cbi8qKlxuICogTW9kdWxlc1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9lZGl0YWJsZS1jb2x1bW5zLm1vZHVsZSc7XG4iXX0=
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy1lZGl0YWJsZS1jb2x1bW5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy9lZGl0YWJsZS1jb2x1bW5zL3NyYy90b3RzLWVkaXRhYmxlLWNvbHVtbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -1,7 +0,0 @@
1
- import { TotsColumn } from "@tots/table";
2
- import { FormGroup } from "@angular/forms";
3
- import { MatFormFieldAppearance } from "@angular/material/form-field";
4
- import { TotsValidator } from "../entities/tots-validator";
5
- export declare class TotsInputColumn extends TotsColumn {
6
- constructor(id: string, fieldKey: string | string[], validators?: TotsValidator[], title?: string, formGroup?: FormGroup, label?: string, placeholder?: string, hint?: string, cssClass?: string, appearance?: MatFormFieldAppearance);
7
- }
@@ -1,7 +0,0 @@
1
- import { TotsColumn, TotsColumnOption } from "@tots/table";
2
- import { FormGroup } from "@angular/forms";
3
- import { MatFormFieldAppearance } from "@angular/material/form-field";
4
- import { TotsValidator } from "../entities/tots-validator";
5
- export declare class TotsSelectColumn extends TotsColumn {
6
- constructor(id: string, fieldKey: string | string[], options: TotsColumnOption[], validators?: TotsValidator[], title?: string, formGroup?: FormGroup, label?: string, placeholder?: string, hint?: string, cssClass?: string, appearance?: MatFormFieldAppearance);
7
- }
@@ -1,26 +0,0 @@
1
- import { OnDestroy } from '@angular/core';
2
- import { FormControl, ValidatorFn } from '@angular/forms';
3
- import { MatFormFieldAppearance } from '@angular/material/form-field';
4
- import { TotsBaseColumnComponent } from '@tots/table';
5
- import * as i0 from "@angular/core";
6
- export declare class InputColumnComponent extends TotsBaseColumnComponent implements OnDestroy {
7
- input: FormControl;
8
- constructor();
9
- ngOnInit(): void;
10
- ngOnDestroy(): void;
11
- loadChanges(): void;
12
- loadForm(): void;
13
- loadInput(): void;
14
- getFormKey(): string;
15
- getValidators(): ValidatorFn[] | ValidatorFn | null;
16
- getErrorMessage(): string;
17
- getAppearance(): MatFormFieldAppearance;
18
- getLabel(): string | undefined;
19
- getClass(): string;
20
- getPlaceholder(): string;
21
- getCaption(): string;
22
- hasError(): boolean;
23
- getInput(): FormControl<any>;
24
- static ɵfac: i0.ɵɵFactoryDeclaration<InputColumnComponent, never>;
25
- static ɵcmp: i0.ɵɵComponentDeclaration<InputColumnComponent, "tots-input-column", never, {}, {}, never, never, false, never>;
26
- }
@@ -1,27 +0,0 @@
1
- import { FormControl, ValidatorFn } from '@angular/forms';
2
- import { MatFormFieldAppearance } from '@angular/material/form-field';
3
- import { TotsBaseColumnComponent } from '@tots/table';
4
- import * as i0 from "@angular/core";
5
- export declare class SelectColumnComponent extends TotsBaseColumnComponent {
6
- input: FormControl;
7
- protected options: any[];
8
- constructor();
9
- ngOnInit(): void;
10
- loadChanges(): void;
11
- loadForm(): void;
12
- loadInput(): void;
13
- protected getOptionValue(option: any): any;
14
- protected displayOption(option: any): any;
15
- getFormKey(): string;
16
- getValidators(): ValidatorFn[] | ValidatorFn | null;
17
- getErrorMessage(): string;
18
- getAppearance(): MatFormFieldAppearance;
19
- getLabel(): string | undefined;
20
- getClasses(): string;
21
- getPlaceholder(): string;
22
- getCaption(): string;
23
- hasError(): boolean;
24
- getInput(): FormControl<any>;
25
- static ɵfac: i0.ɵɵFactoryDeclaration<SelectColumnComponent, never>;
26
- static ɵcmp: i0.ɵɵComponentDeclaration<SelectColumnComponent, "tots-select-column", never, {}, {}, never, never, false, never>;
27
- }
@@ -1,22 +0,0 @@
1
- import { EventEmitter } from '@angular/core';
2
- import { FormArray, FormGroup } from '@angular/forms';
3
- import { TotsActionTable, TotsTableComponent, TotsTableConfig } from '@tots/table';
4
- import * as i0 from "@angular/core";
5
- export declare class TotsTableFullGroupComponent {
6
- protected tableComp: TotsTableComponent;
7
- config: TotsTableConfig;
8
- pageIndex: number;
9
- pageSize: number;
10
- hasPagination: boolean;
11
- messageNotFound: string;
12
- onAction: EventEmitter<TotsActionTable>;
13
- formArrayMain: FormArray<FormGroup>;
14
- protected onTableAction(action: TotsActionTable): void;
15
- private addInputInGroup;
16
- private removeInputFromGroup;
17
- private getFormKey;
18
- loadItems(): void;
19
- private emitFormChange;
20
- static ɵfac: i0.ɵɵFactoryDeclaration<TotsTableFullGroupComponent, never>;
21
- static ɵcmp: i0.ɵɵComponentDeclaration<TotsTableFullGroupComponent, "tots-table-full-group", never, { "config": { "alias": "config"; "required": false; }; "pageIndex": { "alias": "pageIndex"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; "hasPagination": { "alias": "hasPagination"; "required": false; }; "messageNotFound": { "alias": "messageNotFound"; "required": false; }; }, { "onAction": "onAction"; }, never, never, false, never>;
22
- }
@@ -1,15 +0,0 @@
1
- import * as i0 from "@angular/core";
2
- import * as i1 from "./columns/input-column/input-column.component";
3
- import * as i2 from "./columns/select-column/select-column.component";
4
- import * as i3 from "./components/tots-table-full-group/tots-table-full-group.component";
5
- import * as i4 from "@angular/common";
6
- import * as i5 from "@angular/forms";
7
- import * as i6 from "@angular/material/form-field";
8
- import * as i7 from "@angular/material/input";
9
- import * as i8 from "@angular/material/select";
10
- import * as i9 from "@tots/table";
11
- export declare class TotsEditableColumnsModule {
12
- static ɵfac: i0.ɵɵFactoryDeclaration<TotsEditableColumnsModule, never>;
13
- static ɵmod: i0.ɵɵNgModuleDeclaration<TotsEditableColumnsModule, [typeof i1.InputColumnComponent, typeof i2.SelectColumnComponent, typeof i3.TotsTableFullGroupComponent], [typeof i4.CommonModule, typeof i5.FormsModule, typeof i5.ReactiveFormsModule, typeof i6.MatFormFieldModule, typeof i7.MatInputModule, typeof i8.MatSelectModule, typeof i9.TotsTableModule], [typeof i1.InputColumnComponent, typeof i3.TotsTableFullGroupComponent]>;
14
- static ɵinj: i0.ɵɵInjectorDeclaration<TotsEditableColumnsModule>;
15
- }
@@ -1,7 +0,0 @@
1
- import { ValidatorFn } from "@angular/forms";
2
- export declare class TotsValidator {
3
- validator: ValidatorFn;
4
- name: string;
5
- message: string;
6
- constructor(validator: ValidatorFn, name: string, message: string);
7
- }
package/public-api.d.ts DELETED
@@ -1,22 +0,0 @@
1
- /**
2
- * Entities
3
- */
4
- export * from './lib/entities/tots-validator';
5
- /**
6
- * Columns
7
- */
8
- export * from './lib/columns/input-column/input-column.component';
9
- export * from './lib/columns/select-column/select-column.component';
10
- /**
11
- * Components
12
- */
13
- export * from './lib/components/tots-table-full-group/tots-table-full-group.component';
14
- /**
15
- * Factories
16
- */
17
- export * from './lib/column-factories/tots-input-column';
18
- export * from './lib/column-factories/tots-select-column';
19
- /**
20
- * Modules
21
- */
22
- export * from './lib/editable-columns.module';