@tots/table 15.0.1 → 15.0.3

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.
@@ -8,10 +8,11 @@ export class BasePrintColumnComponent {
8
8
  const view = this.viewContainerRef.createComponent(this.column.component);
9
9
  view.instance.column = this.column;
10
10
  view.instance.item = this.item;
11
+ view.instance.onAction = this.onAction;
11
12
  }
12
13
  }
13
14
  BasePrintColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: BasePrintColumnComponent, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
14
- BasePrintColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: { column: "column", item: "item" }, ngImport: i0, template: "<div #contentColumn></div>", styles: [""] });
15
+ BasePrintColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: { column: "column", item: "item", onAction: "onAction" }, ngImport: i0, template: "<div #contentColumn></div>", styles: [""] });
15
16
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: BasePrintColumnComponent, decorators: [{
16
17
  type: Component,
17
18
  args: [{ selector: 'tots-base-print-column', template: "<div #contentColumn></div>" }]
@@ -19,5 +20,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
19
20
  type: Input
20
21
  }], item: [{
21
22
  type: Input
23
+ }], onAction: [{
24
+ type: Input
22
25
  }] } });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1wcmludC1jb2x1bW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbHVtbnMvYmFzZS1wcmludC1jb2x1bW4vYmFzZS1wcmludC1jb2x1bW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbHVtbnMvYmFzZS1wcmludC1jb2x1bW4vYmFzZS1wcmludC1jb2x1bW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQW9CLE1BQU0sZUFBZSxDQUFDOztBQVFuRSxNQUFNLE9BQU8sd0JBQXdCO0lBS25DLFlBQ1ksZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFDMUMsQ0FBQztJQUVMLFFBQVE7UUFDTixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDcEUsSUFBSSxDQUFDLFFBQVMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUNwQyxJQUFJLENBQUMsUUFBUyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3hDLENBQUM7O3FIQWJVLHdCQUF3Qjt5R0FBeEIsd0JBQXdCLDBHQ1JyQyw0QkFBMEI7MkZEUWIsd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNFLHdCQUF3Qjt1R0FNekIsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvdHNDb2x1bW4gfSBmcm9tICcuLi8uLi9lbnRpdGllcy90b3RzLWNvbHVtbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RvdHMtYmFzZS1wcmludC1jb2x1bW4nLFxuICB0ZW1wbGF0ZVVybDogJy4vYmFzZS1wcmludC1jb2x1bW4uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9iYXNlLXByaW50LWNvbHVtbi5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFzZVByaW50Q29sdW1uQ29tcG9uZW50IHtcblxuICBASW5wdXQoKSBjb2x1bW4hOiBUb3RzQ29sdW1uO1xuICBASW5wdXQoKSBpdGVtOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWZcbiAgKSB7IH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCB2aWV3ID0gdGhpcy52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudCh0aGlzLmNvbHVtbi5jb21wb25lbnQpO1xuICAgICg8YW55PnZpZXcuaW5zdGFuY2UpLmNvbHVtbiA9IHRoaXMuY29sdW1uO1xuICAgICg8YW55PnZpZXcuaW5zdGFuY2UpLml0ZW0gPSB0aGlzLml0ZW07XG4gIH1cbn1cbiIsIjxkaXYgI2NvbnRlbnRDb2x1bW4+PC9kaXY+Il19
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1wcmludC1jb2x1bW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbHVtbnMvYmFzZS1wcmludC1jb2x1bW4vYmFzZS1wcmludC1jb2x1bW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbHVtbnMvYmFzZS1wcmludC1jb2x1bW4vYmFzZS1wcmludC1jb2x1bW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQW9CLE1BQU0sZUFBZSxDQUFDOztBQVVuRSxNQUFNLE9BQU8sd0JBQXdCO0lBTW5DLFlBQ1ksZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFDMUMsQ0FBQztJQUVMLFFBQVE7UUFDTixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDcEUsSUFBSSxDQUFDLFFBQVMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUNwQyxJQUFJLENBQUMsUUFBUyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxRQUFTLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDaEQsQ0FBQzs7cUhBZlUsd0JBQXdCO3lHQUF4Qix3QkFBd0IsZ0lDVnJDLDRCQUEwQjsyRkRVYix3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0Usd0JBQXdCO3VHQU16QixNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBUb3RzQWN0aW9uVGFibGUgfSBmcm9tICcuLi8uLi9lbnRpdGllcy90b3RzLWFjdGlvbi10YWJsZSc7XG5pbXBvcnQgeyBUb3RzQ29sdW1uIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvdG90cy1jb2x1bW4nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0b3RzLWJhc2UtcHJpbnQtY29sdW1uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Jhc2UtcHJpbnQtY29sdW1uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYmFzZS1wcmludC1jb2x1bW4uY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIEJhc2VQcmludENvbHVtbkNvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgY29sdW1uITogVG90c0NvbHVtbjtcbiAgQElucHV0KCkgaXRlbTogYW55O1xuICBASW5wdXQoKSBvbkFjdGlvbiE6IFN1YmplY3Q8VG90c0FjdGlvblRhYmxlPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZlxuICApIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IHZpZXcgPSB0aGlzLnZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KHRoaXMuY29sdW1uLmNvbXBvbmVudCk7XG4gICAgKDxhbnk+dmlldy5pbnN0YW5jZSkuY29sdW1uID0gdGhpcy5jb2x1bW47XG4gICAgKDxhbnk+dmlldy5pbnN0YW5jZSkuaXRlbSA9IHRoaXMuaXRlbTtcbiAgICAoPGFueT52aWV3Lmluc3RhbmNlKS5vbkFjdGlvbiA9IHRoaXMub25BY3Rpb247XG4gIH1cbn1cbiIsIjxkaXYgI2NvbnRlbnRDb2x1bW4+PC9kaXY+Il19
@@ -0,0 +1,21 @@
1
+ import { Component } from '@angular/core';
2
+ import { TotsBaseColumnComponent } from '../tots-base-column.component';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "@angular/material/icon";
6
+ import * as i3 from "@angular/material/button";
7
+ import * as i4 from "@angular/material/menu";
8
+ export class MoreMenuColumnComponent extends TotsBaseColumnComponent {
9
+ clickButton(itemAction, $event) {
10
+ this.onAction.next({ key: itemAction.key, item: this.item });
11
+ $event.preventDefault();
12
+ return false;
13
+ }
14
+ }
15
+ MoreMenuColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: MoreMenuColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
16
+ MoreMenuColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: MoreMenuColumnComponent, selector: "tots-more-menu-column", usesInheritance: true, ngImport: i0, template: "<button mat-icon-button [matMenuTriggerFor]=\"actions\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\n<mat-menu #actions=\"matMenu\">\n <button mat-menu-item *ngFor=\"let button of column.extra?.actions\" (click)=\"clickButton(button, $event)\">\n <mat-icon *ngIf=\"button.icon\">{{ button.icon }}</mat-icon> {{ button.title }}\n </button>\n</mat-menu>", styles: [""], 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: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i4.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }] });
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: MoreMenuColumnComponent, decorators: [{
18
+ type: Component,
19
+ args: [{ selector: 'tots-more-menu-column', template: "<button mat-icon-button [matMenuTriggerFor]=\"actions\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\n<mat-menu #actions=\"matMenu\">\n <button mat-menu-item *ngFor=\"let button of column.extra?.actions\" (click)=\"clickButton(button, $event)\">\n <mat-icon *ngIf=\"button.icon\">{{ button.icon }}</mat-icon> {{ button.title }}\n </button>\n</mat-menu>" }]
20
+ }] });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9yZS1tZW51LWNvbHVtbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL3RhYmxlL3NyYy9saWIvY29sdW1ucy9tb3JlLW1lbnUtY29sdW1uL21vcmUtbWVudS1jb2x1bW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbHVtbnMvbW9yZS1tZW51LWNvbHVtbi9tb3JlLW1lbnUtY29sdW1uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7OztBQU94RSxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsdUJBQXVCO0lBRWxFLFdBQVcsQ0FBQyxVQUFlLEVBQUUsTUFBZTtRQUMxQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM3RCxNQUFNLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDeEIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOztvSEFOVSx1QkFBdUI7d0dBQXZCLHVCQUF1QixvRkNUcEMsK1lBS1c7MkZESUUsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVG90c0FjdGlvblRhYmxlIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvdG90cy1hY3Rpb24tdGFibGUnO1xuaW1wb3J0IHsgVG90c0Jhc2VDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuLi90b3RzLWJhc2UtY29sdW1uLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RvdHMtbW9yZS1tZW51LWNvbHVtbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9tb3JlLW1lbnUtY29sdW1uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbW9yZS1tZW51LWNvbHVtbi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE1vcmVNZW51Q29sdW1uQ29tcG9uZW50IGV4dGVuZHMgVG90c0Jhc2VDb2x1bW5Db21wb25lbnQge1xuXG4gIGNsaWNrQnV0dG9uKGl0ZW1BY3Rpb246IGFueSwgJGV2ZW50OiBVSUV2ZW50KSB7XG4gICAgdGhpcy5vbkFjdGlvbi5uZXh0KHsga2V5OiBpdGVtQWN0aW9uLmtleSwgaXRlbTogdGhpcy5pdGVtIH0pO1xuICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuIiwiPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cImFjdGlvbnNcIiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+PG1hdC1pY29uPm1vcmVfdmVydDwvbWF0LWljb24+PC9idXR0b24+XG48bWF0LW1lbnUgI2FjdGlvbnM9XCJtYXRNZW51XCI+XG4gICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtICpuZ0Zvcj1cImxldCBidXR0b24gb2YgY29sdW1uLmV4dHJhPy5hY3Rpb25zXCIgKGNsaWNrKT1cImNsaWNrQnV0dG9uKGJ1dHRvbiwgJGV2ZW50KVwiPlxuICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJidXR0b24uaWNvblwiPnt7IGJ1dHRvbi5pY29uIH19PC9tYXQtaWNvbj4ge3sgYnV0dG9uLnRpdGxlIH19XG4gICAgPC9idXR0b24+XG48L21hdC1tZW51PiJdfQ==
@@ -7,7 +7,7 @@ export class TotsBaseColumnComponent {
7
7
  }
8
8
  }
9
9
  TotsBaseColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsBaseColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
10
- TotsBaseColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsBaseColumnComponent, selector: "tots-base-column", inputs: { column: "column", item: "item" }, ngImport: i0, template: '', isInline: true });
10
+ TotsBaseColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsBaseColumnComponent, selector: "tots-base-column", inputs: { column: "column", item: "item", onAction: "onAction" }, ngImport: i0, template: '', isInline: true });
11
11
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsBaseColumnComponent, decorators: [{
12
12
  type: Component,
13
13
  args: [{
@@ -18,5 +18,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
18
18
  type: Input
19
19
  }], item: [{
20
20
  type: Input
21
+ }], onAction: [{
22
+ type: Input
21
23
  }] } });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy1iYXNlLWNvbHVtbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL3RhYmxlL3NyYy9saWIvY29sdW1ucy90b3RzLWJhc2UtY29sdW1uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFnQixLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFJdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQU0vRCxNQUFNLE9BQU8sdUJBQXVCO0lBS2hDLFlBQVk7UUFDUixPQUFPLGVBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0UsQ0FBQzs7b0hBUFEsdUJBQXVCO3dHQUF2Qix1QkFBdUIsb0dBRnRCLEVBQUU7MkZBRUgsdUJBQXVCO2tCQUpuQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFFBQVEsRUFBRSxFQUFFO2lCQUNmOzhCQUdZLE1BQU07c0JBQWQsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IFRvdHNBY3Rpb25UYWJsZSB9IGZyb20gXCIuLi9lbnRpdGllcy90b3RzLWFjdGlvbi10YWJsZVwiO1xuaW1wb3J0IHsgVG90c0NvbHVtbiB9IGZyb20gXCIuLi9lbnRpdGllcy90b3RzLWNvbHVtblwiO1xuaW1wb3J0IHsgVG90c1RhYmxlSGVscGVyIH0gZnJvbSBcIi4uL2hlbHBlcnMvdG90cy10YWJsZS1oZWxwZXJcIjtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0b3RzLWJhc2UtY29sdW1uJyxcbiAgICB0ZW1wbGF0ZTogJydcbn0pXG5leHBvcnQgY2xhc3MgVG90c0Jhc2VDb2x1bW5Db21wb25lbnR7XG5cbiAgICBASW5wdXQoKSBjb2x1bW4hOiBUb3RzQ29sdW1uO1xuICAgIEBJbnB1dCgpIGl0ZW06IGFueTtcblxuICAgIGdldEl0ZW1WYWx1ZSgpOiBhbnkge1xuICAgICAgICByZXR1cm4gVG90c1RhYmxlSGVscGVyLmdldEl0ZW1WYWx1ZUJ5S2V5KHRoaXMuaXRlbSwgdGhpcy5jb2x1bW4uZmllbGRfa2V5KTtcbiAgICB9XG59XG4iXX0=
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy1iYXNlLWNvbHVtbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL3RhYmxlL3NyYy9saWIvY29sdW1ucy90b3RzLWJhc2UtY29sdW1uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFnQixLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFJdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQU0vRCxNQUFNLE9BQU8sdUJBQXVCO0lBTWhDLFlBQVk7UUFDUixPQUFPLGVBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0UsQ0FBQzs7b0hBUlEsdUJBQXVCO3dHQUF2Qix1QkFBdUIsMEhBRnRCLEVBQUU7MkZBRUgsdUJBQXVCO2tCQUpuQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFFBQVEsRUFBRSxFQUFFO2lCQUNmOzhCQUdZLE1BQU07c0JBQWQsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgVG90c0FjdGlvblRhYmxlIH0gZnJvbSBcIi4uL2VudGl0aWVzL3RvdHMtYWN0aW9uLXRhYmxlXCI7XG5pbXBvcnQgeyBUb3RzQ29sdW1uIH0gZnJvbSBcIi4uL2VudGl0aWVzL3RvdHMtY29sdW1uXCI7XG5pbXBvcnQgeyBUb3RzVGFibGVIZWxwZXIgfSBmcm9tIFwiLi4vaGVscGVycy90b3RzLXRhYmxlLWhlbHBlclwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3RvdHMtYmFzZS1jb2x1bW4nLFxuICAgIHRlbXBsYXRlOiAnJ1xufSlcbmV4cG9ydCBjbGFzcyBUb3RzQmFzZUNvbHVtbkNvbXBvbmVudHtcblxuICAgIEBJbnB1dCgpIGNvbHVtbiE6IFRvdHNDb2x1bW47XG4gICAgQElucHV0KCkgaXRlbTogYW55O1xuICAgIEBJbnB1dCgpIG9uQWN0aW9uITogU3ViamVjdDxUb3RzQWN0aW9uVGFibGU+O1xuXG4gICAgZ2V0SXRlbVZhbHVlKCk6IGFueSB7XG4gICAgICAgIHJldHVybiBUb3RzVGFibGVIZWxwZXIuZ2V0SXRlbVZhbHVlQnlLZXkodGhpcy5pdGVtLCB0aGlzLmNvbHVtbi5maWVsZF9rZXkpO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { tap } from 'rxjs';
2
+ import { Subject, tap } from 'rxjs';
3
3
  import { TotsTableConfig } from '../../entities/tots-table-config';
4
4
  import * as i0 from "@angular/core";
5
5
  import * as i1 from "@angular/common";
@@ -13,6 +13,7 @@ export class TotsTableComponent {
13
13
  this.pageSize = 50;
14
14
  this.hasPagination = true;
15
15
  this.onAction = new EventEmitter();
16
+ this.privateActions = new Subject();
16
17
  this.isLoading = true;
17
18
  this.displayColumns = [];
18
19
  }
@@ -35,16 +36,19 @@ export class TotsTableComponent {
35
36
  }
36
37
  loadConfig() {
37
38
  this.loadColumns();
39
+ this.privateActions.subscribe(action => {
40
+ this.onAction.emit(action);
41
+ });
38
42
  }
39
43
  loadColumns() {
40
44
  this.displayColumns = this.config.columns.filter(c => c.is_show || c.is_show == undefined).map(c => c.key);
41
45
  }
42
46
  }
43
47
  TotsTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
44
- TotsTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsTableComponent, selector: "tots-table", inputs: { config: "config", pageIndex: "pageIndex", pageSize: "pageSize", hasPagination: "hasPagination" }, outputs: { onAction: "onAction" }, ngImport: i0, template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"dataItems!.data\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef>{{ column.title }}</th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\"><tots-base-print-column [column]=\"column\" [item]=\"item\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n </table>\n</div>", styles: [""], 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: "component", type: i2.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i2.MatNoDataRow, selector: "ng-template[matNoDataRow]" }, { kind: "component", type: i3.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i4.BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item"] }] });
48
+ TotsTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsTableComponent, selector: "tots-table", inputs: { config: "config", pageIndex: "pageIndex", pageSize: "pageSize", hasPagination: "hasPagination" }, outputs: { onAction: "onAction" }, ngImport: i0, template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"dataItems!.data\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef>{{ column.title }}</th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [onAction]=\"privateActions\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n </table>\n</div>", styles: [""], 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: "component", type: i2.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i2.MatNoDataRow, selector: "ng-template[matNoDataRow]" }, { kind: "component", type: i3.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i4.BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction"] }] });
45
49
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, decorators: [{
46
50
  type: Component,
47
- args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"dataItems!.data\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef>{{ column.title }}</th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\"><tots-base-print-column [column]=\"column\" [item]=\"item\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n </table>\n</div>" }]
51
+ args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"dataItems!.data\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef>{{ column.title }}</th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [onAction]=\"privateActions\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n </table>\n</div>" }]
48
52
  }], propDecorators: { config: [{
49
53
  type: Input
50
54
  }], pageIndex: [{
@@ -56,4 +60,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
56
60
  }], onAction: [{
57
61
  type: Output
58
62
  }] } });
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL3RhYmxlL3NyYy9saWIvY29tcG9uZW50cy90b3RzLXRhYmxlL3RvdHMtdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS90b3RzLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0UsT0FBTyxFQUFXLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVwQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7OztBQU9uRSxNQUFNLE9BQU8sa0JBQWtCO0lBTC9CO1FBT1csV0FBTSxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7UUFDL0IsY0FBUyxHQUFXLENBQUMsQ0FBQztRQUN0QixhQUFRLEdBQVcsRUFBRSxDQUFDO1FBQ3RCLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBRTdCLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztRQUV6RCxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBRWpCLG1CQUFjLEdBQWtCLEVBQUUsQ0FBQztLQThCcEM7SUE1QkMsUUFBUTtRQUNOLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFTO1FBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQWdCO1FBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNqQixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUMsQ0FBQztZQUN0QyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQyxPQUFPLElBQUksU0FBUyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzdHLENBQUM7OytHQXhDVSxrQkFBa0I7bUdBQWxCLGtCQUFrQixpTUNaL0IsK25DQW1CTTsyRkRQTyxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0UsWUFBWTs4QkFNYixNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUksUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBhZ2VFdmVudCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcic7XG5pbXBvcnQgeyBUb3RzTGlzdFJlc3BvbnNlIH0gZnJvbSAnQHRvdHMvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRvdHNBY3Rpb25UYWJsZSB9IGZyb20gJy4uLy4uL2VudGl0aWVzL3RvdHMtYWN0aW9uLXRhYmxlJztcbmltcG9ydCB7IFRvdHNUYWJsZUNvbmZpZyB9IGZyb20gJy4uLy4uL2VudGl0aWVzL3RvdHMtdGFibGUtY29uZmlnJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndG90cy10YWJsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi90b3RzLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdG90cy10YWJsZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFRvdHNUYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KCkgY29uZmlnID0gbmV3IFRvdHNUYWJsZUNvbmZpZygpO1xuICBASW5wdXQoKSBwYWdlSW5kZXg6IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIHBhZ2VTaXplOiBudW1iZXIgPSA1MDtcbiAgQElucHV0KCkgaGFzUGFnaW5hdGlvbjogYm9vbGVhbiA9IHRydWU7XG5cbiAgQE91dHB1dCgpIG9uQWN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjxUb3RzQWN0aW9uVGFibGU+KCk7XG5cbiAgaXNMb2FkaW5nID0gdHJ1ZTtcbiAgZGF0YUl0ZW1zPzogVG90c0xpc3RSZXNwb25zZTxhbnk+O1xuICBkaXNwbGF5Q29sdW1uczogQXJyYXk8U3RyaW5nPiA9IFtdO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubG9hZENvbmZpZygpO1xuICAgIHRoaXMubG9hZEl0ZW1zKCk7XG4gIH1cblxuICBvbkNsaWNrUm93KGl0ZW06IGFueSkge1xuICAgIHRoaXMub25BY3Rpb24uZW1pdCh7IGtleTogJ2NsaWNrLXJvdycsIGl0ZW06IGl0ZW0gfSk7XG4gIH1cblxuICBvblBhZ2VDaGFuZ2UoZXZlbnQ6IFBhZ2VFdmVudCkge1xuICAgIHRoaXMub25BY3Rpb24uZW1pdCh7IGtleTogJ3BhZ2UtY2hhbmdlJywgaXRlbTogZXZlbnQgfSk7XG4gICAgdGhpcy5sb2FkSXRlbXMoKTtcbiAgfVxuXG4gIGxvYWRJdGVtcygpIHtcbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgdGhpcy5jb25maWcub2JzPy5cbiAgICBwaXBlKHRhcChyZXMgPT4gdGhpcy5kYXRhSXRlbXMgPSByZXMpKS5cbiAgICBzdWJzY3JpYmUocmVzID0+IHRoaXMuaXNMb2FkaW5nID0gZmFsc2UpO1xuICB9XG5cbiAgbG9hZENvbmZpZygpIHtcbiAgICB0aGlzLmxvYWRDb2x1bW5zKCk7XG4gIH1cblxuICBsb2FkQ29sdW1ucygpIHtcbiAgICB0aGlzLmRpc3BsYXlDb2x1bW5zID0gdGhpcy5jb25maWcuY29sdW1ucy5maWx0ZXIoYyA9PiBjLmlzX3Nob3cgfHwgYy5pc19zaG93ID09IHVuZGVmaW5lZCkubWFwKGMgPT4gYy5rZXkpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwidG90cy10YWJsZS1jb250YWluZXJcIj5cbiAgICA8dGFibGUgKm5nSWY9XCJkYXRhSXRlbXNcIiBtYXQtdGFibGUgW2RhdGFTb3VyY2VdPVwiZGF0YUl0ZW1zIS5kYXRhXCI+XG4gICAgICAgIFxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29uZmlnLmNvbHVtbnNcIiBbbWF0Q29sdW1uRGVmXT1cImNvbHVtbi5rZXlcIj5cbiAgICAgICAgICAgIDwhLS0gVEgtLT5cbiAgICAgICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+e3sgY29sdW1uLnRpdGxlIH19PC90aD5cbiAgICAgICAgICAgIDwhLS0gVEQgLS0+XG4gICAgICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgaXRlbVwiPjx0b3RzLWJhc2UtcHJpbnQtY29sdW1uIFtjb2x1bW5dPVwiY29sdW1uXCIgW2l0ZW1dPVwiaXRlbVwiPjwvdG90cy1iYXNlLXByaW50LWNvbHVtbj48L3RkPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8dHIgbWF0LWhlYWRlci1yb3cgKm1hdEhlYWRlclJvd0RlZj1cImRpc3BsYXlDb2x1bW5zXCI+PC90cj5cbiAgICAgICAgPHRyIG1hdC1yb3cgKm1hdFJvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGRpc3BsYXlDb2x1bW5zO1wiIChjbGljayk9XCJvbkNsaWNrUm93KHJvdylcIj48L3RyPlxuICAgICAgICBcbiAgICAgICAgPCEtLSBSb3cgc2hvd24gd2hlbiB0aGVyZSBpcyBubyBtYXRjaGluZyBkYXRhLiAtLT5cbiAgICAgICAgPHRyIGNsYXNzPVwibWF0LXJvd1wiICptYXROb0RhdGFSb3c+PHRkIGNsYXNzPVwibWF0LWNlbGxcIiBjb2xzcGFuPVwiMTAwXCI+Tm8gZGF0YSBtYXRjaGluZzwvdGQ+PC90cj5cblxuICAgICAgICA8IS0tIFBhZ2luYXRvciAtLT5cbiAgICAgICAgPG1hdC1wYWdpbmF0b3IgKm5nSWY9XCJkYXRhSXRlbXMgJiYgaGFzUGFnaW5hdGlvblwiIFtwYWdlSW5kZXhdPVwicGFnZUluZGV4XCIgW2xlbmd0aF09XCJkYXRhSXRlbXMhLnRvdGFsXCIgW3BhZ2VTaXplXT1cInBhZ2VTaXplXCIgW3BhZ2VTaXplT3B0aW9uc109XCJbNSwgMTAsIDI1LCA1MCwgMTAwXVwiIChwYWdlKT1cIm9uUGFnZUNoYW5nZSgkZXZlbnQpXCI+PC9tYXQtcGFnaW5hdG9yPlxuICAgIDwvdGFibGU+XG48L2Rpdj4iXX0=
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL3RhYmxlL3NyYy9saWIvY29tcG9uZW50cy90b3RzLXRhYmxlL3RvdHMtdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS90b3RzLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0UsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7QUFPbkUsTUFBTSxPQUFPLGtCQUFrQjtJQUwvQjtRQU9XLFdBQU0sR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO1FBQy9CLGNBQVMsR0FBVyxDQUFDLENBQUM7UUFDdEIsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUN0QixrQkFBYSxHQUFZLElBQUksQ0FBQztRQUU3QixhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7UUFDekQsbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBbUIsQ0FBQztRQUVoRCxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBRWpCLG1CQUFjLEdBQWtCLEVBQUUsQ0FBQztLQWtDcEM7SUFoQ0MsUUFBUTtRQUNOLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFTO1FBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQWdCO1FBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNqQixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUMsQ0FBQztZQUN0QyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRW5CLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3JDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLE9BQU8sSUFBSSxTQUFTLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDN0csQ0FBQzs7K0dBN0NVLGtCQUFrQjttR0FBbEIsa0JBQWtCLGlNQ1ovQiw2cENBbUJNOzJGRFBPLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxZQUFZOzhCQU1iLE1BQU07c0JBQWQsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFFSSxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUGFnZUV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcbmltcG9ydCB7IFRvdHNMaXN0UmVzcG9uc2UgfSBmcm9tICdAdG90cy9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVG90c0FjdGlvblRhYmxlIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvdG90cy1hY3Rpb24tdGFibGUnO1xuaW1wb3J0IHsgVG90c1RhYmxlQ29uZmlnIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvdG90cy10YWJsZS1jb25maWcnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0b3RzLXRhYmxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RvdHMtdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b3RzLXRhYmxlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgVG90c1RhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSBjb25maWcgPSBuZXcgVG90c1RhYmxlQ29uZmlnKCk7XG4gIEBJbnB1dCgpIHBhZ2VJbmRleDogbnVtYmVyID0gMDtcbiAgQElucHV0KCkgcGFnZVNpemU6IG51bWJlciA9IDUwO1xuICBASW5wdXQoKSBoYXNQYWdpbmF0aW9uOiBib29sZWFuID0gdHJ1ZTtcblxuICBAT3V0cHV0KCkgb25BY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPFRvdHNBY3Rpb25UYWJsZT4oKTtcbiAgcHJpdmF0ZUFjdGlvbnMgPSBuZXcgU3ViamVjdDxUb3RzQWN0aW9uVGFibGU+KCk7XG5cbiAgaXNMb2FkaW5nID0gdHJ1ZTtcbiAgZGF0YUl0ZW1zPzogVG90c0xpc3RSZXNwb25zZTxhbnk+O1xuICBkaXNwbGF5Q29sdW1uczogQXJyYXk8U3RyaW5nPiA9IFtdO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubG9hZENvbmZpZygpO1xuICAgIHRoaXMubG9hZEl0ZW1zKCk7XG4gIH1cblxuICBvbkNsaWNrUm93KGl0ZW06IGFueSkge1xuICAgIHRoaXMub25BY3Rpb24uZW1pdCh7IGtleTogJ2NsaWNrLXJvdycsIGl0ZW06IGl0ZW0gfSk7XG4gIH1cblxuICBvblBhZ2VDaGFuZ2UoZXZlbnQ6IFBhZ2VFdmVudCkge1xuICAgIHRoaXMub25BY3Rpb24uZW1pdCh7IGtleTogJ3BhZ2UtY2hhbmdlJywgaXRlbTogZXZlbnQgfSk7XG4gICAgdGhpcy5sb2FkSXRlbXMoKTtcbiAgfVxuXG4gIGxvYWRJdGVtcygpIHtcbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgdGhpcy5jb25maWcub2JzPy5cbiAgICBwaXBlKHRhcChyZXMgPT4gdGhpcy5kYXRhSXRlbXMgPSByZXMpKS5cbiAgICBzdWJzY3JpYmUocmVzID0+IHRoaXMuaXNMb2FkaW5nID0gZmFsc2UpO1xuICB9XG5cbiAgbG9hZENvbmZpZygpIHtcbiAgICB0aGlzLmxvYWRDb2x1bW5zKCk7XG5cbiAgICB0aGlzLnByaXZhdGVBY3Rpb25zLnN1YnNjcmliZShhY3Rpb24gPT4ge1xuICAgICAgdGhpcy5vbkFjdGlvbi5lbWl0KGFjdGlvbik7XG4gICAgfSk7XG4gIH1cblxuICBsb2FkQ29sdW1ucygpIHtcbiAgICB0aGlzLmRpc3BsYXlDb2x1bW5zID0gdGhpcy5jb25maWcuY29sdW1ucy5maWx0ZXIoYyA9PiBjLmlzX3Nob3cgfHwgYy5pc19zaG93ID09IHVuZGVmaW5lZCkubWFwKGMgPT4gYy5rZXkpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwidG90cy10YWJsZS1jb250YWluZXJcIj5cbiAgICA8dGFibGUgKm5nSWY9XCJkYXRhSXRlbXNcIiBtYXQtdGFibGUgW2RhdGFTb3VyY2VdPVwiZGF0YUl0ZW1zIS5kYXRhXCI+XG4gICAgICAgIFxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29uZmlnLmNvbHVtbnNcIiBbbWF0Q29sdW1uRGVmXT1cImNvbHVtbi5rZXlcIj5cbiAgICAgICAgICAgIDwhLS0gVEgtLT5cbiAgICAgICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+e3sgY29sdW1uLnRpdGxlIH19PC90aD5cbiAgICAgICAgICAgIDwhLS0gVEQgLS0+XG4gICAgICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgaXRlbVwiPjx0b3RzLWJhc2UtcHJpbnQtY29sdW1uIFtjb2x1bW5dPVwiY29sdW1uXCIgW2l0ZW1dPVwiaXRlbVwiIFtvbkFjdGlvbl09XCJwcml2YXRlQWN0aW9uc1wiPjwvdG90cy1iYXNlLXByaW50LWNvbHVtbj48L3RkPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8dHIgbWF0LWhlYWRlci1yb3cgKm1hdEhlYWRlclJvd0RlZj1cImRpc3BsYXlDb2x1bW5zXCI+PC90cj5cbiAgICAgICAgPHRyIG1hdC1yb3cgKm1hdFJvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGRpc3BsYXlDb2x1bW5zO1wiIChjbGljayk9XCJvbkNsaWNrUm93KHJvdylcIj48L3RyPlxuICAgICAgICBcbiAgICAgICAgPCEtLSBSb3cgc2hvd24gd2hlbiB0aGVyZSBpcyBubyBtYXRjaGluZyBkYXRhLiAtLT5cbiAgICAgICAgPHRyIGNsYXNzPVwibWF0LXJvd1wiICptYXROb0RhdGFSb3c+PHRkIGNsYXNzPVwibWF0LWNlbGxcIiBjb2xzcGFuPVwiMTAwXCI+Tm8gZGF0YSBtYXRjaGluZzwvdGQ+PC90cj5cblxuICAgICAgICA8IS0tIFBhZ2luYXRvciAtLT5cbiAgICAgICAgPG1hdC1wYWdpbmF0b3IgKm5nSWY9XCJkYXRhSXRlbXMgJiYgaGFzUGFnaW5hdGlvblwiIFtwYWdlSW5kZXhdPVwicGFnZUluZGV4XCIgW2xlbmd0aF09XCJkYXRhSXRlbXMhLnRvdGFsXCIgW3BhZ2VTaXplXT1cInBhZ2VTaXplXCIgW3BhZ2VTaXplT3B0aW9uc109XCJbNSwgMTAsIDI1LCA1MCwgMTAwXVwiIChwYWdlKT1cIm9uUGFnZUNoYW5nZSgkZXZlbnQpXCI+PC9tYXQtcGFnaW5hdG9yPlxuICAgIDwvdGFibGU+XG48L2Rpdj4iXX0=
@@ -18,6 +18,7 @@ export class TotsTableApiComponent {
18
18
  this.config.query.per_page = action.item.pageSize;
19
19
  this.config.query.page = action.item.pageIndex + 1;
20
20
  }
21
+ this.onAction.emit(action);
21
22
  }
22
23
  loadConfig() {
23
24
  this.configTable.id = this.config.id;
@@ -37,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
37
38
  }], onAction: [{
38
39
  type: Output
39
40
  }] } });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS1hcGkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS1hcGkvdG90cy10YWJsZS1hcGkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS1hcGkvdG90cy10YWJsZS1hcGkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7OztBQU9uRSxNQUFNLE9BQU8scUJBQXFCO0lBTGxDO1FBT1csV0FBTSxHQUFHLElBQUksa0JBQWtCLEVBQUUsQ0FBQztRQUNsQyxrQkFBYSxHQUFZLElBQUksQ0FBQztRQUU3QixhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7UUFFekQsZ0JBQVcsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO0tBa0JyQztJQWhCQyxRQUFRO1FBQ04sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxhQUFhLENBQUMsTUFBdUI7UUFDbkMsSUFBRyxNQUFNLENBQUMsR0FBRyxJQUFJLGFBQWEsRUFBQztZQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDbEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztTQUNwRDtJQUNILENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDckMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDL0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckUsQ0FBQzs7a0hBeEJVLHFCQUFxQjtzR0FBckIscUJBQXFCLHVKQ1ZsQyw2S0FDQTsyRkRTYSxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UsZ0JBQWdCOzhCQU1qQixNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFFSSxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVG90c0FjdGlvblRhYmxlIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvdG90cy1hY3Rpb24tdGFibGUnO1xuaW1wb3J0IHsgVG90c1RhYmxlQXBpQ29uZmlnIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvdG90cy10YWJsZS1hcGktY29uZmlnJztcbmltcG9ydCB7IFRvdHNUYWJsZUNvbmZpZyB9IGZyb20gJy4uLy4uL2VudGl0aWVzL3RvdHMtdGFibGUtY29uZmlnJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndG90cy10YWJsZS1hcGknLFxuICB0ZW1wbGF0ZVVybDogJy4vdG90cy10YWJsZS1hcGkuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b3RzLXRhYmxlLWFwaS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFRvdHNUYWJsZUFwaUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIFxuICBASW5wdXQoKSBjb25maWcgPSBuZXcgVG90c1RhYmxlQXBpQ29uZmlnKCk7XG4gIEBJbnB1dCgpIGhhc1BhZ2luYXRpb246IGJvb2xlYW4gPSB0cnVlO1xuXG4gIEBPdXRwdXQoKSBvbkFjdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXI8VG90c0FjdGlvblRhYmxlPigpO1xuXG4gIGNvbmZpZ1RhYmxlID0gbmV3IFRvdHNUYWJsZUNvbmZpZygpO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubG9hZENvbmZpZygpO1xuICB9XG5cbiAgb25UYWJsZUFjdGlvbihhY3Rpb246IFRvdHNBY3Rpb25UYWJsZSkge1xuICAgIGlmKGFjdGlvbi5rZXkgPT0gJ3BhZ2UtY2hhbmdlJyl7XG4gICAgICB0aGlzLmNvbmZpZy5xdWVyeS5wZXJfcGFnZSA9IGFjdGlvbi5pdGVtLnBhZ2VTaXplO1xuICAgICAgdGhpcy5jb25maWcucXVlcnkucGFnZSA9IGFjdGlvbi5pdGVtLnBhZ2VJbmRleCArIDE7XG4gICAgfVxuICB9XG5cbiAgbG9hZENvbmZpZygpIHtcbiAgICB0aGlzLmNvbmZpZ1RhYmxlLmlkID0gdGhpcy5jb25maWcuaWQ7XG4gICAgdGhpcy5jb25maWdUYWJsZS5jb2x1bW5zID0gdGhpcy5jb25maWcuY29sdW1ucztcbiAgICB0aGlzLmNvbmZpZ1RhYmxlLm9icyA9IHRoaXMuY29uZmlnLnNlcnZpY2UubGlzdCh0aGlzLmNvbmZpZy5xdWVyeSk7XG4gIH1cbn1cbiIsIjx0b3RzLXRhYmxlICN0YWJsZUNvbXAgW2NvbmZpZ109XCJjb25maWdUYWJsZVwiIFtwYWdlSW5kZXhdPVwiY29uZmlnLnF1ZXJ5LnBhZ2VcIiBbcGFnZVNpemVdPVwiY29uZmlnLnF1ZXJ5LnBlcl9wYWdlXCIgKG9uQWN0aW9uKT1cIm9uVGFibGVBY3Rpb24oJGV2ZW50KVwiPjwvdG90cy10YWJsZT5cbiJdfQ==
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS1hcGkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS1hcGkvdG90cy10YWJsZS1hcGkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS1hcGkvdG90cy10YWJsZS1hcGkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7OztBQU9uRSxNQUFNLE9BQU8scUJBQXFCO0lBTGxDO1FBT1csV0FBTSxHQUFHLElBQUksa0JBQWtCLEVBQUUsQ0FBQztRQUNsQyxrQkFBYSxHQUFZLElBQUksQ0FBQztRQUU3QixhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7UUFFekQsZ0JBQVcsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO0tBb0JyQztJQWxCQyxRQUFRO1FBQ04sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxhQUFhLENBQUMsTUFBdUI7UUFDbkMsSUFBRyxNQUFNLENBQUMsR0FBRyxJQUFJLGFBQWEsRUFBQztZQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDbEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztTQUNwRDtRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDckMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDL0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckUsQ0FBQzs7a0hBMUJVLHFCQUFxQjtzR0FBckIscUJBQXFCLHVKQ1ZsQyw2S0FDQTsyRkRTYSxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UsZ0JBQWdCOzhCQU1qQixNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFFSSxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVG90c0FjdGlvblRhYmxlIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvdG90cy1hY3Rpb24tdGFibGUnO1xuaW1wb3J0IHsgVG90c1RhYmxlQXBpQ29uZmlnIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvdG90cy10YWJsZS1hcGktY29uZmlnJztcbmltcG9ydCB7IFRvdHNUYWJsZUNvbmZpZyB9IGZyb20gJy4uLy4uL2VudGl0aWVzL3RvdHMtdGFibGUtY29uZmlnJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndG90cy10YWJsZS1hcGknLFxuICB0ZW1wbGF0ZVVybDogJy4vdG90cy10YWJsZS1hcGkuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b3RzLXRhYmxlLWFwaS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFRvdHNUYWJsZUFwaUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIFxuICBASW5wdXQoKSBjb25maWcgPSBuZXcgVG90c1RhYmxlQXBpQ29uZmlnKCk7XG4gIEBJbnB1dCgpIGhhc1BhZ2luYXRpb246IGJvb2xlYW4gPSB0cnVlO1xuXG4gIEBPdXRwdXQoKSBvbkFjdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXI8VG90c0FjdGlvblRhYmxlPigpO1xuXG4gIGNvbmZpZ1RhYmxlID0gbmV3IFRvdHNUYWJsZUNvbmZpZygpO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubG9hZENvbmZpZygpO1xuICB9XG5cbiAgb25UYWJsZUFjdGlvbihhY3Rpb246IFRvdHNBY3Rpb25UYWJsZSkge1xuICAgIGlmKGFjdGlvbi5rZXkgPT0gJ3BhZ2UtY2hhbmdlJyl7XG4gICAgICB0aGlzLmNvbmZpZy5xdWVyeS5wZXJfcGFnZSA9IGFjdGlvbi5pdGVtLnBhZ2VTaXplO1xuICAgICAgdGhpcy5jb25maWcucXVlcnkucGFnZSA9IGFjdGlvbi5pdGVtLnBhZ2VJbmRleCArIDE7XG4gICAgfVxuXG4gICAgdGhpcy5vbkFjdGlvbi5lbWl0KGFjdGlvbik7XG4gIH1cblxuICBsb2FkQ29uZmlnKCkge1xuICAgIHRoaXMuY29uZmlnVGFibGUuaWQgPSB0aGlzLmNvbmZpZy5pZDtcbiAgICB0aGlzLmNvbmZpZ1RhYmxlLmNvbHVtbnMgPSB0aGlzLmNvbmZpZy5jb2x1bW5zO1xuICAgIHRoaXMuY29uZmlnVGFibGUub2JzID0gdGhpcy5jb25maWcuc2VydmljZS5saXN0KHRoaXMuY29uZmlnLnF1ZXJ5KTtcbiAgfVxufVxuIiwiPHRvdHMtdGFibGUgI3RhYmxlQ29tcCBbY29uZmlnXT1cImNvbmZpZ1RhYmxlXCIgW3BhZ2VJbmRleF09XCJjb25maWcucXVlcnkucGFnZVwiIFtwYWdlU2l6ZV09XCJjb25maWcucXVlcnkucGVyX3BhZ2VcIiAob25BY3Rpb24pPVwib25UYWJsZUFjdGlvbigkZXZlbnQpXCI+PC90b3RzLXRhYmxlPlxuIl19
@@ -1,14 +1,18 @@
1
1
  import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
3
  /** Angular Material */
4
+ import { MatIconModule } from '@angular/material/icon';
5
+ import { MatButtonModule } from '@angular/material/button';
4
6
  import { MatTableModule } from '@angular/material/table';
5
7
  import { MatPaginatorModule } from '@angular/material/paginator';
8
+ import { MatMenuModule } from '@angular/material/menu';
6
9
  /** Components */
7
10
  import { TotsTableComponent } from './components/tots-table/tots-table.component';
8
11
  import { TotsTableApiComponent } from './components/tots-table-api/tots-table-api.component';
9
12
  /** Columns */
10
13
  import { BasePrintColumnComponent } from './columns/base-print-column/base-print-column.component';
11
14
  import { StringColumnComponent } from './columns/string-column/string-column.component';
15
+ import { MoreMenuColumnComponent } from './columns/more-menu-column/more-menu-column.component';
12
16
  import * as i0 from "@angular/core";
13
17
  export class TotsTableModule {
14
18
  }
@@ -16,15 +20,22 @@ TotsTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version:
16
20
  TotsTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.3", ngImport: i0, type: TotsTableModule, declarations: [TotsTableComponent,
17
21
  BasePrintColumnComponent,
18
22
  StringColumnComponent,
19
- TotsTableApiComponent], imports: [CommonModule,
23
+ TotsTableApiComponent,
24
+ MoreMenuColumnComponent], imports: [CommonModule,
20
25
  // Angular Material
26
+ MatIconModule,
21
27
  MatTableModule,
22
- MatPaginatorModule], exports: [TotsTableComponent,
28
+ MatPaginatorModule,
29
+ MatButtonModule,
30
+ MatMenuModule], exports: [TotsTableComponent,
23
31
  TotsTableApiComponent] });
24
32
  TotsTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableModule, imports: [CommonModule,
25
33
  // Angular Material
34
+ MatIconModule,
26
35
  MatTableModule,
27
- MatPaginatorModule] });
36
+ MatPaginatorModule,
37
+ MatButtonModule,
38
+ MatMenuModule] });
28
39
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableModule, decorators: [{
29
40
  type: NgModule,
30
41
  args: [{
@@ -32,13 +43,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
32
43
  TotsTableComponent,
33
44
  BasePrintColumnComponent,
34
45
  StringColumnComponent,
35
- TotsTableApiComponent
46
+ TotsTableApiComponent,
47
+ MoreMenuColumnComponent
36
48
  ],
37
49
  imports: [
38
50
  CommonModule,
39
51
  // Angular Material
52
+ MatIconModule,
40
53
  MatTableModule,
41
- MatPaginatorModule
54
+ MatPaginatorModule,
55
+ MatButtonModule,
56
+ MatMenuModule,
42
57
  ],
43
58
  exports: [
44
59
  TotsTableComponent,
@@ -46,4 +61,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
46
61
  ]
47
62
  }]
48
63
  }] });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL3RhYmxlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyx1QkFBdUI7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRWpFLGlCQUFpQjtBQUNqQixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUU3RixjQUFjO0FBQ2QsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDbkcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saURBQWlELENBQUM7O0FBc0J4RixNQUFNLE9BQU8sZUFBZTs7NEdBQWYsZUFBZTs2R0FBZixlQUFlLGlCQWhCeEIsa0JBQWtCO1FBQ2xCLHdCQUF3QjtRQUN4QixxQkFBcUI7UUFDckIscUJBQXFCLGFBR3JCLFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsY0FBYztRQUNkLGtCQUFrQixhQUdsQixrQkFBa0I7UUFDbEIscUJBQXFCOzZHQUdaLGVBQWUsWUFWeEIsWUFBWTtRQUNaLG1CQUFtQjtRQUNuQixjQUFjO1FBQ2Qsa0JBQWtCOzJGQU9ULGVBQWU7a0JBbEIzQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixrQkFBa0I7d0JBQ2xCLHdCQUF3Qjt3QkFDeEIscUJBQXFCO3dCQUNyQixxQkFBcUI7cUJBQ3RCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsY0FBYzt3QkFDZCxrQkFBa0I7cUJBQ25CO29CQUNELE9BQU8sRUFBRTt3QkFDUCxrQkFBa0I7d0JBQ2xCLHFCQUFxQjtxQkFDdEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuLyoqIEFuZ3VsYXIgTWF0ZXJpYWwgKi9cbmltcG9ydCB7IE1hdFRhYmxlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xuaW1wb3J0IHsgTWF0UGFnaW5hdG9yTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcblxuLyoqIENvbXBvbmVudHMgKi9cbmltcG9ydCB7IFRvdHNUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90b3RzLXRhYmxlL3RvdHMtdGFibGUuY29tcG9uZW50JztcbmltcG9ydCB7IFRvdHNUYWJsZUFwaUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90b3RzLXRhYmxlLWFwaS90b3RzLXRhYmxlLWFwaS5jb21wb25lbnQnO1xuXG4vKiogQ29sdW1ucyAqL1xuaW1wb3J0IHsgQmFzZVByaW50Q29sdW1uQ29tcG9uZW50IH0gZnJvbSAnLi9jb2x1bW5zL2Jhc2UtcHJpbnQtY29sdW1uL2Jhc2UtcHJpbnQtY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTdHJpbmdDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuL2NvbHVtbnMvc3RyaW5nLWNvbHVtbi9zdHJpbmctY29sdW1uLmNvbXBvbmVudCc7XG5cblxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBUb3RzVGFibGVDb21wb25lbnQsXG4gICAgQmFzZVByaW50Q29sdW1uQ29tcG9uZW50LFxuICAgIFN0cmluZ0NvbHVtbkNvbXBvbmVudCxcbiAgICBUb3RzVGFibGVBcGlDb21wb25lbnRcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICAvLyBBbmd1bGFyIE1hdGVyaWFsXG4gICAgTWF0VGFibGVNb2R1bGUsXG4gICAgTWF0UGFnaW5hdG9yTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBUb3RzVGFibGVDb21wb25lbnQsXG4gICAgVG90c1RhYmxlQXBpQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVG90c1RhYmxlTW9kdWxlIHsgfVxuIl19
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL3RhYmxlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyx1QkFBdUI7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDakUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXZELGlCQUFpQjtBQUNqQixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUU3RixjQUFjO0FBQ2QsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDbkcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDeEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdURBQXVELENBQUM7O0FBMEJoRyxNQUFNLE9BQU8sZUFBZTs7NEdBQWYsZUFBZTs2R0FBZixlQUFlLGlCQXBCeEIsa0JBQWtCO1FBQ2xCLHdCQUF3QjtRQUN4QixxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLHVCQUF1QixhQUd2QixZQUFZO1FBQ1osbUJBQW1CO1FBQ25CLGFBQWE7UUFDYixjQUFjO1FBQ2Qsa0JBQWtCO1FBQ2xCLGVBQWU7UUFDZixhQUFhLGFBR2Isa0JBQWtCO1FBQ2xCLHFCQUFxQjs2R0FHWixlQUFlLFlBYnhCLFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsYUFBYTtRQUNiLGNBQWM7UUFDZCxrQkFBa0I7UUFDbEIsZUFBZTtRQUNmLGFBQWE7MkZBT0osZUFBZTtrQkF0QjNCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGtCQUFrQjt3QkFDbEIsd0JBQXdCO3dCQUN4QixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIsdUJBQXVCO3FCQUN4QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLGFBQWE7d0JBQ2IsY0FBYzt3QkFDZCxrQkFBa0I7d0JBQ2xCLGVBQWU7d0JBQ2YsYUFBYTtxQkFDZDtvQkFDRCxPQUFPLEVBQUU7d0JBQ1Asa0JBQWtCO3dCQUNsQixxQkFBcUI7cUJBQ3RCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbi8qKiBBbmd1bGFyIE1hdGVyaWFsICovXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0VGFibGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XG5pbXBvcnQgeyBNYXRQYWdpbmF0b3JNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wYWdpbmF0b3InO1xuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuXG4vKiogQ29tcG9uZW50cyAqL1xuaW1wb3J0IHsgVG90c1RhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RvdHMtdGFibGUvdG90cy10YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG90c1RhYmxlQXBpQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RvdHMtdGFibGUtYXBpL3RvdHMtdGFibGUtYXBpLmNvbXBvbmVudCc7XG5cbi8qKiBDb2x1bW5zICovXG5pbXBvcnQgeyBCYXNlUHJpbnRDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuL2NvbHVtbnMvYmFzZS1wcmludC1jb2x1bW4vYmFzZS1wcmludC1jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7IFN0cmluZ0NvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4vY29sdW1ucy9zdHJpbmctY29sdW1uL3N0cmluZy1jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7IE1vcmVNZW51Q29sdW1uQ29tcG9uZW50IH0gZnJvbSAnLi9jb2x1bW5zL21vcmUtbWVudS1jb2x1bW4vbW9yZS1tZW51LWNvbHVtbi5jb21wb25lbnQnO1xuXG5cblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgVG90c1RhYmxlQ29tcG9uZW50LFxuICAgIEJhc2VQcmludENvbHVtbkNvbXBvbmVudCxcbiAgICBTdHJpbmdDb2x1bW5Db21wb25lbnQsXG4gICAgVG90c1RhYmxlQXBpQ29tcG9uZW50LFxuICAgIE1vcmVNZW51Q29sdW1uQ29tcG9uZW50XG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgLy8gQW5ndWxhciBNYXRlcmlhbFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0VGFibGVNb2R1bGUsXG4gICAgTWF0UGFnaW5hdG9yTW9kdWxlLFxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBNYXRNZW51TW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgVG90c1RhYmxlQ29tcG9uZW50LFxuICAgIFRvdHNUYWJsZUFwaUNvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFRvdHNUYWJsZU1vZHVsZSB7IH1cbiJdfQ==
@@ -17,6 +17,7 @@ export * from './lib/helpers/tots-table-helper';
17
17
  */
18
18
  export * from './lib/columns/tots-base-column.component';
19
19
  export * from './lib/columns/string-column/string-column.component';
20
+ export * from './lib/columns/more-menu-column/more-menu-column.component';
20
21
  /**
21
22
  * Components
22
23
  */
@@ -26,4 +27,4 @@ export * from './lib/components/tots-table-api/tots-table-api.component';
26
27
  * Modules
27
28
  */
28
29
  export * from './lib/table.module';
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3RvdHMvdGFibGUvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSDs7R0FFRztBQUNILGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsc0NBQXNDLENBQUM7QUFFckQ7O0dBRUc7QUFDSCxjQUFjLGlDQUFpQyxDQUFDO0FBRWhEOztHQUVHO0FBQ0gsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLHFEQUFxRCxDQUFDO0FBRXBFOztHQUVHO0FBQ0gsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLDBEQUEwRCxDQUFDO0FBRXpFOztHQUVHO0FBQ0gsY0FBYyxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgdGFibGVcbiAqL1xuXG4vKipcbiAqIEVudGl0aWVzXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2VudGl0aWVzL3RvdHMtY29sdW1uJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VudGl0aWVzL3RvdHMtdGFibGUtY29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VudGl0aWVzL3RvdHMtYWN0aW9uLXRhYmxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VudGl0aWVzL3RvdHMtdGFibGUtYXBpLWNvbmZpZyc7XG5cbi8qKlxuICogSGVscGVyc1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9oZWxwZXJzL3RvdHMtdGFibGUtaGVscGVyJztcblxuLyoqXG4gKiBDb2x1bW5zXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbHVtbnMvdG90cy1iYXNlLWNvbHVtbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29sdW1ucy9zdHJpbmctY29sdW1uL3N0cmluZy1jb2x1bW4uY29tcG9uZW50JztcblxuLyoqXG4gKiBDb21wb25lbnRzXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS90b3RzLXRhYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RvdHMtdGFibGUtYXBpL3RvdHMtdGFibGUtYXBpLmNvbXBvbmVudCc7XG5cbi8qKlxuICogTW9kdWxlc1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi90YWJsZS5tb2R1bGUnO1xuIl19
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3RvdHMvdGFibGUvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSDs7R0FFRztBQUNILGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsc0NBQXNDLENBQUM7QUFFckQ7O0dBRUc7QUFDSCxjQUFjLGlDQUFpQyxDQUFDO0FBRWhEOztHQUVHO0FBQ0gsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsMkRBQTJELENBQUM7QUFFMUU7O0dBRUc7QUFDSCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsMERBQTBELENBQUM7QUFFekU7O0dBRUc7QUFDSCxjQUFjLG9CQUFvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiB0YWJsZVxuICovXG5cbi8qKlxuICogRW50aXRpZXNcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW50aXRpZXMvdG90cy1jb2x1bW4nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW50aXRpZXMvdG90cy10YWJsZS1jb25maWcnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW50aXRpZXMvdG90cy1hY3Rpb24tdGFibGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW50aXRpZXMvdG90cy10YWJsZS1hcGktY29uZmlnJztcblxuLyoqXG4gKiBIZWxwZXJzXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2hlbHBlcnMvdG90cy10YWJsZS1oZWxwZXInO1xuXG4vKipcbiAqIENvbHVtbnNcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29sdW1ucy90b3RzLWJhc2UtY29sdW1uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb2x1bW5zL3N0cmluZy1jb2x1bW4vc3RyaW5nLWNvbHVtbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29sdW1ucy9tb3JlLW1lbnUtY29sdW1uL21vcmUtbWVudS1jb2x1bW4uY29tcG9uZW50JztcblxuLyoqXG4gKiBDb21wb25lbnRzXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS90b3RzLXRhYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RvdHMtdGFibGUtYXBpL3RvdHMtdGFibGUtYXBpLmNvbXBvbmVudCc7XG5cbi8qKlxuICogTW9kdWxlc1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi90YWJsZS5tb2R1bGUnO1xuIl19
@@ -1,12 +1,18 @@
1
1
  import { TotsQuery } from '@tots/core';
2
2
  import * as i0 from '@angular/core';
3
3
  import { Component, Input, EventEmitter, Output, NgModule } from '@angular/core';
4
- import { tap } from 'rxjs';
5
4
  import * as i1 from '@angular/common';
6
5
  import { CommonModule } from '@angular/common';
7
- import * as i2 from '@angular/material/table';
6
+ import * as i2 from '@angular/material/icon';
7
+ import { MatIconModule } from '@angular/material/icon';
8
+ import * as i3 from '@angular/material/button';
9
+ import { MatButtonModule } from '@angular/material/button';
10
+ import * as i4 from '@angular/material/menu';
11
+ import { MatMenuModule } from '@angular/material/menu';
12
+ import { Subject, tap } from 'rxjs';
13
+ import * as i2$1 from '@angular/material/table';
8
14
  import { MatTableModule } from '@angular/material/table';
9
- import * as i3 from '@angular/material/paginator';
15
+ import * as i3$1 from '@angular/material/paginator';
10
16
  import { MatPaginatorModule } from '@angular/material/paginator';
11
17
 
12
18
  class TotsColumn {
@@ -69,7 +75,7 @@ class TotsBaseColumnComponent {
69
75
  }
70
76
  }
71
77
  TotsBaseColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsBaseColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
72
- TotsBaseColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsBaseColumnComponent, selector: "tots-base-column", inputs: { column: "column", item: "item" }, ngImport: i0, template: '', isInline: true });
78
+ TotsBaseColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsBaseColumnComponent, selector: "tots-base-column", inputs: { column: "column", item: "item", onAction: "onAction" }, ngImport: i0, template: '', isInline: true });
73
79
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsBaseColumnComponent, decorators: [{
74
80
  type: Component,
75
81
  args: [{
@@ -80,6 +86,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
80
86
  type: Input
81
87
  }], item: [{
82
88
  type: Input
89
+ }], onAction: [{
90
+ type: Input
83
91
  }] } });
84
92
 
85
93
  class StringColumnComponent extends TotsBaseColumnComponent {
@@ -91,6 +99,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
91
99
  args: [{ selector: 'tots-string-column', template: "{{getItemValue()}}" }]
92
100
  }] });
93
101
 
102
+ class MoreMenuColumnComponent extends TotsBaseColumnComponent {
103
+ clickButton(itemAction, $event) {
104
+ this.onAction.next({ key: itemAction.key, item: this.item });
105
+ $event.preventDefault();
106
+ return false;
107
+ }
108
+ }
109
+ MoreMenuColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: MoreMenuColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
110
+ MoreMenuColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: MoreMenuColumnComponent, selector: "tots-more-menu-column", usesInheritance: true, ngImport: i0, template: "<button mat-icon-button [matMenuTriggerFor]=\"actions\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\n<mat-menu #actions=\"matMenu\">\n <button mat-menu-item *ngFor=\"let button of column.extra?.actions\" (click)=\"clickButton(button, $event)\">\n <mat-icon *ngIf=\"button.icon\">{{ button.icon }}</mat-icon> {{ button.title }}\n </button>\n</mat-menu>", styles: [""], 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: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i4.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }] });
111
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: MoreMenuColumnComponent, decorators: [{
112
+ type: Component,
113
+ args: [{ selector: 'tots-more-menu-column', template: "<button mat-icon-button [matMenuTriggerFor]=\"actions\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\n<mat-menu #actions=\"matMenu\">\n <button mat-menu-item *ngFor=\"let button of column.extra?.actions\" (click)=\"clickButton(button, $event)\">\n <mat-icon *ngIf=\"button.icon\">{{ button.icon }}</mat-icon> {{ button.title }}\n </button>\n</mat-menu>" }]
114
+ }] });
115
+
94
116
  class BasePrintColumnComponent {
95
117
  constructor(viewContainerRef) {
96
118
  this.viewContainerRef = viewContainerRef;
@@ -99,10 +121,11 @@ class BasePrintColumnComponent {
99
121
  const view = this.viewContainerRef.createComponent(this.column.component);
100
122
  view.instance.column = this.column;
101
123
  view.instance.item = this.item;
124
+ view.instance.onAction = this.onAction;
102
125
  }
103
126
  }
104
127
  BasePrintColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: BasePrintColumnComponent, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
105
- BasePrintColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: { column: "column", item: "item" }, ngImport: i0, template: "<div #contentColumn></div>", styles: [""] });
128
+ BasePrintColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: { column: "column", item: "item", onAction: "onAction" }, ngImport: i0, template: "<div #contentColumn></div>", styles: [""] });
106
129
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: BasePrintColumnComponent, decorators: [{
107
130
  type: Component,
108
131
  args: [{ selector: 'tots-base-print-column', template: "<div #contentColumn></div>" }]
@@ -110,6 +133,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
110
133
  type: Input
111
134
  }], item: [{
112
135
  type: Input
136
+ }], onAction: [{
137
+ type: Input
113
138
  }] } });
114
139
 
115
140
  class TotsTableComponent {
@@ -119,6 +144,7 @@ class TotsTableComponent {
119
144
  this.pageSize = 50;
120
145
  this.hasPagination = true;
121
146
  this.onAction = new EventEmitter();
147
+ this.privateActions = new Subject();
122
148
  this.isLoading = true;
123
149
  this.displayColumns = [];
124
150
  }
@@ -140,16 +166,19 @@ class TotsTableComponent {
140
166
  }
141
167
  loadConfig() {
142
168
  this.loadColumns();
169
+ this.privateActions.subscribe(action => {
170
+ this.onAction.emit(action);
171
+ });
143
172
  }
144
173
  loadColumns() {
145
174
  this.displayColumns = this.config.columns.filter(c => c.is_show || c.is_show == undefined).map(c => c.key);
146
175
  }
147
176
  }
148
177
  TotsTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
149
- TotsTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsTableComponent, selector: "tots-table", inputs: { config: "config", pageIndex: "pageIndex", pageSize: "pageSize", hasPagination: "hasPagination" }, outputs: { onAction: "onAction" }, ngImport: i0, template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"dataItems!.data\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef>{{ column.title }}</th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\"><tots-base-print-column [column]=\"column\" [item]=\"item\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n </table>\n</div>", styles: [""], 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: "component", type: i2.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i2.MatNoDataRow, selector: "ng-template[matNoDataRow]" }, { kind: "component", type: i3.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item"] }] });
178
+ TotsTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsTableComponent, selector: "tots-table", inputs: { config: "config", pageIndex: "pageIndex", pageSize: "pageSize", hasPagination: "hasPagination" }, outputs: { onAction: "onAction" }, ngImport: i0, template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"dataItems!.data\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef>{{ column.title }}</th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [onAction]=\"privateActions\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n </table>\n</div>", styles: [""], 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: "component", type: i2$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i2$1.MatNoDataRow, selector: "ng-template[matNoDataRow]" }, { kind: "component", type: i3$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction"] }] });
150
179
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, decorators: [{
151
180
  type: Component,
152
- args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"dataItems!.data\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef>{{ column.title }}</th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\"><tots-base-print-column [column]=\"column\" [item]=\"item\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n </table>\n</div>" }]
181
+ args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"dataItems!.data\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef>{{ column.title }}</th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [onAction]=\"privateActions\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n </table>\n</div>" }]
153
182
  }], propDecorators: { config: [{
154
183
  type: Input
155
184
  }], pageIndex: [{
@@ -177,6 +206,7 @@ class TotsTableApiComponent {
177
206
  this.config.query.per_page = action.item.pageSize;
178
207
  this.config.query.page = action.item.pageIndex + 1;
179
208
  }
209
+ this.onAction.emit(action);
180
210
  }
181
211
  loadConfig() {
182
212
  this.configTable.id = this.config.id;
@@ -203,15 +233,22 @@ TotsTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version:
203
233
  TotsTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.3", ngImport: i0, type: TotsTableModule, declarations: [TotsTableComponent,
204
234
  BasePrintColumnComponent,
205
235
  StringColumnComponent,
206
- TotsTableApiComponent], imports: [CommonModule,
236
+ TotsTableApiComponent,
237
+ MoreMenuColumnComponent], imports: [CommonModule,
207
238
  // Angular Material
239
+ MatIconModule,
208
240
  MatTableModule,
209
- MatPaginatorModule], exports: [TotsTableComponent,
241
+ MatPaginatorModule,
242
+ MatButtonModule,
243
+ MatMenuModule], exports: [TotsTableComponent,
210
244
  TotsTableApiComponent] });
211
245
  TotsTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableModule, imports: [CommonModule,
212
246
  // Angular Material
247
+ MatIconModule,
213
248
  MatTableModule,
214
- MatPaginatorModule] });
249
+ MatPaginatorModule,
250
+ MatButtonModule,
251
+ MatMenuModule] });
215
252
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableModule, decorators: [{
216
253
  type: NgModule,
217
254
  args: [{
@@ -219,13 +256,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
219
256
  TotsTableComponent,
220
257
  BasePrintColumnComponent,
221
258
  StringColumnComponent,
222
- TotsTableApiComponent
259
+ TotsTableApiComponent,
260
+ MoreMenuColumnComponent
223
261
  ],
224
262
  imports: [
225
263
  CommonModule,
226
264
  // Angular Material
265
+ MatIconModule,
227
266
  MatTableModule,
228
- MatPaginatorModule
267
+ MatPaginatorModule,
268
+ MatButtonModule,
269
+ MatMenuModule,
229
270
  ],
230
271
  exports: [
231
272
  TotsTableComponent,
@@ -242,5 +283,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
242
283
  * Generated bundle index. Do not edit.
243
284
  */
244
285
 
245
- export { StringColumnComponent, TotsActionTable, TotsBaseColumnComponent, TotsColumn, TotsTableApiComponent, TotsTableApiConfig, TotsTableComponent, TotsTableConfig, TotsTableHelper, TotsTableModule };
286
+ export { MoreMenuColumnComponent, StringColumnComponent, TotsActionTable, TotsBaseColumnComponent, TotsColumn, TotsTableApiComponent, TotsTableApiConfig, TotsTableComponent, TotsTableConfig, TotsTableHelper, TotsTableModule };
246
287
  //# sourceMappingURL=tots-table.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"tots-table.mjs","sources":["../../../../projects/tots/table/src/lib/entities/tots-column.ts","../../../../projects/tots/table/src/lib/entities/tots-table-config.ts","../../../../projects/tots/table/src/lib/entities/tots-action-table.ts","../../../../projects/tots/table/src/lib/entities/tots-table-api-config.ts","../../../../projects/tots/table/src/lib/helpers/tots-table-helper.ts","../../../../projects/tots/table/src/lib/columns/tots-base-column.component.ts","../../../../projects/tots/table/src/lib/columns/string-column/string-column.component.ts","../../../../projects/tots/table/src/lib/columns/string-column/string-column.component.html","../../../../projects/tots/table/src/lib/columns/base-print-column/base-print-column.component.ts","../../../../projects/tots/table/src/lib/columns/base-print-column/base-print-column.component.html","../../../../projects/tots/table/src/lib/components/tots-table/tots-table.component.ts","../../../../projects/tots/table/src/lib/components/tots-table/tots-table.component.html","../../../../projects/tots/table/src/lib/components/tots-table-api/tots-table-api.component.ts","../../../../projects/tots/table/src/lib/components/tots-table-api/tots-table-api.component.html","../../../../projects/tots/table/src/lib/table.module.ts","../../../../projects/tots/table/src/public-api.ts","../../../../projects/tots/table/src/tots-table.ts"],"sourcesContent":["export class TotsColumn {\n key: string = '';\n title: string = '';\n field_key?: string|Array<string>;\n component: any;\n extra?: any;\n is_show?: boolean = true;\n}","import { TotsListResponse, TotsQuery } from \"@tots/core\";\nimport { Observable } from \"rxjs\";\nimport { TotsColumn } from \"./tots-column\";\n\nexport class TotsTableConfig {\n id?: string = '';\n columns: Array<TotsColumn> = [];\n obs?: Observable<TotsListResponse<any>>;\n}","export class TotsActionTable {\n key: string = '';\n item?: any;\n}","import { TotsBaseHttpService, TotsQuery } from \"@tots/core\";\nimport { TotsColumn } from \"./tots-column\";\n\nexport class TotsTableApiConfig {\n id?: string = '';\n columns: Array<TotsColumn> = [];\n service!: TotsBaseHttpService<any>;\n query: TotsQuery = new TotsQuery();\n}","export class TotsTableHelper {\n /**\n * Obtiene el valor de un objeto a traves de la KEY\n * @param item \n * @param key \n * @returns \n */\n static getItemValueByKey(item: any, key: string|Array<string>|undefined): any {\n if(key == undefined||item == undefined){\n return '';\n }\n \n if (typeof key == 'string' && item[key] != undefined) {\n return item[key];\n }\n \n let valueFinal = item;\n for (const keyObj of key!) {\n if(valueFinal[keyObj] == undefined){\n return '';\n }\n valueFinal = valueFinal[keyObj];\n }\n return valueFinal;\n }\n}","import { Component, EventEmitter, Input, OnInit } from \"@angular/core\";\nimport { Subject } from \"rxjs\";\nimport { TotsActionTable } from \"../entities/tots-action-table\";\nimport { TotsColumn } from \"../entities/tots-column\";\nimport { TotsTableHelper } from \"../helpers/tots-table-helper\";\n\n@Component({\n selector: 'tots-base-column',\n template: ''\n})\nexport class TotsBaseColumnComponent{\n\n @Input() column!: TotsColumn;\n @Input() item: any;\n\n getItemValue(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n }\n}\n","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-string-column',\n templateUrl: './string-column.component.html',\n styleUrls: ['./string-column.component.css']\n})\nexport class StringColumnComponent extends TotsBaseColumnComponent {\n\n}\n","{{getItemValue()}}","import { Component, Input, ViewContainerRef } from '@angular/core';\nimport { TotsColumn } from '../../entities/tots-column';\n\n@Component({\n selector: 'tots-base-print-column',\n templateUrl: './base-print-column.component.html',\n styleUrls: ['./base-print-column.component.css']\n})\nexport class BasePrintColumnComponent {\n\n @Input() column!: TotsColumn;\n @Input() item: any;\n\n constructor(\n protected viewContainerRef: ViewContainerRef\n ) { }\n\n ngOnInit(): void {\n const view = this.viewContainerRef.createComponent(this.column.component);\n (<any>view.instance).column = this.column;\n (<any>view.instance).item = this.item;\n }\n}\n","<div #contentColumn></div>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { PageEvent } from '@angular/material/paginator';\nimport { TotsListResponse } from '@tots/core';\nimport { Subject, tap } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsTableConfig } from '../../entities/tots-table-config';\n\n@Component({\n selector: 'tots-table',\n templateUrl: './tots-table.component.html',\n styleUrls: ['./tots-table.component.scss']\n})\nexport class TotsTableComponent implements OnInit {\n\n @Input() config = new TotsTableConfig();\n @Input() pageIndex: number = 0;\n @Input() pageSize: number = 50;\n @Input() hasPagination: boolean = true;\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n\n isLoading = true;\n dataItems?: TotsListResponse<any>;\n displayColumns: Array<String> = [];\n\n ngOnInit(): void {\n this.loadConfig();\n this.loadItems();\n }\n\n onClickRow(item: any) {\n this.onAction.emit({ key: 'click-row', item: item });\n }\n\n onPageChange(event: PageEvent) {\n this.onAction.emit({ key: 'page-change', item: event });\n this.loadItems();\n }\n\n loadItems() {\n this.isLoading = true;\n this.config.obs?.\n pipe(tap(res => this.dataItems = res)).\n subscribe(res => this.isLoading = false);\n }\n\n loadConfig() {\n this.loadColumns();\n }\n\n loadColumns() {\n this.displayColumns = this.config.columns.filter(c => c.is_show || c.is_show == undefined).map(c => c.key);\n }\n}\n","<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"dataItems!.data\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef>{{ column.title }}</th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\"><tots-base-print-column [column]=\"column\" [item]=\"item\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n </table>\n</div>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsTableApiConfig } from '../../entities/tots-table-api-config';\nimport { TotsTableConfig } from '../../entities/tots-table-config';\n\n@Component({\n selector: 'tots-table-api',\n templateUrl: './tots-table-api.component.html',\n styleUrls: ['./tots-table-api.component.scss']\n})\nexport class TotsTableApiComponent implements OnInit {\n \n @Input() config = new TotsTableApiConfig();\n @Input() hasPagination: boolean = true;\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n\n configTable = new TotsTableConfig();\n\n ngOnInit(): void {\n this.loadConfig();\n }\n\n onTableAction(action: TotsActionTable) {\n if(action.key == 'page-change'){\n this.config.query.per_page = action.item.pageSize;\n this.config.query.page = action.item.pageIndex + 1;\n }\n }\n\n loadConfig() {\n this.configTable.id = this.config.id;\n this.configTable.columns = this.config.columns;\n this.configTable.obs = this.config.service.list(this.config.query);\n }\n}\n","<tots-table #tableComp [config]=\"configTable\" [pageIndex]=\"config.query.page\" [pageSize]=\"config.query.per_page\" (onAction)=\"onTableAction($event)\"></tots-table>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n/** Angular Material */\nimport { MatTableModule } from '@angular/material/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\n\n/** Components */\nimport { TotsTableComponent } from './components/tots-table/tots-table.component';\nimport { TotsTableApiComponent } from './components/tots-table-api/tots-table-api.component';\n\n/** Columns */\nimport { BasePrintColumnComponent } from './columns/base-print-column/base-print-column.component';\nimport { StringColumnComponent } from './columns/string-column/string-column.component';\n\n\n\n@NgModule({\n declarations: [\n TotsTableComponent,\n BasePrintColumnComponent,\n StringColumnComponent,\n TotsTableApiComponent\n ],\n imports: [\n CommonModule,\n // Angular Material\n MatTableModule,\n MatPaginatorModule\n ],\n exports: [\n TotsTableComponent,\n TotsTableApiComponent\n ]\n})\nexport class TotsTableModule { }\n","/*\n * Public API Surface of table\n */\n\n/**\n * Entities\n */\nexport * from './lib/entities/tots-column';\nexport * from './lib/entities/tots-table-config';\nexport * from './lib/entities/tots-action-table';\nexport * from './lib/entities/tots-table-api-config';\n\n/**\n * Helpers\n */\nexport * from './lib/helpers/tots-table-helper';\n\n/**\n * Columns\n */\nexport * from './lib/columns/tots-base-column.component';\nexport * from './lib/columns/string-column/string-column.component';\n\n/**\n * Components\n */\nexport * from './lib/components/tots-table/tots-table.component';\nexport * from './lib/components/tots-table-api/tots-table-api.component';\n\n/**\n * Modules\n */\nexport * from './lib/table.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i4.BasePrintColumnComponent","i1.TotsTableComponent"],"mappings":"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"}
1
+ {"version":3,"file":"tots-table.mjs","sources":["../../../../projects/tots/table/src/lib/entities/tots-column.ts","../../../../projects/tots/table/src/lib/entities/tots-table-config.ts","../../../../projects/tots/table/src/lib/entities/tots-action-table.ts","../../../../projects/tots/table/src/lib/entities/tots-table-api-config.ts","../../../../projects/tots/table/src/lib/helpers/tots-table-helper.ts","../../../../projects/tots/table/src/lib/columns/tots-base-column.component.ts","../../../../projects/tots/table/src/lib/columns/string-column/string-column.component.ts","../../../../projects/tots/table/src/lib/columns/string-column/string-column.component.html","../../../../projects/tots/table/src/lib/columns/more-menu-column/more-menu-column.component.ts","../../../../projects/tots/table/src/lib/columns/more-menu-column/more-menu-column.component.html","../../../../projects/tots/table/src/lib/columns/base-print-column/base-print-column.component.ts","../../../../projects/tots/table/src/lib/columns/base-print-column/base-print-column.component.html","../../../../projects/tots/table/src/lib/components/tots-table/tots-table.component.ts","../../../../projects/tots/table/src/lib/components/tots-table/tots-table.component.html","../../../../projects/tots/table/src/lib/components/tots-table-api/tots-table-api.component.ts","../../../../projects/tots/table/src/lib/components/tots-table-api/tots-table-api.component.html","../../../../projects/tots/table/src/lib/table.module.ts","../../../../projects/tots/table/src/public-api.ts","../../../../projects/tots/table/src/tots-table.ts"],"sourcesContent":["export class TotsColumn {\n key: string = '';\n title: string = '';\n field_key?: string|Array<string>;\n component: any;\n extra?: any;\n is_show?: boolean = true;\n}","import { TotsListResponse, TotsQuery } from \"@tots/core\";\nimport { Observable } from \"rxjs\";\nimport { TotsColumn } from \"./tots-column\";\n\nexport class TotsTableConfig {\n id?: string = '';\n columns: Array<TotsColumn> = [];\n obs?: Observable<TotsListResponse<any>>;\n}","export class TotsActionTable {\n key: string = '';\n item?: any;\n}","import { TotsBaseHttpService, TotsQuery } from \"@tots/core\";\nimport { TotsColumn } from \"./tots-column\";\n\nexport class TotsTableApiConfig {\n id?: string = '';\n columns: Array<TotsColumn> = [];\n service!: TotsBaseHttpService<any>;\n query: TotsQuery = new TotsQuery();\n}","export class TotsTableHelper {\n /**\n * Obtiene el valor de un objeto a traves de la KEY\n * @param item \n * @param key \n * @returns \n */\n static getItemValueByKey(item: any, key: string|Array<string>|undefined): any {\n if(key == undefined||item == undefined){\n return '';\n }\n \n if (typeof key == 'string' && item[key] != undefined) {\n return item[key];\n }\n \n let valueFinal = item;\n for (const keyObj of key!) {\n if(valueFinal[keyObj] == undefined){\n return '';\n }\n valueFinal = valueFinal[keyObj];\n }\n return valueFinal;\n }\n}","import { Component, EventEmitter, Input, OnInit } from \"@angular/core\";\nimport { Subject } from \"rxjs\";\nimport { TotsActionTable } from \"../entities/tots-action-table\";\nimport { TotsColumn } from \"../entities/tots-column\";\nimport { TotsTableHelper } from \"../helpers/tots-table-helper\";\n\n@Component({\n selector: 'tots-base-column',\n template: ''\n})\nexport class TotsBaseColumnComponent{\n\n @Input() column!: TotsColumn;\n @Input() item: any;\n @Input() onAction!: Subject<TotsActionTable>;\n\n getItemValue(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n }\n}\n","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-string-column',\n templateUrl: './string-column.component.html',\n styleUrls: ['./string-column.component.css']\n})\nexport class StringColumnComponent extends TotsBaseColumnComponent {\n\n}\n","{{getItemValue()}}","import { Component } from '@angular/core';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-more-menu-column',\n templateUrl: './more-menu-column.component.html',\n styleUrls: ['./more-menu-column.component.scss']\n})\nexport class MoreMenuColumnComponent extends TotsBaseColumnComponent {\n\n clickButton(itemAction: any, $event: UIEvent) {\n this.onAction.next({ key: itemAction.key, item: this.item });\n $event.preventDefault();\n return false;\n }\n}\n","<button mat-icon-button [matMenuTriggerFor]=\"actions\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\n<mat-menu #actions=\"matMenu\">\n <button mat-menu-item *ngFor=\"let button of column.extra?.actions\" (click)=\"clickButton(button, $event)\">\n <mat-icon *ngIf=\"button.icon\">{{ button.icon }}</mat-icon> {{ button.title }}\n </button>\n</mat-menu>","import { Component, Input, ViewContainerRef } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsColumn } from '../../entities/tots-column';\n\n@Component({\n selector: 'tots-base-print-column',\n templateUrl: './base-print-column.component.html',\n styleUrls: ['./base-print-column.component.css']\n})\nexport class BasePrintColumnComponent {\n\n @Input() column!: TotsColumn;\n @Input() item: any;\n @Input() onAction!: Subject<TotsActionTable>;\n\n constructor(\n protected viewContainerRef: ViewContainerRef\n ) { }\n\n ngOnInit(): void {\n const view = this.viewContainerRef.createComponent(this.column.component);\n (<any>view.instance).column = this.column;\n (<any>view.instance).item = this.item;\n (<any>view.instance).onAction = this.onAction;\n }\n}\n","<div #contentColumn></div>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { PageEvent } from '@angular/material/paginator';\nimport { TotsListResponse } from '@tots/core';\nimport { Subject, tap } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsTableConfig } from '../../entities/tots-table-config';\n\n@Component({\n selector: 'tots-table',\n templateUrl: './tots-table.component.html',\n styleUrls: ['./tots-table.component.scss']\n})\nexport class TotsTableComponent implements OnInit {\n\n @Input() config = new TotsTableConfig();\n @Input() pageIndex: number = 0;\n @Input() pageSize: number = 50;\n @Input() hasPagination: boolean = true;\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n privateActions = new Subject<TotsActionTable>();\n\n isLoading = true;\n dataItems?: TotsListResponse<any>;\n displayColumns: Array<String> = [];\n\n ngOnInit(): void {\n this.loadConfig();\n this.loadItems();\n }\n\n onClickRow(item: any) {\n this.onAction.emit({ key: 'click-row', item: item });\n }\n\n onPageChange(event: PageEvent) {\n this.onAction.emit({ key: 'page-change', item: event });\n this.loadItems();\n }\n\n loadItems() {\n this.isLoading = true;\n this.config.obs?.\n pipe(tap(res => this.dataItems = res)).\n subscribe(res => this.isLoading = false);\n }\n\n loadConfig() {\n this.loadColumns();\n\n this.privateActions.subscribe(action => {\n this.onAction.emit(action);\n });\n }\n\n loadColumns() {\n this.displayColumns = this.config.columns.filter(c => c.is_show || c.is_show == undefined).map(c => c.key);\n }\n}\n","<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"dataItems!.data\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef>{{ column.title }}</th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [onAction]=\"privateActions\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n </table>\n</div>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsTableApiConfig } from '../../entities/tots-table-api-config';\nimport { TotsTableConfig } from '../../entities/tots-table-config';\n\n@Component({\n selector: 'tots-table-api',\n templateUrl: './tots-table-api.component.html',\n styleUrls: ['./tots-table-api.component.scss']\n})\nexport class TotsTableApiComponent implements OnInit {\n \n @Input() config = new TotsTableApiConfig();\n @Input() hasPagination: boolean = true;\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n\n configTable = new TotsTableConfig();\n\n ngOnInit(): void {\n this.loadConfig();\n }\n\n onTableAction(action: TotsActionTable) {\n if(action.key == 'page-change'){\n this.config.query.per_page = action.item.pageSize;\n this.config.query.page = action.item.pageIndex + 1;\n }\n\n this.onAction.emit(action);\n }\n\n loadConfig() {\n this.configTable.id = this.config.id;\n this.configTable.columns = this.config.columns;\n this.configTable.obs = this.config.service.list(this.config.query);\n }\n}\n","<tots-table #tableComp [config]=\"configTable\" [pageIndex]=\"config.query.page\" [pageSize]=\"config.query.per_page\" (onAction)=\"onTableAction($event)\"></tots-table>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n/** Angular Material */\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatMenuModule } from '@angular/material/menu';\n\n/** Components */\nimport { TotsTableComponent } from './components/tots-table/tots-table.component';\nimport { TotsTableApiComponent } from './components/tots-table-api/tots-table-api.component';\n\n/** Columns */\nimport { BasePrintColumnComponent } from './columns/base-print-column/base-print-column.component';\nimport { StringColumnComponent } from './columns/string-column/string-column.component';\nimport { MoreMenuColumnComponent } from './columns/more-menu-column/more-menu-column.component';\n\n\n\n@NgModule({\n declarations: [\n TotsTableComponent,\n BasePrintColumnComponent,\n StringColumnComponent,\n TotsTableApiComponent,\n MoreMenuColumnComponent\n ],\n imports: [\n CommonModule,\n // Angular Material\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatButtonModule,\n MatMenuModule,\n ],\n exports: [\n TotsTableComponent,\n TotsTableApiComponent\n ]\n})\nexport class TotsTableModule { }\n","/*\n * Public API Surface of table\n */\n\n/**\n * Entities\n */\nexport * from './lib/entities/tots-column';\nexport * from './lib/entities/tots-table-config';\nexport * from './lib/entities/tots-action-table';\nexport * from './lib/entities/tots-table-api-config';\n\n/**\n * Helpers\n */\nexport * from './lib/helpers/tots-table-helper';\n\n/**\n * Columns\n */\nexport * from './lib/columns/tots-base-column.component';\nexport * from './lib/columns/string-column/string-column.component';\nexport * from './lib/columns/more-menu-column/more-menu-column.component';\n\n/**\n * Components\n */\nexport * from './lib/components/tots-table/tots-table.component';\nexport * from './lib/components/tots-table-api/tots-table-api.component';\n\n/**\n * Modules\n */\nexport * from './lib/table.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i3","i4.BasePrintColumnComponent","i1.TotsTableComponent"],"mappings":"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"}
@@ -1,12 +1,18 @@
1
1
  import { TotsQuery } from '@tots/core';
2
2
  import * as i0 from '@angular/core';
3
3
  import { Component, Input, EventEmitter, Output, NgModule } from '@angular/core';
4
- import { tap } from 'rxjs';
5
4
  import * as i1 from '@angular/common';
6
5
  import { CommonModule } from '@angular/common';
7
- import * as i2 from '@angular/material/table';
6
+ import * as i2 from '@angular/material/icon';
7
+ import { MatIconModule } from '@angular/material/icon';
8
+ import * as i3 from '@angular/material/button';
9
+ import { MatButtonModule } from '@angular/material/button';
10
+ import * as i4 from '@angular/material/menu';
11
+ import { MatMenuModule } from '@angular/material/menu';
12
+ import { Subject, tap } from 'rxjs';
13
+ import * as i2$1 from '@angular/material/table';
8
14
  import { MatTableModule } from '@angular/material/table';
9
- import * as i3 from '@angular/material/paginator';
15
+ import * as i3$1 from '@angular/material/paginator';
10
16
  import { MatPaginatorModule } from '@angular/material/paginator';
11
17
 
12
18
  class TotsColumn {
@@ -69,7 +75,7 @@ class TotsBaseColumnComponent {
69
75
  }
70
76
  }
71
77
  TotsBaseColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsBaseColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
72
- TotsBaseColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsBaseColumnComponent, selector: "tots-base-column", inputs: { column: "column", item: "item" }, ngImport: i0, template: '', isInline: true });
78
+ TotsBaseColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsBaseColumnComponent, selector: "tots-base-column", inputs: { column: "column", item: "item", onAction: "onAction" }, ngImport: i0, template: '', isInline: true });
73
79
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsBaseColumnComponent, decorators: [{
74
80
  type: Component,
75
81
  args: [{
@@ -80,6 +86,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
80
86
  type: Input
81
87
  }], item: [{
82
88
  type: Input
89
+ }], onAction: [{
90
+ type: Input
83
91
  }] } });
84
92
 
85
93
  class StringColumnComponent extends TotsBaseColumnComponent {
@@ -91,6 +99,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
91
99
  args: [{ selector: 'tots-string-column', template: "{{getItemValue()}}" }]
92
100
  }] });
93
101
 
102
+ class MoreMenuColumnComponent extends TotsBaseColumnComponent {
103
+ clickButton(itemAction, $event) {
104
+ this.onAction.next({ key: itemAction.key, item: this.item });
105
+ $event.preventDefault();
106
+ return false;
107
+ }
108
+ }
109
+ MoreMenuColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: MoreMenuColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
110
+ MoreMenuColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: MoreMenuColumnComponent, selector: "tots-more-menu-column", usesInheritance: true, ngImport: i0, template: "<button mat-icon-button [matMenuTriggerFor]=\"actions\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\n<mat-menu #actions=\"matMenu\">\n <button mat-menu-item *ngFor=\"let button of column.extra?.actions\" (click)=\"clickButton(button, $event)\">\n <mat-icon *ngIf=\"button.icon\">{{ button.icon }}</mat-icon> {{ button.title }}\n </button>\n</mat-menu>", styles: [""], 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: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i4.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }] });
111
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: MoreMenuColumnComponent, decorators: [{
112
+ type: Component,
113
+ args: [{ selector: 'tots-more-menu-column', template: "<button mat-icon-button [matMenuTriggerFor]=\"actions\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\n<mat-menu #actions=\"matMenu\">\n <button mat-menu-item *ngFor=\"let button of column.extra?.actions\" (click)=\"clickButton(button, $event)\">\n <mat-icon *ngIf=\"button.icon\">{{ button.icon }}</mat-icon> {{ button.title }}\n </button>\n</mat-menu>" }]
114
+ }] });
115
+
94
116
  class BasePrintColumnComponent {
95
117
  constructor(viewContainerRef) {
96
118
  this.viewContainerRef = viewContainerRef;
@@ -99,10 +121,11 @@ class BasePrintColumnComponent {
99
121
  const view = this.viewContainerRef.createComponent(this.column.component);
100
122
  view.instance.column = this.column;
101
123
  view.instance.item = this.item;
124
+ view.instance.onAction = this.onAction;
102
125
  }
103
126
  }
104
127
  BasePrintColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: BasePrintColumnComponent, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
105
- BasePrintColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: { column: "column", item: "item" }, ngImport: i0, template: "<div #contentColumn></div>", styles: [""] });
128
+ BasePrintColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: { column: "column", item: "item", onAction: "onAction" }, ngImport: i0, template: "<div #contentColumn></div>", styles: [""] });
106
129
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: BasePrintColumnComponent, decorators: [{
107
130
  type: Component,
108
131
  args: [{ selector: 'tots-base-print-column', template: "<div #contentColumn></div>" }]
@@ -110,6 +133,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
110
133
  type: Input
111
134
  }], item: [{
112
135
  type: Input
136
+ }], onAction: [{
137
+ type: Input
113
138
  }] } });
114
139
 
115
140
  class TotsTableComponent {
@@ -119,6 +144,7 @@ class TotsTableComponent {
119
144
  this.pageSize = 50;
120
145
  this.hasPagination = true;
121
146
  this.onAction = new EventEmitter();
147
+ this.privateActions = new Subject();
122
148
  this.isLoading = true;
123
149
  this.displayColumns = [];
124
150
  }
@@ -141,16 +167,19 @@ class TotsTableComponent {
141
167
  }
142
168
  loadConfig() {
143
169
  this.loadColumns();
170
+ this.privateActions.subscribe(action => {
171
+ this.onAction.emit(action);
172
+ });
144
173
  }
145
174
  loadColumns() {
146
175
  this.displayColumns = this.config.columns.filter(c => c.is_show || c.is_show == undefined).map(c => c.key);
147
176
  }
148
177
  }
149
178
  TotsTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
150
- TotsTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsTableComponent, selector: "tots-table", inputs: { config: "config", pageIndex: "pageIndex", pageSize: "pageSize", hasPagination: "hasPagination" }, outputs: { onAction: "onAction" }, ngImport: i0, template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"dataItems!.data\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef>{{ column.title }}</th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\"><tots-base-print-column [column]=\"column\" [item]=\"item\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n </table>\n</div>", styles: [""], 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: "component", type: i2.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i2.MatNoDataRow, selector: "ng-template[matNoDataRow]" }, { kind: "component", type: i3.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item"] }] });
179
+ TotsTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsTableComponent, selector: "tots-table", inputs: { config: "config", pageIndex: "pageIndex", pageSize: "pageSize", hasPagination: "hasPagination" }, outputs: { onAction: "onAction" }, ngImport: i0, template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"dataItems!.data\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef>{{ column.title }}</th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [onAction]=\"privateActions\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n </table>\n</div>", styles: [""], 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: "component", type: i2$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i2$1.MatNoDataRow, selector: "ng-template[matNoDataRow]" }, { kind: "component", type: i3$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction"] }] });
151
180
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, decorators: [{
152
181
  type: Component,
153
- args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"dataItems!.data\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef>{{ column.title }}</th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\"><tots-base-print-column [column]=\"column\" [item]=\"item\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n </table>\n</div>" }]
182
+ args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"dataItems!.data\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef>{{ column.title }}</th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [onAction]=\"privateActions\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n </table>\n</div>" }]
154
183
  }], propDecorators: { config: [{
155
184
  type: Input
156
185
  }], pageIndex: [{
@@ -178,6 +207,7 @@ class TotsTableApiComponent {
178
207
  this.config.query.per_page = action.item.pageSize;
179
208
  this.config.query.page = action.item.pageIndex + 1;
180
209
  }
210
+ this.onAction.emit(action);
181
211
  }
182
212
  loadConfig() {
183
213
  this.configTable.id = this.config.id;
@@ -204,15 +234,22 @@ TotsTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version:
204
234
  TotsTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.3", ngImport: i0, type: TotsTableModule, declarations: [TotsTableComponent,
205
235
  BasePrintColumnComponent,
206
236
  StringColumnComponent,
207
- TotsTableApiComponent], imports: [CommonModule,
237
+ TotsTableApiComponent,
238
+ MoreMenuColumnComponent], imports: [CommonModule,
208
239
  // Angular Material
240
+ MatIconModule,
209
241
  MatTableModule,
210
- MatPaginatorModule], exports: [TotsTableComponent,
242
+ MatPaginatorModule,
243
+ MatButtonModule,
244
+ MatMenuModule], exports: [TotsTableComponent,
211
245
  TotsTableApiComponent] });
212
246
  TotsTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableModule, imports: [CommonModule,
213
247
  // Angular Material
248
+ MatIconModule,
214
249
  MatTableModule,
215
- MatPaginatorModule] });
250
+ MatPaginatorModule,
251
+ MatButtonModule,
252
+ MatMenuModule] });
216
253
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableModule, decorators: [{
217
254
  type: NgModule,
218
255
  args: [{
@@ -220,13 +257,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
220
257
  TotsTableComponent,
221
258
  BasePrintColumnComponent,
222
259
  StringColumnComponent,
223
- TotsTableApiComponent
260
+ TotsTableApiComponent,
261
+ MoreMenuColumnComponent
224
262
  ],
225
263
  imports: [
226
264
  CommonModule,
227
265
  // Angular Material
266
+ MatIconModule,
228
267
  MatTableModule,
229
- MatPaginatorModule
268
+ MatPaginatorModule,
269
+ MatButtonModule,
270
+ MatMenuModule,
230
271
  ],
231
272
  exports: [
232
273
  TotsTableComponent,
@@ -243,5 +284,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
243
284
  * Generated bundle index. Do not edit.
244
285
  */
245
286
 
246
- export { StringColumnComponent, TotsActionTable, TotsBaseColumnComponent, TotsColumn, TotsTableApiComponent, TotsTableApiConfig, TotsTableComponent, TotsTableConfig, TotsTableHelper, TotsTableModule };
287
+ export { MoreMenuColumnComponent, StringColumnComponent, TotsActionTable, TotsBaseColumnComponent, TotsColumn, TotsTableApiComponent, TotsTableApiConfig, TotsTableComponent, TotsTableConfig, TotsTableHelper, TotsTableModule };
247
288
  //# sourceMappingURL=tots-table.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"tots-table.mjs","sources":["../../../../projects/tots/table/src/lib/entities/tots-column.ts","../../../../projects/tots/table/src/lib/entities/tots-table-config.ts","../../../../projects/tots/table/src/lib/entities/tots-action-table.ts","../../../../projects/tots/table/src/lib/entities/tots-table-api-config.ts","../../../../projects/tots/table/src/lib/helpers/tots-table-helper.ts","../../../../projects/tots/table/src/lib/columns/tots-base-column.component.ts","../../../../projects/tots/table/src/lib/columns/string-column/string-column.component.ts","../../../../projects/tots/table/src/lib/columns/string-column/string-column.component.html","../../../../projects/tots/table/src/lib/columns/base-print-column/base-print-column.component.ts","../../../../projects/tots/table/src/lib/columns/base-print-column/base-print-column.component.html","../../../../projects/tots/table/src/lib/components/tots-table/tots-table.component.ts","../../../../projects/tots/table/src/lib/components/tots-table/tots-table.component.html","../../../../projects/tots/table/src/lib/components/tots-table-api/tots-table-api.component.ts","../../../../projects/tots/table/src/lib/components/tots-table-api/tots-table-api.component.html","../../../../projects/tots/table/src/lib/table.module.ts","../../../../projects/tots/table/src/public-api.ts","../../../../projects/tots/table/src/tots-table.ts"],"sourcesContent":["export class TotsColumn {\n key: string = '';\n title: string = '';\n field_key?: string|Array<string>;\n component: any;\n extra?: any;\n is_show?: boolean = true;\n}","import { TotsListResponse, TotsQuery } from \"@tots/core\";\nimport { Observable } from \"rxjs\";\nimport { TotsColumn } from \"./tots-column\";\n\nexport class TotsTableConfig {\n id?: string = '';\n columns: Array<TotsColumn> = [];\n obs?: Observable<TotsListResponse<any>>;\n}","export class TotsActionTable {\n key: string = '';\n item?: any;\n}","import { TotsBaseHttpService, TotsQuery } from \"@tots/core\";\nimport { TotsColumn } from \"./tots-column\";\n\nexport class TotsTableApiConfig {\n id?: string = '';\n columns: Array<TotsColumn> = [];\n service!: TotsBaseHttpService<any>;\n query: TotsQuery = new TotsQuery();\n}","export class TotsTableHelper {\n /**\n * Obtiene el valor de un objeto a traves de la KEY\n * @param item \n * @param key \n * @returns \n */\n static getItemValueByKey(item: any, key: string|Array<string>|undefined): any {\n if(key == undefined||item == undefined){\n return '';\n }\n \n if (typeof key == 'string' && item[key] != undefined) {\n return item[key];\n }\n \n let valueFinal = item;\n for (const keyObj of key!) {\n if(valueFinal[keyObj] == undefined){\n return '';\n }\n valueFinal = valueFinal[keyObj];\n }\n return valueFinal;\n }\n}","import { Component, EventEmitter, Input, OnInit } from \"@angular/core\";\nimport { Subject } from \"rxjs\";\nimport { TotsActionTable } from \"../entities/tots-action-table\";\nimport { TotsColumn } from \"../entities/tots-column\";\nimport { TotsTableHelper } from \"../helpers/tots-table-helper\";\n\n@Component({\n selector: 'tots-base-column',\n template: ''\n})\nexport class TotsBaseColumnComponent{\n\n @Input() column!: TotsColumn;\n @Input() item: any;\n\n getItemValue(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n }\n}\n","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-string-column',\n templateUrl: './string-column.component.html',\n styleUrls: ['./string-column.component.css']\n})\nexport class StringColumnComponent extends TotsBaseColumnComponent {\n\n}\n","{{getItemValue()}}","import { Component, Input, ViewContainerRef } from '@angular/core';\nimport { TotsColumn } from '../../entities/tots-column';\n\n@Component({\n selector: 'tots-base-print-column',\n templateUrl: './base-print-column.component.html',\n styleUrls: ['./base-print-column.component.css']\n})\nexport class BasePrintColumnComponent {\n\n @Input() column!: TotsColumn;\n @Input() item: any;\n\n constructor(\n protected viewContainerRef: ViewContainerRef\n ) { }\n\n ngOnInit(): void {\n const view = this.viewContainerRef.createComponent(this.column.component);\n (<any>view.instance).column = this.column;\n (<any>view.instance).item = this.item;\n }\n}\n","<div #contentColumn></div>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { PageEvent } from '@angular/material/paginator';\nimport { TotsListResponse } from '@tots/core';\nimport { Subject, tap } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsTableConfig } from '../../entities/tots-table-config';\n\n@Component({\n selector: 'tots-table',\n templateUrl: './tots-table.component.html',\n styleUrls: ['./tots-table.component.scss']\n})\nexport class TotsTableComponent implements OnInit {\n\n @Input() config = new TotsTableConfig();\n @Input() pageIndex: number = 0;\n @Input() pageSize: number = 50;\n @Input() hasPagination: boolean = true;\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n\n isLoading = true;\n dataItems?: TotsListResponse<any>;\n displayColumns: Array<String> = [];\n\n ngOnInit(): void {\n this.loadConfig();\n this.loadItems();\n }\n\n onClickRow(item: any) {\n this.onAction.emit({ key: 'click-row', item: item });\n }\n\n onPageChange(event: PageEvent) {\n this.onAction.emit({ key: 'page-change', item: event });\n this.loadItems();\n }\n\n loadItems() {\n this.isLoading = true;\n this.config.obs?.\n pipe(tap(res => this.dataItems = res)).\n subscribe(res => this.isLoading = false);\n }\n\n loadConfig() {\n this.loadColumns();\n }\n\n loadColumns() {\n this.displayColumns = this.config.columns.filter(c => c.is_show || c.is_show == undefined).map(c => c.key);\n }\n}\n","<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"dataItems!.data\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef>{{ column.title }}</th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\"><tots-base-print-column [column]=\"column\" [item]=\"item\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n </table>\n</div>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsTableApiConfig } from '../../entities/tots-table-api-config';\nimport { TotsTableConfig } from '../../entities/tots-table-config';\n\n@Component({\n selector: 'tots-table-api',\n templateUrl: './tots-table-api.component.html',\n styleUrls: ['./tots-table-api.component.scss']\n})\nexport class TotsTableApiComponent implements OnInit {\n \n @Input() config = new TotsTableApiConfig();\n @Input() hasPagination: boolean = true;\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n\n configTable = new TotsTableConfig();\n\n ngOnInit(): void {\n this.loadConfig();\n }\n\n onTableAction(action: TotsActionTable) {\n if(action.key == 'page-change'){\n this.config.query.per_page = action.item.pageSize;\n this.config.query.page = action.item.pageIndex + 1;\n }\n }\n\n loadConfig() {\n this.configTable.id = this.config.id;\n this.configTable.columns = this.config.columns;\n this.configTable.obs = this.config.service.list(this.config.query);\n }\n}\n","<tots-table #tableComp [config]=\"configTable\" [pageIndex]=\"config.query.page\" [pageSize]=\"config.query.per_page\" (onAction)=\"onTableAction($event)\"></tots-table>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n/** Angular Material */\nimport { MatTableModule } from '@angular/material/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\n\n/** Components */\nimport { TotsTableComponent } from './components/tots-table/tots-table.component';\nimport { TotsTableApiComponent } from './components/tots-table-api/tots-table-api.component';\n\n/** Columns */\nimport { BasePrintColumnComponent } from './columns/base-print-column/base-print-column.component';\nimport { StringColumnComponent } from './columns/string-column/string-column.component';\n\n\n\n@NgModule({\n declarations: [\n TotsTableComponent,\n BasePrintColumnComponent,\n StringColumnComponent,\n TotsTableApiComponent\n ],\n imports: [\n CommonModule,\n // Angular Material\n MatTableModule,\n MatPaginatorModule\n ],\n exports: [\n TotsTableComponent,\n TotsTableApiComponent\n ]\n})\nexport class TotsTableModule { }\n","/*\n * Public API Surface of table\n */\n\n/**\n * Entities\n */\nexport * from './lib/entities/tots-column';\nexport * from './lib/entities/tots-table-config';\nexport * from './lib/entities/tots-action-table';\nexport * from './lib/entities/tots-table-api-config';\n\n/**\n * Helpers\n */\nexport * from './lib/helpers/tots-table-helper';\n\n/**\n * Columns\n */\nexport * from './lib/columns/tots-base-column.component';\nexport * from './lib/columns/string-column/string-column.component';\n\n/**\n * Components\n */\nexport * from './lib/components/tots-table/tots-table.component';\nexport * from './lib/components/tots-table-api/tots-table-api.component';\n\n/**\n * Modules\n */\nexport * from './lib/table.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i4.BasePrintColumnComponent","i1.TotsTableComponent"],"mappings":"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"}
1
+ {"version":3,"file":"tots-table.mjs","sources":["../../../../projects/tots/table/src/lib/entities/tots-column.ts","../../../../projects/tots/table/src/lib/entities/tots-table-config.ts","../../../../projects/tots/table/src/lib/entities/tots-action-table.ts","../../../../projects/tots/table/src/lib/entities/tots-table-api-config.ts","../../../../projects/tots/table/src/lib/helpers/tots-table-helper.ts","../../../../projects/tots/table/src/lib/columns/tots-base-column.component.ts","../../../../projects/tots/table/src/lib/columns/string-column/string-column.component.ts","../../../../projects/tots/table/src/lib/columns/string-column/string-column.component.html","../../../../projects/tots/table/src/lib/columns/more-menu-column/more-menu-column.component.ts","../../../../projects/tots/table/src/lib/columns/more-menu-column/more-menu-column.component.html","../../../../projects/tots/table/src/lib/columns/base-print-column/base-print-column.component.ts","../../../../projects/tots/table/src/lib/columns/base-print-column/base-print-column.component.html","../../../../projects/tots/table/src/lib/components/tots-table/tots-table.component.ts","../../../../projects/tots/table/src/lib/components/tots-table/tots-table.component.html","../../../../projects/tots/table/src/lib/components/tots-table-api/tots-table-api.component.ts","../../../../projects/tots/table/src/lib/components/tots-table-api/tots-table-api.component.html","../../../../projects/tots/table/src/lib/table.module.ts","../../../../projects/tots/table/src/public-api.ts","../../../../projects/tots/table/src/tots-table.ts"],"sourcesContent":["export class TotsColumn {\n key: string = '';\n title: string = '';\n field_key?: string|Array<string>;\n component: any;\n extra?: any;\n is_show?: boolean = true;\n}","import { TotsListResponse, TotsQuery } from \"@tots/core\";\nimport { Observable } from \"rxjs\";\nimport { TotsColumn } from \"./tots-column\";\n\nexport class TotsTableConfig {\n id?: string = '';\n columns: Array<TotsColumn> = [];\n obs?: Observable<TotsListResponse<any>>;\n}","export class TotsActionTable {\n key: string = '';\n item?: any;\n}","import { TotsBaseHttpService, TotsQuery } from \"@tots/core\";\nimport { TotsColumn } from \"./tots-column\";\n\nexport class TotsTableApiConfig {\n id?: string = '';\n columns: Array<TotsColumn> = [];\n service!: TotsBaseHttpService<any>;\n query: TotsQuery = new TotsQuery();\n}","export class TotsTableHelper {\n /**\n * Obtiene el valor de un objeto a traves de la KEY\n * @param item \n * @param key \n * @returns \n */\n static getItemValueByKey(item: any, key: string|Array<string>|undefined): any {\n if(key == undefined||item == undefined){\n return '';\n }\n \n if (typeof key == 'string' && item[key] != undefined) {\n return item[key];\n }\n \n let valueFinal = item;\n for (const keyObj of key!) {\n if(valueFinal[keyObj] == undefined){\n return '';\n }\n valueFinal = valueFinal[keyObj];\n }\n return valueFinal;\n }\n}","import { Component, EventEmitter, Input, OnInit } from \"@angular/core\";\nimport { Subject } from \"rxjs\";\nimport { TotsActionTable } from \"../entities/tots-action-table\";\nimport { TotsColumn } from \"../entities/tots-column\";\nimport { TotsTableHelper } from \"../helpers/tots-table-helper\";\n\n@Component({\n selector: 'tots-base-column',\n template: ''\n})\nexport class TotsBaseColumnComponent{\n\n @Input() column!: TotsColumn;\n @Input() item: any;\n @Input() onAction!: Subject<TotsActionTable>;\n\n getItemValue(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n }\n}\n","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-string-column',\n templateUrl: './string-column.component.html',\n styleUrls: ['./string-column.component.css']\n})\nexport class StringColumnComponent extends TotsBaseColumnComponent {\n\n}\n","{{getItemValue()}}","import { Component } from '@angular/core';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-more-menu-column',\n templateUrl: './more-menu-column.component.html',\n styleUrls: ['./more-menu-column.component.scss']\n})\nexport class MoreMenuColumnComponent extends TotsBaseColumnComponent {\n\n clickButton(itemAction: any, $event: UIEvent) {\n this.onAction.next({ key: itemAction.key, item: this.item });\n $event.preventDefault();\n return false;\n }\n}\n","<button mat-icon-button [matMenuTriggerFor]=\"actions\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\n<mat-menu #actions=\"matMenu\">\n <button mat-menu-item *ngFor=\"let button of column.extra?.actions\" (click)=\"clickButton(button, $event)\">\n <mat-icon *ngIf=\"button.icon\">{{ button.icon }}</mat-icon> {{ button.title }}\n </button>\n</mat-menu>","import { Component, Input, ViewContainerRef } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsColumn } from '../../entities/tots-column';\n\n@Component({\n selector: 'tots-base-print-column',\n templateUrl: './base-print-column.component.html',\n styleUrls: ['./base-print-column.component.css']\n})\nexport class BasePrintColumnComponent {\n\n @Input() column!: TotsColumn;\n @Input() item: any;\n @Input() onAction!: Subject<TotsActionTable>;\n\n constructor(\n protected viewContainerRef: ViewContainerRef\n ) { }\n\n ngOnInit(): void {\n const view = this.viewContainerRef.createComponent(this.column.component);\n (<any>view.instance).column = this.column;\n (<any>view.instance).item = this.item;\n (<any>view.instance).onAction = this.onAction;\n }\n}\n","<div #contentColumn></div>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { PageEvent } from '@angular/material/paginator';\nimport { TotsListResponse } from '@tots/core';\nimport { Subject, tap } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsTableConfig } from '../../entities/tots-table-config';\n\n@Component({\n selector: 'tots-table',\n templateUrl: './tots-table.component.html',\n styleUrls: ['./tots-table.component.scss']\n})\nexport class TotsTableComponent implements OnInit {\n\n @Input() config = new TotsTableConfig();\n @Input() pageIndex: number = 0;\n @Input() pageSize: number = 50;\n @Input() hasPagination: boolean = true;\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n privateActions = new Subject<TotsActionTable>();\n\n isLoading = true;\n dataItems?: TotsListResponse<any>;\n displayColumns: Array<String> = [];\n\n ngOnInit(): void {\n this.loadConfig();\n this.loadItems();\n }\n\n onClickRow(item: any) {\n this.onAction.emit({ key: 'click-row', item: item });\n }\n\n onPageChange(event: PageEvent) {\n this.onAction.emit({ key: 'page-change', item: event });\n this.loadItems();\n }\n\n loadItems() {\n this.isLoading = true;\n this.config.obs?.\n pipe(tap(res => this.dataItems = res)).\n subscribe(res => this.isLoading = false);\n }\n\n loadConfig() {\n this.loadColumns();\n\n this.privateActions.subscribe(action => {\n this.onAction.emit(action);\n });\n }\n\n loadColumns() {\n this.displayColumns = this.config.columns.filter(c => c.is_show || c.is_show == undefined).map(c => c.key);\n }\n}\n","<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"dataItems!.data\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef>{{ column.title }}</th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [onAction]=\"privateActions\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n </table>\n</div>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsTableApiConfig } from '../../entities/tots-table-api-config';\nimport { TotsTableConfig } from '../../entities/tots-table-config';\n\n@Component({\n selector: 'tots-table-api',\n templateUrl: './tots-table-api.component.html',\n styleUrls: ['./tots-table-api.component.scss']\n})\nexport class TotsTableApiComponent implements OnInit {\n \n @Input() config = new TotsTableApiConfig();\n @Input() hasPagination: boolean = true;\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n\n configTable = new TotsTableConfig();\n\n ngOnInit(): void {\n this.loadConfig();\n }\n\n onTableAction(action: TotsActionTable) {\n if(action.key == 'page-change'){\n this.config.query.per_page = action.item.pageSize;\n this.config.query.page = action.item.pageIndex + 1;\n }\n\n this.onAction.emit(action);\n }\n\n loadConfig() {\n this.configTable.id = this.config.id;\n this.configTable.columns = this.config.columns;\n this.configTable.obs = this.config.service.list(this.config.query);\n }\n}\n","<tots-table #tableComp [config]=\"configTable\" [pageIndex]=\"config.query.page\" [pageSize]=\"config.query.per_page\" (onAction)=\"onTableAction($event)\"></tots-table>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n/** Angular Material */\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatMenuModule } from '@angular/material/menu';\n\n/** Components */\nimport { TotsTableComponent } from './components/tots-table/tots-table.component';\nimport { TotsTableApiComponent } from './components/tots-table-api/tots-table-api.component';\n\n/** Columns */\nimport { BasePrintColumnComponent } from './columns/base-print-column/base-print-column.component';\nimport { StringColumnComponent } from './columns/string-column/string-column.component';\nimport { MoreMenuColumnComponent } from './columns/more-menu-column/more-menu-column.component';\n\n\n\n@NgModule({\n declarations: [\n TotsTableComponent,\n BasePrintColumnComponent,\n StringColumnComponent,\n TotsTableApiComponent,\n MoreMenuColumnComponent\n ],\n imports: [\n CommonModule,\n // Angular Material\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatButtonModule,\n MatMenuModule,\n ],\n exports: [\n TotsTableComponent,\n TotsTableApiComponent\n ]\n})\nexport class TotsTableModule { }\n","/*\n * Public API Surface of table\n */\n\n/**\n * Entities\n */\nexport * from './lib/entities/tots-column';\nexport * from './lib/entities/tots-table-config';\nexport * from './lib/entities/tots-action-table';\nexport * from './lib/entities/tots-table-api-config';\n\n/**\n * Helpers\n */\nexport * from './lib/helpers/tots-table-helper';\n\n/**\n * Columns\n */\nexport * from './lib/columns/tots-base-column.component';\nexport * from './lib/columns/string-column/string-column.component';\nexport * from './lib/columns/more-menu-column/more-menu-column.component';\n\n/**\n * Components\n */\nexport * from './lib/components/tots-table/tots-table.component';\nexport * from './lib/components/tots-table-api/tots-table-api.component';\n\n/**\n * Modules\n */\nexport * from './lib/table.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i3","i4.BasePrintColumnComponent","i1.TotsTableComponent"],"mappings":"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"}
@@ -1,12 +1,15 @@
1
1
  import { ViewContainerRef } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import { TotsActionTable } from '../../entities/tots-action-table';
2
4
  import { TotsColumn } from '../../entities/tots-column';
3
5
  import * as i0 from "@angular/core";
4
6
  export declare class BasePrintColumnComponent {
5
7
  protected viewContainerRef: ViewContainerRef;
6
8
  column: TotsColumn;
7
9
  item: any;
10
+ onAction: Subject<TotsActionTable>;
8
11
  constructor(viewContainerRef: ViewContainerRef);
9
12
  ngOnInit(): void;
10
13
  static ɵfac: i0.ɵɵFactoryDeclaration<BasePrintColumnComponent, never>;
11
- static ɵcmp: i0.ɵɵComponentDeclaration<BasePrintColumnComponent, "tots-base-print-column", never, { "column": "column"; "item": "item"; }, {}, never, never, false, never>;
14
+ static ɵcmp: i0.ɵɵComponentDeclaration<BasePrintColumnComponent, "tots-base-print-column", never, { "column": "column"; "item": "item"; "onAction": "onAction"; }, {}, never, never, false, never>;
12
15
  }
@@ -0,0 +1,7 @@
1
+ import { TotsBaseColumnComponent } from '../tots-base-column.component';
2
+ import * as i0 from "@angular/core";
3
+ export declare class MoreMenuColumnComponent extends TotsBaseColumnComponent {
4
+ clickButton(itemAction: any, $event: UIEvent): boolean;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<MoreMenuColumnComponent, never>;
6
+ static ɵcmp: i0.ɵɵComponentDeclaration<MoreMenuColumnComponent, "tots-more-menu-column", never, {}, {}, never, never, false, never>;
7
+ }
@@ -1,9 +1,12 @@
1
+ import { Subject } from "rxjs";
2
+ import { TotsActionTable } from "../entities/tots-action-table";
1
3
  import { TotsColumn } from "../entities/tots-column";
2
4
  import * as i0 from "@angular/core";
3
5
  export declare class TotsBaseColumnComponent {
4
6
  column: TotsColumn;
5
7
  item: any;
8
+ onAction: Subject<TotsActionTable>;
6
9
  getItemValue(): any;
7
10
  static ɵfac: i0.ɵɵFactoryDeclaration<TotsBaseColumnComponent, never>;
8
- static ɵcmp: i0.ɵɵComponentDeclaration<TotsBaseColumnComponent, "tots-base-column", never, { "column": "column"; "item": "item"; }, {}, never, never, false, never>;
11
+ static ɵcmp: i0.ɵɵComponentDeclaration<TotsBaseColumnComponent, "tots-base-column", never, { "column": "column"; "item": "item"; "onAction": "onAction"; }, {}, never, never, false, never>;
9
12
  }
@@ -1,6 +1,7 @@
1
1
  import { EventEmitter, OnInit } from '@angular/core';
2
2
  import { PageEvent } from '@angular/material/paginator';
3
3
  import { TotsListResponse } from '@tots/core';
4
+ import { Subject } from 'rxjs';
4
5
  import { TotsActionTable } from '../../entities/tots-action-table';
5
6
  import { TotsTableConfig } from '../../entities/tots-table-config';
6
7
  import * as i0 from "@angular/core";
@@ -10,6 +11,7 @@ export declare class TotsTableComponent implements OnInit {
10
11
  pageSize: number;
11
12
  hasPagination: boolean;
12
13
  onAction: EventEmitter<TotsActionTable>;
14
+ privateActions: Subject<TotsActionTable>;
13
15
  isLoading: boolean;
14
16
  dataItems?: TotsListResponse<any>;
15
17
  displayColumns: Array<String>;
@@ -3,11 +3,15 @@ import * as i1 from "./components/tots-table/tots-table.component";
3
3
  import * as i2 from "./columns/base-print-column/base-print-column.component";
4
4
  import * as i3 from "./columns/string-column/string-column.component";
5
5
  import * as i4 from "./components/tots-table-api/tots-table-api.component";
6
- import * as i5 from "@angular/common";
7
- import * as i6 from "@angular/material/table";
8
- import * as i7 from "@angular/material/paginator";
6
+ import * as i5 from "./columns/more-menu-column/more-menu-column.component";
7
+ import * as i6 from "@angular/common";
8
+ import * as i7 from "@angular/material/icon";
9
+ import * as i8 from "@angular/material/table";
10
+ import * as i9 from "@angular/material/paginator";
11
+ import * as i10 from "@angular/material/button";
12
+ import * as i11 from "@angular/material/menu";
9
13
  export declare class TotsTableModule {
10
14
  static ɵfac: i0.ɵɵFactoryDeclaration<TotsTableModule, never>;
11
- static ɵmod: i0.ɵɵNgModuleDeclaration<TotsTableModule, [typeof i1.TotsTableComponent, typeof i2.BasePrintColumnComponent, typeof i3.StringColumnComponent, typeof i4.TotsTableApiComponent], [typeof i5.CommonModule, typeof i6.MatTableModule, typeof i7.MatPaginatorModule], [typeof i1.TotsTableComponent, typeof i4.TotsTableApiComponent]>;
15
+ static ɵmod: i0.ɵɵNgModuleDeclaration<TotsTableModule, [typeof i1.TotsTableComponent, typeof i2.BasePrintColumnComponent, typeof i3.StringColumnComponent, typeof i4.TotsTableApiComponent, typeof i5.MoreMenuColumnComponent], [typeof i6.CommonModule, typeof i7.MatIconModule, typeof i8.MatTableModule, typeof i9.MatPaginatorModule, typeof i10.MatButtonModule, typeof i11.MatMenuModule], [typeof i1.TotsTableComponent, typeof i4.TotsTableApiComponent]>;
12
16
  static ɵinj: i0.ɵɵInjectorDeclaration<TotsTableModule>;
13
17
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tots/table",
3
- "version": "15.0.1",
3
+ "version": "15.0.3",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^15.0.0",
6
6
  "@angular/core": "^15.0.0",
package/public-api.d.ts CHANGED
@@ -14,6 +14,7 @@ export * from './lib/helpers/tots-table-helper';
14
14
  */
15
15
  export * from './lib/columns/tots-base-column.component';
16
16
  export * from './lib/columns/string-column/string-column.component';
17
+ export * from './lib/columns/more-menu-column/more-menu-column.component';
17
18
  /**
18
19
  * Components
19
20
  */