@esfaenza/utility-components 15.2.4 → 15.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,19 +1,15 @@
1
+ // Angular
1
2
  import { Component } from "@angular/core";
2
3
  import * as i0 from "@angular/core";
3
- /**
4
- * ATTENZIONE
5
- * Questo componente si trova anche su @esfaenza/core branch next2
6
- * Viene "duplicato" in quanto il rilascio di quel branch non è ancora minimamente pianificato
7
- * e replicare il componente in ogni progetto non ha senso.
8
- * Forse sarebbe meglio lasciarlo solo qui, e core lo importa da appunto questa libreria.
9
- */
4
+ // Configurazioni
5
+ // Applicazione
10
6
  export class OperationsMenuComponent {
11
7
  constructor() { }
12
8
  }
13
9
  OperationsMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OperationsMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
14
- OperationsMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OperationsMenuComponent, selector: "ops-menu", ngImport: i0, template: "<h5 class=\"app-bold\">Operazioni</h5>\r\n\r\n<div class=\"card app-margin-top-10\">\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>" });
10
+ OperationsMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OperationsMenuComponent, selector: "ops-menu", ngImport: i0, template: "<!-- Widget Operazioni 2.0 -->\r\n<div class=\"card app-margin-bottom-15\">\r\n <div class=\"card-header\">\r\n <span class=\"text-uppercase\">Operazioni</span>\r\n </div>\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>" });
15
11
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OperationsMenuComponent, decorators: [{
16
12
  type: Component,
17
- args: [{ selector: "ops-menu", template: "<h5 class=\"app-bold\">Operazioni</h5>\r\n\r\n<div class=\"card app-margin-top-10\">\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>" }]
13
+ args: [{ selector: "ops-menu", template: "<!-- Widget Operazioni 2.0 -->\r\n<div class=\"card app-margin-bottom-15\">\r\n <div class=\"card-header\">\r\n <span class=\"text-uppercase\">Operazioni</span>\r\n </div>\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>" }]
18
14
  }], ctorParameters: function () { return []; } });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BzLW1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXRpbGl0eS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9vcGVyYXRpb25zL29wcy1tZW51L29wcy1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvb3BlcmF0aW9ucy9vcHMtbWVudS9vcHMtbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUUxQzs7Ozs7O0dBTUc7QUFLSCxNQUFNLE9BQU8sdUJBQXVCO0lBQ2hDLGdCQUFnQixDQUFDOztvSEFEUix1QkFBdUI7d0dBQXZCLHVCQUF1QixnRENicEMsZ0tBTU07MkZET08sdUJBQXVCO2tCQUpuQyxTQUFTOytCQUNJLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuLyoqXHJcbiAqIEFUVEVOWklPTkVcclxuICogUXVlc3RvIGNvbXBvbmVudGUgc2kgdHJvdmEgYW5jaGUgc3UgQGVzZmFlbnphL2NvcmUgYnJhbmNoIG5leHQyXHJcbiAqIFZpZW5lIFwiZHVwbGljYXRvXCIgaW4gcXVhbnRvIGlsIHJpbGFzY2lvIGRpIHF1ZWwgYnJhbmNoIG5vbiDDqCBhbmNvcmEgbWluaW1hbWVudGUgcGlhbmlmaWNhdG9cclxuICogZSByZXBsaWNhcmUgaWwgY29tcG9uZW50ZSBpbiBvZ25pIHByb2dldHRvIG5vbiBoYSBzZW5zby4gXHJcbiAqIEZvcnNlIHNhcmViYmUgbWVnbGlvIGxhc2NpYXJsbyBzb2xvIHF1aSwgZSBjb3JlIGxvIGltcG9ydGEgZGEgYXBwdW50byBxdWVzdGEgbGlicmVyaWEuXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiBcIm9wcy1tZW51XCIsXHJcbiAgICB0ZW1wbGF0ZVVybDogXCIuL29wcy1tZW51LmNvbXBvbmVudC5odG1sXCJcclxufSlcclxuZXhwb3J0IGNsYXNzIE9wZXJhdGlvbnNNZW51Q29tcG9uZW50IHtcclxuICAgIGNvbnN0cnVjdG9yKCkgeyB9XHJcbn0iLCI8aDUgY2xhc3M9XCJhcHAtYm9sZFwiPk9wZXJhemlvbmk8L2g1PlxyXG5cclxuPGRpdiBjbGFzcz1cImNhcmQgYXBwLW1hcmdpbi10b3AtMTBcIj5cclxuICAgIDxkaXY+XHJcbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BzLW1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXRpbGl0eS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9vcGVyYXRpb25zL29wcy1tZW51L29wcy1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvb3BlcmF0aW9ucy9vcHMtbWVudS9vcHMtbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFFLFNBQVMsRUFBUyxNQUFNLGVBQWUsQ0FBQzs7QUFFakQsaUJBQWlCO0FBRWpCLGVBQWU7QUFNZixNQUFNLE9BQU8sdUJBQXVCO0lBQ2hDLGdCQUFnQixDQUFDOztvSEFEUix1QkFBdUI7d0dBQXZCLHVCQUF1QixnRENYcEMsb1FBUU07MkZER08sdUJBQXVCO2tCQUpuQyxTQUFTOytCQUNJLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBbmd1bGFyXHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuLy8gQ29uZmlndXJhemlvbmlcclxuXHJcbi8vIEFwcGxpY2F6aW9uZVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogXCJvcHMtbWVudVwiLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwiLi9vcHMtbWVudS5jb21wb25lbnQuaHRtbFwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBPcGVyYXRpb25zTWVudUNvbXBvbmVudCB7XHJcbiAgICBjb25zdHJ1Y3RvcigpIHsgfVxyXG59IiwiPCEtLSBXaWRnZXQgT3BlcmF6aW9uaSAyLjAgLS0+XHJcbjxkaXYgY2xhc3M9XCJjYXJkIGFwcC1tYXJnaW4tYm90dG9tLTE1XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXJcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtdXBwZXJjYXNlXCI+T3BlcmF6aW9uaTwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdj5cclxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
@@ -1,6 +1,9 @@
1
+ // Angular
1
2
  import { Component, Input } from "@angular/core";
2
3
  import * as i0 from "@angular/core";
3
4
  import * as i1 from "@angular/material/expansion";
5
+ // Configurazioni
6
+ // Applicazione
4
7
  export class OperationsMenuCategoryComponent {
5
8
  constructor() {
6
9
  this.Name = "Nuova categoria";
@@ -17,4 +20,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
17
20
  }], Expanded: [{
18
21
  type: Input
19
22
  }] } });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BzLW1lbnUtY2F0ZWdvcnkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXRpbGl0eS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9vcGVyYXRpb25zL29wcy1tZW51LWNhdGVnb3J5L29wcy1tZW51LWNhdGVnb3J5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvb3BlcmF0aW9ucy9vcHMtbWVudS1jYXRlZ29yeS9vcHMtbWVudS1jYXRlZ29yeS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBTWpELE1BQU0sT0FBTywrQkFBK0I7SUFJeEM7UUFIUyxTQUFJLEdBQVcsaUJBQWlCLENBQUM7UUFDakMsYUFBUSxHQUFZLEtBQUssQ0FBQztJQUVuQixDQUFDOzs0SEFKUiwrQkFBK0I7Z0hBQS9CLCtCQUErQix5R0NONUMsMmRBU2dCOzJGREhILCtCQUErQjtrQkFKM0MsU0FBUzsrQkFDSSxtQkFBbUI7MEVBSXBCLElBQUk7c0JBQVosS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiBcIm9wcy1tZW51LWNhdGVnb3J5XCIsXHJcbiAgICB0ZW1wbGF0ZVVybDogXCIuL29wcy1tZW51LWNhdGVnb3J5LmNvbXBvbmVudC5odG1sXCJcclxufSlcclxuZXhwb3J0IGNsYXNzIE9wZXJhdGlvbnNNZW51Q2F0ZWdvcnlDb21wb25lbnQge1xyXG4gICAgQElucHV0KCkgTmFtZTogc3RyaW5nID0gXCJOdW92YSBjYXRlZ29yaWFcIjtcclxuICAgIEBJbnB1dCgpIEV4cGFuZGVkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7IH1cclxufSIsIjxtYXQtYWNjb3JkaW9uPlxyXG4gICAgPG1hdC1leHBhbnNpb24tcGFuZWwgW2V4cGFuZGVkXT1cIkV4cGFuZGVkXCIgKG9wZW5lZCk9XCJFeHBhbmRlZCA9IHRydWVcIiAoY2xvc2VkKT1cIkV4cGFuZGVkID0gZmFsc2VcIj5cclxuICAgICAgICA8IS0tSGVhZGVyLS0+XHJcbiAgICAgICAgPG1hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyIHN0eWxlPVwibWF4LWhlaWdodDogNDhweCAhaW1wb3J0YW50XCI+XHJcbiAgICAgICAgICAgIDxtYXQtcGFuZWwtdGl0bGUgY2xhc3M9XCJhcHAtbm8tc2VsZWN0aW9uXCI+e3tOYW1lfX08L21hdC1wYW5lbC10aXRsZT5cclxuICAgICAgICA8L21hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyPlxyXG4gICAgICAgIDwhLS1PcGVyYXRpb25zLS0+XHJcbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgPC9tYXQtZXhwYW5zaW9uLXBhbmVsPlxyXG48L21hdC1hY2NvcmRpb24+Il19
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BzLW1lbnUtY2F0ZWdvcnkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXRpbGl0eS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9vcGVyYXRpb25zL29wcy1tZW51LWNhdGVnb3J5L29wcy1tZW51LWNhdGVnb3J5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvb3BlcmF0aW9ucy9vcHMtbWVudS1jYXRlZ29yeS9vcHMtbWVudS1jYXRlZ29yeS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUVqRCxpQkFBaUI7QUFFakIsZUFBZTtBQU1mLE1BQU0sT0FBTywrQkFBK0I7SUFJeEM7UUFIUyxTQUFJLEdBQVcsaUJBQWlCLENBQUM7UUFDakMsYUFBUSxHQUFZLEtBQUssQ0FBQztJQUVuQixDQUFDOzs0SEFKUiwrQkFBK0I7Z0hBQS9CLCtCQUErQix5R0NYNUMsMmRBU2dCOzJGREVILCtCQUErQjtrQkFKM0MsU0FBUzsrQkFDSSxtQkFBbUI7MEVBSXBCLElBQUk7c0JBQVosS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhclxyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8vIENvbmZpZ3VyYXppb25pXHJcblxyXG4vLyBBcHBsaWNhemlvbmVcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwib3BzLW1lbnUtY2F0ZWdvcnlcIixcclxuICAgIHRlbXBsYXRlVXJsOiBcIi4vb3BzLW1lbnUtY2F0ZWdvcnkuY29tcG9uZW50Lmh0bWxcIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgT3BlcmF0aW9uc01lbnVDYXRlZ29yeUNvbXBvbmVudCB7XHJcbiAgICBASW5wdXQoKSBOYW1lOiBzdHJpbmcgPSBcIk51b3ZhIGNhdGVnb3JpYVwiO1xyXG4gICAgQElucHV0KCkgRXhwYW5kZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHsgfVxyXG59IiwiPG1hdC1hY2NvcmRpb24+XHJcbiAgICA8bWF0LWV4cGFuc2lvbi1wYW5lbCBbZXhwYW5kZWRdPVwiRXhwYW5kZWRcIiAob3BlbmVkKT1cIkV4cGFuZGVkID0gdHJ1ZVwiIChjbG9zZWQpPVwiRXhwYW5kZWQgPSBmYWxzZVwiPlxyXG4gICAgICAgIDwhLS1IZWFkZXItLT5cclxuICAgICAgICA8bWF0LWV4cGFuc2lvbi1wYW5lbC1oZWFkZXIgc3R5bGU9XCJtYXgtaGVpZ2h0OiA0OHB4ICFpbXBvcnRhbnRcIj5cclxuICAgICAgICAgICAgPG1hdC1wYW5lbC10aXRsZSBjbGFzcz1cImFwcC1uby1zZWxlY3Rpb25cIj57e05hbWV9fTwvbWF0LXBhbmVsLXRpdGxlPlxyXG4gICAgICAgIDwvbWF0LWV4cGFuc2lvbi1wYW5lbC1oZWFkZXI+XHJcbiAgICAgICAgPCEtLU9wZXJhdGlvbnMtLT5cclxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICA8L21hdC1leHBhbnNpb24tcGFuZWw+XHJcbjwvbWF0LWFjY29yZGlvbj4iXX0=
@@ -1,7 +1,13 @@
1
- import { Component, EventEmitter, Output } from "@angular/core";
1
+ // Angular
2
+ import { Component, EventEmitter, Input, Output } from "@angular/core";
2
3
  import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "@angular/router";
3
6
  export class OperationsMenuOperationComponent {
4
7
  constructor() {
8
+ // Se valorizzato, non verrà più emesso l'output "onClick"
9
+ this.RouterLink = null;
10
+ // Passacarte per il vero evento "click" del componente
5
11
  this.onClick = new EventEmitter();
6
12
  }
7
13
  emitClick() {
@@ -9,11 +15,13 @@ export class OperationsMenuOperationComponent {
9
15
  }
10
16
  }
11
17
  OperationsMenuOperationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OperationsMenuOperationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
- OperationsMenuOperationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OperationsMenuOperationComponent, selector: "ops-menu-operation", outputs: { onClick: "onClick" }, ngImport: i0, template: "<div class=\"app-padding-left-10\">\r\n <a class=\"app-link app-inline-wrapped\" (click)=\"emitClick()\"><ng-content></ng-content></a>\r\n</div>" });
18
+ OperationsMenuOperationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OperationsMenuOperationComponent, selector: "ops-menu-operation", inputs: { RouterLink: "RouterLink" }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<div class=\"app-padding-left-10\">\r\n <a *ngIf=\"!RouterLink\" class=\"app-link app-inline-wrapped\" (click)=\"emitClick()\"><ng-container *ngTemplateOutlet=\"Content;\"></ng-container></a>\r\n <a *ngIf=\"!!RouterLink\" class=\"app-link app-inline-wrapped\" [routerLink]=\"RouterLink\"><ng-container *ngTemplateOutlet=\"Content;\"></ng-container></a>\r\n</div>\r\n\r\n<ng-template #Content>\r\n <ng-content></ng-content>\r\n</ng-template>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
13
19
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OperationsMenuOperationComponent, decorators: [{
14
20
  type: Component,
15
- args: [{ selector: "ops-menu-operation", template: "<div class=\"app-padding-left-10\">\r\n <a class=\"app-link app-inline-wrapped\" (click)=\"emitClick()\"><ng-content></ng-content></a>\r\n</div>" }]
16
- }], ctorParameters: function () { return []; }, propDecorators: { onClick: [{
21
+ args: [{ selector: "ops-menu-operation", template: "<div class=\"app-padding-left-10\">\r\n <a *ngIf=\"!RouterLink\" class=\"app-link app-inline-wrapped\" (click)=\"emitClick()\"><ng-container *ngTemplateOutlet=\"Content;\"></ng-container></a>\r\n <a *ngIf=\"!!RouterLink\" class=\"app-link app-inline-wrapped\" [routerLink]=\"RouterLink\"><ng-container *ngTemplateOutlet=\"Content;\"></ng-container></a>\r\n</div>\r\n\r\n<ng-template #Content>\r\n <ng-content></ng-content>\r\n</ng-template>" }]
22
+ }], ctorParameters: function () { return []; }, propDecorators: { RouterLink: [{
23
+ type: Input
24
+ }], onClick: [{
17
25
  type: Output
18
26
  }] } });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BzLW1lbnUtb3BlcmF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvb3BlcmF0aW9ucy9vcHMtbWVudS1vcGVyYXRpb24vb3BzLW1lbnUtb3BlcmF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvb3BlcmF0aW9ucy9vcHMtbWVudS1vcGVyYXRpb24vb3BzLW1lbnUtb3BlcmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNaEUsTUFBTSxPQUFPLGdDQUFnQztJQUd6QztRQUZVLFlBQU8sR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQUVqRCxDQUFDO0lBRWpCLFNBQVM7UUFDTCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hCLENBQUM7OzZIQVBRLGdDQUFnQztpSEFBaEMsZ0NBQWdDLDJGQ043QyxxSkFFTTsyRkRJTyxnQ0FBZ0M7a0JBSjVDLFNBQVM7K0JBQ0ksb0JBQW9COzBFQUlwQixPQUFPO3NCQUFoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE91dHB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiBcIm9wcy1tZW51LW9wZXJhdGlvblwiLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwiLi9vcHMtbWVudS1vcGVyYXRpb24uY29tcG9uZW50Lmh0bWxcIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgT3BlcmF0aW9uc01lbnVPcGVyYXRpb25Db21wb25lbnQge1xyXG4gICAgQE91dHB1dCgpIG9uQ2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICAgIGVtaXRDbGljaygpIHtcclxuICAgICAgICB0aGlzLm9uQ2xpY2suZW1pdCgpO1xyXG4gICAgfVxyXG59IiwiPGRpdiBjbGFzcz1cImFwcC1wYWRkaW5nLWxlZnQtMTBcIj5cclxuICAgIDxhIGNsYXNzPVwiYXBwLWxpbmsgYXBwLWlubGluZS13cmFwcGVkXCIgKGNsaWNrKT1cImVtaXRDbGljaygpXCI+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvYT5cclxuPC9kaXY+Il19
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BzLW1lbnUtb3BlcmF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvb3BlcmF0aW9ucy9vcHMtbWVudS1vcGVyYXRpb24vb3BzLW1lbnUtb3BlcmF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvb3BlcmF0aW9ucy9vcHMtbWVudS1vcGVyYXRpb24vb3BzLW1lbnUtb3BlcmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFVBQVU7QUFDVixPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBTXZFLE1BQU0sT0FBTyxnQ0FBZ0M7SUFNekM7UUFMQSwwREFBMEQ7UUFDakQsZUFBVSxHQUFVLElBQUksQ0FBQztRQUNsQyx1REFBdUQ7UUFDN0MsWUFBTyxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO0lBRWpELENBQUM7SUFFakIsU0FBUztRQUNMLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEIsQ0FBQzs7NkhBVlEsZ0NBQWdDO2lIQUFoQyxnQ0FBZ0MsaUlDUDdDLG1jQU9jOzJGREFELGdDQUFnQztrQkFKNUMsU0FBUzsrQkFDSSxvQkFBb0I7MEVBS3JCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUksT0FBTztzQkFBaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFuZ3VsYXJcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogXCJvcHMtbWVudS1vcGVyYXRpb25cIixcclxuICAgIHRlbXBsYXRlVXJsOiBcIi4vb3BzLW1lbnUtb3BlcmF0aW9uLmNvbXBvbmVudC5odG1sXCJcclxufSlcclxuZXhwb3J0IGNsYXNzIE9wZXJhdGlvbnNNZW51T3BlcmF0aW9uQ29tcG9uZW50IHtcclxuICAgIC8vIFNlIHZhbG9yaXp6YXRvLCBub24gdmVycsOgIHBpw7kgZW1lc3NvIGwnb3V0cHV0IFwib25DbGlja1wiXHJcbiAgICBASW5wdXQoKSBSb3V0ZXJMaW5rOiBhbnlbXSA9IG51bGw7XHJcbiAgICAvLyBQYXNzYWNhcnRlIHBlciBpbCB2ZXJvIGV2ZW50byBcImNsaWNrXCIgZGVsIGNvbXBvbmVudGVcclxuICAgIEBPdXRwdXQoKSBvbkNsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgICBlbWl0Q2xpY2soKSB7XHJcbiAgICAgICAgdGhpcy5vbkNsaWNrLmVtaXQoKTtcclxuICAgIH1cclxufSIsIjxkaXYgY2xhc3M9XCJhcHAtcGFkZGluZy1sZWZ0LTEwXCI+XHJcbiAgICA8YSAqbmdJZj1cIiFSb3V0ZXJMaW5rXCIgY2xhc3M9XCJhcHAtbGluayBhcHAtaW5saW5lLXdyYXBwZWRcIiAoY2xpY2spPVwiZW1pdENsaWNrKClcIj48bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiQ29udGVudDtcIj48L25nLWNvbnRhaW5lcj48L2E+XHJcbiAgICA8YSAqbmdJZj1cIiEhUm91dGVyTGlua1wiIGNsYXNzPVwiYXBwLWxpbmsgYXBwLWlubGluZS13cmFwcGVkXCIgW3JvdXRlckxpbmtdPVwiUm91dGVyTGlua1wiPjxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJDb250ZW50O1wiPjwvbmctY29udGFpbmVyPjwvYT5cclxuPC9kaXY+XHJcblxyXG48bmctdGVtcGxhdGUgI0NvbnRlbnQ+XHJcbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbjwvbmctdGVtcGxhdGU+Il19
@@ -1,5 +1,5 @@
1
1
  // Angular
2
- import { Component, Input } from "@angular/core";
2
+ import { Component, EventEmitter, Input, Output } from "@angular/core";
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/common";
5
5
  /**
@@ -14,6 +14,13 @@ export class StatusBadgeComponent {
14
14
  this.Top = "20px";
15
15
  /** Valore dello stile 'right' del badge */
16
16
  this.Right = "0px";
17
+ /** Evento di click sparato se l'elemento è cliccabile */
18
+ this.onClick = new EventEmitter();
19
+ }
20
+ handleClick() {
21
+ if (!this.Clickable)
22
+ return;
23
+ this.onClick.emit();
17
24
  }
18
25
  ngOnInit() {
19
26
  if (this.Level === null || this.Level === undefined)
@@ -25,10 +32,10 @@ export class StatusBadgeComponent {
25
32
  }
26
33
  }
27
34
  StatusBadgeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StatusBadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
28
- StatusBadgeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: StatusBadgeComponent, selector: "status-badge", inputs: { Status: "Status", Zoom: "Zoom", Top: "Top", Right: "Right", Level: "Level", Info: "Info", Warning: "Warning", Success: "Success", Danger: "Danger" }, ngImport: i0, template: "<div class=\"status-badge-container utils-no-selection\" [style.margin-top]=\"Top\" [style.margin-right]=\"Right\" [style.zoom]=\"Zoom\" [style.-moz-transform]=\"'scale(' + Zoom + ')'\">\r\n <span class=\"status-badge\"\r\n [class.status-badge-info]=\"Info\"\r\n [class.status-badge-warning]=\"Warning\"\r\n [class.status-badge-success]=\"Success\"\r\n [class.status-badge-danger]=\"Danger\">\r\n <i style=\"font-size: 18px;\"\r\n class=\"fa\" \r\n [class.fa-info-circle]=\"Info\" \r\n [class.fa-exclamation-circle]=\"Warning\" \r\n [class.fa-check-circle]=\"Success\" \r\n [class.fa-times-circle]=\"Danger\">\r\n </i>\r\n <span *ngIf=\"Status\" class=\"ml-2 app-bold\">{{Status.toUpperCase()}}</span>\r\n </span>\r\n</div>", styles: [".utils-pointer{cursor:pointer}.utils-copy{cursor:copy}.utils-bold{font-weight:700}.utils-no-selection{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}::ng-deep .mat-tooltip{font-size:16px}.status-badge-container{position:absolute;right:0;margin-right:15px;top:0;white-space:nowrap}.status-badge{height:30px;padding:5px 10px;font-size:16px;line-height:20px;border-radius:5px}.status-badge-info{border:3px solid;color:#248dad}.status-badge-warning{border:3px solid;color:#f79a17}.status-badge-success{border:3px solid;color:#2d922d}.status-badge-danger{border:3px solid;color:#bf1725}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
35
+ StatusBadgeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: StatusBadgeComponent, selector: "status-badge", inputs: { Status: "Status", Zoom: "Zoom", Top: "Top", Right: "Right", Level: "Level", Info: "Info", Warning: "Warning", Success: "Success", Danger: "Danger", Clickable: "Clickable" }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<div class=\"status-badge-container utils-no-selection\" \r\n [class.app-pointer]=\"Clickable\"\r\n [style.margin-top]=\"Top\" \r\n [style.margin-right]=\"Right\" \r\n [style.zoom]=\"Zoom\" \r\n [style.-moz-transform]=\"'scale(' + Zoom + ')'\"\r\n (click)=\"handleClick();\">\r\n\r\n <span class=\"status-badge\"\r\n [class.status-badge-info]=\"Info\"\r\n [class.status-badge-warning]=\"Warning\"\r\n [class.status-badge-success]=\"Success\"\r\n [class.status-badge-danger]=\"Danger\">\r\n <i style=\"font-size: 18px;\"\r\n class=\"fa\" \r\n [class.fa-info-circle]=\"Info\" \r\n [class.fa-exclamation-circle]=\"Warning\" \r\n [class.fa-check-circle]=\"Success\" \r\n [class.fa-times-circle]=\"Danger\">\r\n </i>\r\n <span *ngIf=\"Status\" class=\"ml-2 app-bold\">{{Status.toUpperCase()}}</span>\r\n </span>\r\n\r\n</div>", styles: [".utils-pointer{cursor:pointer}.utils-copy{cursor:copy}.utils-bold{font-weight:700}.utils-no-selection{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}::ng-deep .mat-tooltip{font-size:16px}.status-badge-container{position:absolute;right:0;margin-right:15px;top:0;white-space:nowrap}.status-badge{height:30px;padding:5px 10px;font-size:16px;line-height:20px;border-radius:5px}.status-badge-info{border:3px solid;color:#248dad}.status-badge-warning{border:3px solid;color:#f79a17}.status-badge-success{border:3px solid;color:#2d922d}.status-badge-danger{border:3px solid;color:#bf1725}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
29
36
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StatusBadgeComponent, decorators: [{
30
37
  type: Component,
31
- args: [{ selector: "status-badge", template: "<div class=\"status-badge-container utils-no-selection\" [style.margin-top]=\"Top\" [style.margin-right]=\"Right\" [style.zoom]=\"Zoom\" [style.-moz-transform]=\"'scale(' + Zoom + ')'\">\r\n <span class=\"status-badge\"\r\n [class.status-badge-info]=\"Info\"\r\n [class.status-badge-warning]=\"Warning\"\r\n [class.status-badge-success]=\"Success\"\r\n [class.status-badge-danger]=\"Danger\">\r\n <i style=\"font-size: 18px;\"\r\n class=\"fa\" \r\n [class.fa-info-circle]=\"Info\" \r\n [class.fa-exclamation-circle]=\"Warning\" \r\n [class.fa-check-circle]=\"Success\" \r\n [class.fa-times-circle]=\"Danger\">\r\n </i>\r\n <span *ngIf=\"Status\" class=\"ml-2 app-bold\">{{Status.toUpperCase()}}</span>\r\n </span>\r\n</div>", styles: [".utils-pointer{cursor:pointer}.utils-copy{cursor:copy}.utils-bold{font-weight:700}.utils-no-selection{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}::ng-deep .mat-tooltip{font-size:16px}.status-badge-container{position:absolute;right:0;margin-right:15px;top:0;white-space:nowrap}.status-badge{height:30px;padding:5px 10px;font-size:16px;line-height:20px;border-radius:5px}.status-badge-info{border:3px solid;color:#248dad}.status-badge-warning{border:3px solid;color:#f79a17}.status-badge-success{border:3px solid;color:#2d922d}.status-badge-danger{border:3px solid;color:#bf1725}\n"] }]
38
+ args: [{ selector: "status-badge", template: "<div class=\"status-badge-container utils-no-selection\" \r\n [class.app-pointer]=\"Clickable\"\r\n [style.margin-top]=\"Top\" \r\n [style.margin-right]=\"Right\" \r\n [style.zoom]=\"Zoom\" \r\n [style.-moz-transform]=\"'scale(' + Zoom + ')'\"\r\n (click)=\"handleClick();\">\r\n\r\n <span class=\"status-badge\"\r\n [class.status-badge-info]=\"Info\"\r\n [class.status-badge-warning]=\"Warning\"\r\n [class.status-badge-success]=\"Success\"\r\n [class.status-badge-danger]=\"Danger\">\r\n <i style=\"font-size: 18px;\"\r\n class=\"fa\" \r\n [class.fa-info-circle]=\"Info\" \r\n [class.fa-exclamation-circle]=\"Warning\" \r\n [class.fa-check-circle]=\"Success\" \r\n [class.fa-times-circle]=\"Danger\">\r\n </i>\r\n <span *ngIf=\"Status\" class=\"ml-2 app-bold\">{{Status.toUpperCase()}}</span>\r\n </span>\r\n\r\n</div>", styles: [".utils-pointer{cursor:pointer}.utils-copy{cursor:copy}.utils-bold{font-weight:700}.utils-no-selection{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}::ng-deep .mat-tooltip{font-size:16px}.status-badge-container{position:absolute;right:0;margin-right:15px;top:0;white-space:nowrap}.status-badge{height:30px;padding:5px 10px;font-size:16px;line-height:20px;border-radius:5px}.status-badge-info{border:3px solid;color:#248dad}.status-badge-warning{border:3px solid;color:#f79a17}.status-badge-success{border:3px solid;color:#2d922d}.status-badge-danger{border:3px solid;color:#bf1725}\n"] }]
32
39
  }], propDecorators: { Status: [{
33
40
  type: Input
34
41
  }], Zoom: [{
@@ -47,5 +54,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
47
54
  type: Input
48
55
  }], Danger: [{
49
56
  type: Input
57
+ }], Clickable: [{
58
+ type: Input
59
+ }], onClick: [{
60
+ type: Output
50
61
  }] } });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLWJhZGdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc3RhdHVzLWJhZGdlL3N0YXR1cy1iYWRnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91dGlsaXR5LWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3N0YXR1cy1iYWRnZS9zdGF0dXMtYmFkZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFFakQ7OztHQUdHO0FBTUgsTUFBTSxPQUFPLG9CQUFvQjtJQUxqQztRQVFJLDBEQUEwRDtRQUMxQyxTQUFJLEdBQVcsQ0FBQyxDQUFDO1FBQ2pDLHlDQUF5QztRQUN6QixRQUFHLEdBQVcsTUFBTSxDQUFDO1FBQ3JDLDJDQUEyQztRQUMzQixVQUFLLEdBQVcsS0FBSyxDQUFDO0tBb0J6QztJQVJHLFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUztZQUMvQyxPQUFPO1FBQ1gsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxJQUFJLE1BQU0sQ0FBQztRQUNqQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksU0FBUyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssSUFBSSxTQUFTLENBQUM7UUFDdkMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxJQUFJLFFBQVEsQ0FBQztJQUN6QyxDQUFDOztpSEEzQlEsb0JBQW9CO3FHQUFwQixvQkFBb0Isb05DWmpDLHMwQkFlTTsyRkRITyxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0ksY0FBYzs4QkFNUixNQUFNO3NCQUFyQixLQUFLO2dCQUVVLElBQUk7c0JBQW5CLEtBQUs7Z0JBRVUsR0FBRztzQkFBbEIsS0FBSztnQkFFVSxLQUFLO3NCQUFwQixLQUFLO2dCQUVVLEtBQUs7c0JBQXBCLEtBQUs7Z0JBRVUsSUFBSTtzQkFBbkIsS0FBSztnQkFFVSxPQUFPO3NCQUF0QixLQUFLO2dCQUVVLE9BQU87c0JBQXRCLEtBQUs7Z0JBRVUsTUFBTTtzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFuZ3VsYXJcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vKiogXHJcbiAqIFF1ZXN0byBjb21wb25lbnRlIHNlcnZlIGEgbW9zdHJhcmUgdW4gYmFkZ2UgZGkgc3RhdG8sIGNvbiB1biB0ZXN0byAqKlN0YXR1cyoqLlxyXG4gKiBDb2xvcmF0byBpbiBiYXNlIGEgY29uZGl6aW9uaSBkaSAqKkluZm8qKiwgKipTdWNjZXNzKiosICoqV2FybmluZyoqIG8gKipEYW5nZXIqKiBcclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwic3RhdHVzLWJhZGdlXCIsXHJcbiAgICB0ZW1wbGF0ZVVybDogXCJzdGF0dXMtYmFkZ2UuY29tcG9uZW50Lmh0bWxcIixcclxuICAgIHN0eWxlVXJsczogW1wiLi9zdGF0dXMtYmFkZ2UuY29tcG9uZW50LnNjc3NcIl1cclxufSlcclxuZXhwb3J0IGNsYXNzIFN0YXR1c0JhZGdlQ29tcG9uZW50IHtcclxuICAgIC8qKiBFdGljaGV0dGEgZGEgbW9zdHJhcmUgbmVsIGJhZGdlICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgU3RhdHVzOiBzdHJpbmc7XHJcbiAgICAvKiogRGltZW5zaW9uZSBkZWwgYmFkZ2UsIGluIHZhbG9yZSBudW1lcmljbyAoMSA9IDEwMCUpICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgWm9vbTogbnVtYmVyID0gMTtcclxuICAgIC8qKiBWYWxvcmUgZGVsbG8gc3RpbGUgJ3RvcCcgZGVsIGJhZGdlICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgVG9wOiBzdHJpbmcgPSBcIjIwcHhcIjtcclxuICAgIC8qKiBWYWxvcmUgZGVsbG8gc3RpbGUgJ3JpZ2h0JyBkZWwgYmFkZ2UgKi9cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBSaWdodDogc3RyaW5nID0gXCIwcHhcIjtcclxuICAgIC8qKiBDb25kaXppb25lIHBlciBsYSBnZXN0aW9uZSBkZWwgbGl2ZWxsbyBkZWwgYmFkZ2UgLSAoSW5mbyBvIFdhcm5pbmcgbyBTdWNjZXNzIG8gRGFuZ2VyKSovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgTGV2ZWw6ICdJbmZvJyB8ICdXYXJuaW5nJyB8ICdTdWNjZXNzJyB8ICdEYW5nZXInO1xyXG4gICAgLyoqIFZhbG9yZSBib29sZW4gcmVsYXRpdm8gYWwgYmluZGluZyBkZWwgbGl2ZWxsbyBiYWRnZSAtIChJbmZvKSAqL1xyXG4gICAgQElucHV0KCkgcHVibGljIEluZm86IGJvb2xlYW47XHJcbiAgICAvKiogVmFsb3JlIGJvb2xlbiByZWxhdGl2byBhbCBiaW5kaW5nIGRlbCBsaXZlbGxvIGJhZGdlIC0gKFdhcm5pbmcpICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgV2FybmluZzogYm9vbGVhbjtcclxuICAgIC8qKiBWYWxvcmUgYm9vbGVuIHJlbGF0aXZvIGFsIGJpbmRpbmcgZGVsIGxpdmVsbG8gYmFkZ2UgLSAoU3VjY2VzcykgKi9cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBTdWNjZXNzOiBib29sZWFuO1xyXG4gICAgLyoqIFZhbG9yZSBib29sZW4gcmVsYXRpdm8gYWwgYmluZGluZyBkZWwgbGl2ZWxsbyBiYWRnZSAtIChEYW5nZXIpICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgRGFuZ2VyOiBib29sZWFuO1xyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIGlmICh0aGlzLkxldmVsID09PSBudWxsIHx8IHRoaXMuTGV2ZWwgPT09IHVuZGVmaW5lZClcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIHRoaXMuSW5mbyA9IHRoaXMuTGV2ZWwgPT0gXCJJbmZvXCI7XHJcbiAgICAgICAgdGhpcy5XYXJuaW5nID0gdGhpcy5MZXZlbCA9PSBcIldhcm5pbmdcIjtcclxuICAgICAgICB0aGlzLlN1Y2Nlc3MgPSB0aGlzLkxldmVsID09IFwiU3VjY2Vzc1wiO1xyXG4gICAgICAgIHRoaXMuRGFuZ2VyID0gdGhpcy5MZXZlbCA9PSBcIkRhbmdlclwiO1xyXG4gICAgfVxyXG59IiwiPGRpdiBjbGFzcz1cInN0YXR1cy1iYWRnZS1jb250YWluZXIgdXRpbHMtbm8tc2VsZWN0aW9uXCIgW3N0eWxlLm1hcmdpbi10b3BdPVwiVG9wXCIgW3N0eWxlLm1hcmdpbi1yaWdodF09XCJSaWdodFwiIFtzdHlsZS56b29tXT1cIlpvb21cIiBbc3R5bGUuLW1vei10cmFuc2Zvcm1dPVwiJ3NjYWxlKCcgKyBab29tICsgJyknXCI+XHJcbiAgICA8c3BhbiBjbGFzcz1cInN0YXR1cy1iYWRnZVwiXHJcbiAgICAgICAgICBbY2xhc3Muc3RhdHVzLWJhZGdlLWluZm9dPVwiSW5mb1wiXHJcbiAgICAgICAgICBbY2xhc3Muc3RhdHVzLWJhZGdlLXdhcm5pbmddPVwiV2FybmluZ1wiXHJcbiAgICAgICAgICBbY2xhc3Muc3RhdHVzLWJhZGdlLXN1Y2Nlc3NdPVwiU3VjY2Vzc1wiXHJcbiAgICAgICAgICBbY2xhc3Muc3RhdHVzLWJhZGdlLWRhbmdlcl09XCJEYW5nZXJcIj5cclxuICAgICAgICA8aSBzdHlsZT1cImZvbnQtc2l6ZTogMThweDtcIlxyXG4gICAgICAgICAgIGNsYXNzPVwiZmFcIiBcclxuICAgICAgICAgICBbY2xhc3MuZmEtaW5mby1jaXJjbGVdPVwiSW5mb1wiIFxyXG4gICAgICAgICAgIFtjbGFzcy5mYS1leGNsYW1hdGlvbi1jaXJjbGVdPVwiV2FybmluZ1wiIFxyXG4gICAgICAgICAgIFtjbGFzcy5mYS1jaGVjay1jaXJjbGVdPVwiU3VjY2Vzc1wiIFxyXG4gICAgICAgICAgIFtjbGFzcy5mYS10aW1lcy1jaXJjbGVdPVwiRGFuZ2VyXCI+XHJcbiAgICAgICAgPC9pPlxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwiU3RhdHVzXCIgY2xhc3M9XCJtbC0yIGFwcC1ib2xkXCI+e3tTdGF0dXMudG9VcHBlckNhc2UoKX19PC9zcGFuPlxyXG4gICAgPC9zcGFuPlxyXG48L2Rpdj4iXX0=
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLWJhZGdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc3RhdHVzLWJhZGdlL3N0YXR1cy1iYWRnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91dGlsaXR5LWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3N0YXR1cy1iYWRnZS9zdGF0dXMtYmFkZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUV2RTs7O0dBR0c7QUFNSCxNQUFNLE9BQU8sb0JBQW9CO0lBTGpDO1FBUUksMERBQTBEO1FBQzFDLFNBQUksR0FBVyxDQUFDLENBQUM7UUFDakMseUNBQXlDO1FBQ3pCLFFBQUcsR0FBVyxNQUFNLENBQUM7UUFDckMsMkNBQTJDO1FBQzNCLFVBQUssR0FBVyxLQUFLLENBQUM7UUFhdEMseURBQXlEO1FBQ3hDLFlBQU8sR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztLQWlCM0U7SUFmRyxXQUFXO1FBQ1AsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTO1lBQ2YsT0FBTztRQUVYLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUztZQUMvQyxPQUFPO1FBQ1gsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxJQUFJLE1BQU0sQ0FBQztRQUNqQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksU0FBUyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssSUFBSSxTQUFTLENBQUM7UUFDdkMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxJQUFJLFFBQVEsQ0FBQztJQUN6QyxDQUFDOztpSEF0Q1Esb0JBQW9CO3FHQUFwQixvQkFBb0IsNlFDWmpDLHk3QkF1Qk07MkZEWE8sb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNJLGNBQWM7OEJBTVIsTUFBTTtzQkFBckIsS0FBSztnQkFFVSxJQUFJO3NCQUFuQixLQUFLO2dCQUVVLEdBQUc7c0JBQWxCLEtBQUs7Z0JBRVUsS0FBSztzQkFBcEIsS0FBSztnQkFFVSxLQUFLO3NCQUFwQixLQUFLO2dCQUVVLElBQUk7c0JBQW5CLEtBQUs7Z0JBRVUsT0FBTztzQkFBdEIsS0FBSztnQkFFVSxPQUFPO3NCQUF0QixLQUFLO2dCQUVVLE1BQU07c0JBQXJCLEtBQUs7Z0JBRVUsU0FBUztzQkFBeEIsS0FBSztnQkFFVyxPQUFPO3NCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhclxyXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vKiogXHJcbiAqIFF1ZXN0byBjb21wb25lbnRlIHNlcnZlIGEgbW9zdHJhcmUgdW4gYmFkZ2UgZGkgc3RhdG8sIGNvbiB1biB0ZXN0byAqKlN0YXR1cyoqLlxyXG4gKiBDb2xvcmF0byBpbiBiYXNlIGEgY29uZGl6aW9uaSBkaSAqKkluZm8qKiwgKipTdWNjZXNzKiosICoqV2FybmluZyoqIG8gKipEYW5nZXIqKiBcclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwic3RhdHVzLWJhZGdlXCIsXHJcbiAgICB0ZW1wbGF0ZVVybDogXCJzdGF0dXMtYmFkZ2UuY29tcG9uZW50Lmh0bWxcIixcclxuICAgIHN0eWxlVXJsczogW1wiLi9zdGF0dXMtYmFkZ2UuY29tcG9uZW50LnNjc3NcIl1cclxufSlcclxuZXhwb3J0IGNsYXNzIFN0YXR1c0JhZGdlQ29tcG9uZW50IHtcclxuICAgIC8qKiBFdGljaGV0dGEgZGEgbW9zdHJhcmUgbmVsIGJhZGdlICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgU3RhdHVzOiBzdHJpbmc7XHJcbiAgICAvKiogRGltZW5zaW9uZSBkZWwgYmFkZ2UsIGluIHZhbG9yZSBudW1lcmljbyAoMSA9IDEwMCUpICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgWm9vbTogbnVtYmVyID0gMTtcclxuICAgIC8qKiBWYWxvcmUgZGVsbG8gc3RpbGUgJ3RvcCcgZGVsIGJhZGdlICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgVG9wOiBzdHJpbmcgPSBcIjIwcHhcIjtcclxuICAgIC8qKiBWYWxvcmUgZGVsbG8gc3RpbGUgJ3JpZ2h0JyBkZWwgYmFkZ2UgKi9cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBSaWdodDogc3RyaW5nID0gXCIwcHhcIjtcclxuICAgIC8qKiBDb25kaXppb25lIHBlciBsYSBnZXN0aW9uZSBkZWwgbGl2ZWxsbyBkZWwgYmFkZ2UgLSAoSW5mbyBvIFdhcm5pbmcgbyBTdWNjZXNzIG8gRGFuZ2VyKSovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgTGV2ZWw6ICdJbmZvJyB8ICdXYXJuaW5nJyB8ICdTdWNjZXNzJyB8ICdEYW5nZXInO1xyXG4gICAgLyoqIFZhbG9yZSBib29sZW4gcmVsYXRpdm8gYWwgYmluZGluZyBkZWwgbGl2ZWxsbyBiYWRnZSAtIChJbmZvKSAqL1xyXG4gICAgQElucHV0KCkgcHVibGljIEluZm86IGJvb2xlYW47XHJcbiAgICAvKiogVmFsb3JlIGJvb2xlbiByZWxhdGl2byBhbCBiaW5kaW5nIGRlbCBsaXZlbGxvIGJhZGdlIC0gKFdhcm5pbmcpICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgV2FybmluZzogYm9vbGVhbjtcclxuICAgIC8qKiBWYWxvcmUgYm9vbGVuIHJlbGF0aXZvIGFsIGJpbmRpbmcgZGVsIGxpdmVsbG8gYmFkZ2UgLSAoU3VjY2VzcykgKi9cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBTdWNjZXNzOiBib29sZWFuO1xyXG4gICAgLyoqIFZhbG9yZSBib29sZW4gcmVsYXRpdm8gYWwgYmluZGluZyBkZWwgbGl2ZWxsbyBiYWRnZSAtIChEYW5nZXIpICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgRGFuZ2VyOiBib29sZWFuO1xyXG4gICAgLyoqIEluZGljYSBzZSBsYSBjYXJkIMOoIGNsaWNjYWJpbGUgZSBtZXR0ZSBnbGkgc3RpbGkgZGkgaG92ZXIgc2Ugc2Vydm9ubyAqL1xyXG4gICAgQElucHV0KCkgcHVibGljIENsaWNrYWJsZTogYm9vbGVhbjtcclxuICAgIC8qKiBFdmVudG8gZGkgY2xpY2sgc3BhcmF0byBzZSBsJ2VsZW1lbnRvIMOoIGNsaWNjYWJpbGUgKi9cclxuICAgIEBPdXRwdXQoKSBwdWJsaWMgb25DbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICAgIGhhbmRsZUNsaWNrKCkge1xyXG4gICAgICAgIGlmICghdGhpcy5DbGlja2FibGUpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuXHJcbiAgICAgICAgdGhpcy5vbkNsaWNrLmVtaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuICAgICAgICBpZiAodGhpcy5MZXZlbCA9PT0gbnVsbCB8fCB0aGlzLkxldmVsID09PSB1bmRlZmluZWQpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB0aGlzLkluZm8gPSB0aGlzLkxldmVsID09IFwiSW5mb1wiO1xyXG4gICAgICAgIHRoaXMuV2FybmluZyA9IHRoaXMuTGV2ZWwgPT0gXCJXYXJuaW5nXCI7XHJcbiAgICAgICAgdGhpcy5TdWNjZXNzID0gdGhpcy5MZXZlbCA9PSBcIlN1Y2Nlc3NcIjtcclxuICAgICAgICB0aGlzLkRhbmdlciA9IHRoaXMuTGV2ZWwgPT0gXCJEYW5nZXJcIjtcclxuICAgIH1cclxufSIsIjxkaXYgY2xhc3M9XCJzdGF0dXMtYmFkZ2UtY29udGFpbmVyIHV0aWxzLW5vLXNlbGVjdGlvblwiIFxyXG4gICAgW2NsYXNzLmFwcC1wb2ludGVyXT1cIkNsaWNrYWJsZVwiXHJcbiAgICBbc3R5bGUubWFyZ2luLXRvcF09XCJUb3BcIiBcclxuICAgIFtzdHlsZS5tYXJnaW4tcmlnaHRdPVwiUmlnaHRcIiBcclxuICAgIFtzdHlsZS56b29tXT1cIlpvb21cIiBcclxuICAgIFtzdHlsZS4tbW96LXRyYW5zZm9ybV09XCInc2NhbGUoJyArIFpvb20gKyAnKSdcIlxyXG4gICAgKGNsaWNrKT1cImhhbmRsZUNsaWNrKCk7XCI+XHJcblxyXG4gICAgPHNwYW4gY2xhc3M9XCJzdGF0dXMtYmFkZ2VcIlxyXG4gICAgICAgICAgW2NsYXNzLnN0YXR1cy1iYWRnZS1pbmZvXT1cIkluZm9cIlxyXG4gICAgICAgICAgW2NsYXNzLnN0YXR1cy1iYWRnZS13YXJuaW5nXT1cIldhcm5pbmdcIlxyXG4gICAgICAgICAgW2NsYXNzLnN0YXR1cy1iYWRnZS1zdWNjZXNzXT1cIlN1Y2Nlc3NcIlxyXG4gICAgICAgICAgW2NsYXNzLnN0YXR1cy1iYWRnZS1kYW5nZXJdPVwiRGFuZ2VyXCI+XHJcbiAgICAgICAgPGkgc3R5bGU9XCJmb250LXNpemU6IDE4cHg7XCJcclxuICAgICAgICAgICBjbGFzcz1cImZhXCIgXHJcbiAgICAgICAgICAgW2NsYXNzLmZhLWluZm8tY2lyY2xlXT1cIkluZm9cIiBcclxuICAgICAgICAgICBbY2xhc3MuZmEtZXhjbGFtYXRpb24tY2lyY2xlXT1cIldhcm5pbmdcIiBcclxuICAgICAgICAgICBbY2xhc3MuZmEtY2hlY2stY2lyY2xlXT1cIlN1Y2Nlc3NcIiBcclxuICAgICAgICAgICBbY2xhc3MuZmEtdGltZXMtY2lyY2xlXT1cIkRhbmdlclwiPlxyXG4gICAgICAgIDwvaT5cclxuICAgICAgICA8c3BhbiAqbmdJZj1cIlN0YXR1c1wiIGNsYXNzPVwibWwtMiBhcHAtYm9sZFwiPnt7U3RhdHVzLnRvVXBwZXJDYXNlKCl9fTwvc3Bhbj5cclxuICAgIDwvc3Bhbj5cclxuXHJcbjwvZGl2PiJdfQ==
@@ -4,6 +4,7 @@ import { CommonModule } from '@angular/common';
4
4
  import { ToastrModule } from 'ngx-toastr';
5
5
  import { MatTooltipModule } from '@angular/material/tooltip';
6
6
  import { MatMenuModule } from '@angular/material/menu';
7
+ import { RouterModule } from '@angular/router';
7
8
  import { MatExpansionModule } from "@angular/material/expansion";
8
9
  // Components
9
10
  import { CurrencySpanComponent } from './components/currency-span/currency-span.component';
@@ -36,7 +37,8 @@ UtilityComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
36
37
  MatTooltipModule,
37
38
  MatMenuModule,
38
39
  MatExpansionModule,
39
- ToastrModule], exports: [CurrencySpanComponent,
40
+ ToastrModule,
41
+ RouterModule], exports: [CurrencySpanComponent,
40
42
  ShortenSpanComponent,
41
43
  StatusBadgeComponent,
42
44
  SimpleDropdownComponent,
@@ -47,7 +49,8 @@ UtilityComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0",
47
49
  MatTooltipModule,
48
50
  MatMenuModule,
49
51
  MatExpansionModule,
50
- ToastrModule] });
52
+ ToastrModule,
53
+ RouterModule] });
51
54
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UtilityComponentsModule, decorators: [{
52
55
  type: NgModule,
53
56
  args: [{
@@ -59,11 +62,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
59
62
  MatTooltipModule,
60
63
  MatMenuModule,
61
64
  MatExpansionModule,
62
- ToastrModule
65
+ ToastrModule,
66
+ RouterModule
63
67
  ],
64
68
  exports: [
65
69
  COMPONENTS
66
70
  ]
67
71
  }]
68
72
  }] });
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbGl0eS1jb21wb25lbnRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL3V0aWxpdHktY29tcG9uZW50cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDMUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRWpFLGFBQWE7QUFDYixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMzRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUNqRyxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx5RUFBeUUsQ0FBQztBQUMzSCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx1RUFBdUUsQ0FBQztBQUN4SCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQzs7QUFFOUYsTUFBTSxVQUFVLEdBQUc7SUFDakIscUJBQXFCO0lBQ3JCLG9CQUFvQjtJQUNwQixvQkFBb0I7SUFDcEIsdUJBQXVCO0lBQ3ZCLGdDQUFnQztJQUNoQywrQkFBK0I7SUFDL0IsdUJBQXVCO0NBQ3hCLENBQUM7QUFpQkYsTUFBTSxPQUFPLHVCQUF1Qjs7b0hBQXZCLHVCQUF1QjtxSEFBdkIsdUJBQXVCLGlCQXhCbEMscUJBQXFCO1FBQ3JCLG9CQUFvQjtRQUNwQixvQkFBb0I7UUFDcEIsdUJBQXVCO1FBQ3ZCLGdDQUFnQztRQUNoQywrQkFBK0I7UUFDL0IsdUJBQXVCLGFBUXJCLFlBQVk7UUFDWixnQkFBZ0I7UUFDaEIsYUFBYTtRQUNiLGtCQUFrQjtRQUNsQixZQUFZLGFBbEJkLHFCQUFxQjtRQUNyQixvQkFBb0I7UUFDcEIsb0JBQW9CO1FBQ3BCLHVCQUF1QjtRQUN2QixnQ0FBZ0M7UUFDaEMsK0JBQStCO1FBQy9CLHVCQUF1QjtxSEFrQlosdUJBQXVCLFlBVmhDLFlBQVk7UUFDWixnQkFBZ0I7UUFDaEIsYUFBYTtRQUNiLGtCQUFrQjtRQUNsQixZQUFZOzJGQU1ILHVCQUF1QjtrQkFmbkMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osVUFBVTtxQkFDWDtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixnQkFBZ0I7d0JBQ2hCLGFBQWE7d0JBQ2Isa0JBQWtCO3dCQUNsQixZQUFZO3FCQUNiO29CQUNELE9BQU8sRUFBRTt3QkFDUCxVQUFVO3FCQUNYO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8gTW9kdWxlc1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBUb2FzdHJNb2R1bGUgfSBmcm9tICduZ3gtdG9hc3RyJztcclxuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XHJcbmltcG9ydCB7IE1hdEV4cGFuc2lvbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9leHBhbnNpb25cIjtcclxuXHJcbi8vIENvbXBvbmVudHNcclxuaW1wb3J0IHsgQ3VycmVuY3lTcGFuQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2N1cnJlbmN5LXNwYW4vY3VycmVuY3ktc3Bhbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTaG9ydGVuU3BhbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zaG9ydGVuLXNwYW4vc2hvcnRlbi1zcGFuLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFN0YXR1c0JhZGdlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3N0YXR1cy1iYWRnZS9zdGF0dXMtYmFkZ2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2ltcGxlRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2ltcGxlLWRyb3Bkb3duL3NpbXBsZS1kcm9wZG93bi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBPcGVyYXRpb25zTWVudU9wZXJhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vcGVyYXRpb25zL29wcy1tZW51LW9wZXJhdGlvbi9vcHMtbWVudS1vcGVyYXRpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgT3BlcmF0aW9uc01lbnVDYXRlZ29yeUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vcGVyYXRpb25zL29wcy1tZW51LWNhdGVnb3J5L29wcy1tZW51LWNhdGVnb3J5LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE9wZXJhdGlvbnNNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL29wZXJhdGlvbnMvb3BzLW1lbnUvb3BzLW1lbnUuY29tcG9uZW50JztcclxuXHJcbmNvbnN0IENPTVBPTkVOVFMgPSBbXHJcbiAgQ3VycmVuY3lTcGFuQ29tcG9uZW50LFxyXG4gIFNob3J0ZW5TcGFuQ29tcG9uZW50LFxyXG4gIFN0YXR1c0JhZGdlQ29tcG9uZW50LFxyXG4gIFNpbXBsZURyb3Bkb3duQ29tcG9uZW50LFxyXG4gIE9wZXJhdGlvbnNNZW51T3BlcmF0aW9uQ29tcG9uZW50LFxyXG4gIE9wZXJhdGlvbnNNZW51Q2F0ZWdvcnlDb21wb25lbnQsXHJcbiAgT3BlcmF0aW9uc01lbnVDb21wb25lbnRcclxuXTtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBDT01QT05FTlRTXHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxyXG4gICAgTWF0TWVudU1vZHVsZSxcclxuICAgIE1hdEV4cGFuc2lvbk1vZHVsZSxcclxuICAgIFRvYXN0ck1vZHVsZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgQ09NUE9ORU5UU1xyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFV0aWxpdHlDb21wb25lbnRzTW9kdWxlIHsgfSJdfQ==
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbGl0eS1jb21wb25lbnRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL3V0aWxpdHktY29tcG9uZW50cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDMUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUVqRSxhQUFhO0FBQ2IsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDM0YsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDakcsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0seUVBQXlFLENBQUM7QUFDM0gsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sdUVBQXVFLENBQUM7QUFDeEgsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0scURBQXFELENBQUM7O0FBRTlGLE1BQU0sVUFBVSxHQUFHO0lBQ2pCLHFCQUFxQjtJQUNyQixvQkFBb0I7SUFDcEIsb0JBQW9CO0lBQ3BCLHVCQUF1QjtJQUN2QixnQ0FBZ0M7SUFDaEMsK0JBQStCO0lBQy9CLHVCQUF1QjtDQUN4QixDQUFDO0FBa0JGLE1BQU0sT0FBTyx1QkFBdUI7O29IQUF2Qix1QkFBdUI7cUhBQXZCLHVCQUF1QixpQkF6QmxDLHFCQUFxQjtRQUNyQixvQkFBb0I7UUFDcEIsb0JBQW9CO1FBQ3BCLHVCQUF1QjtRQUN2QixnQ0FBZ0M7UUFDaEMsK0JBQStCO1FBQy9CLHVCQUF1QixhQVFyQixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLGFBQWE7UUFDYixrQkFBa0I7UUFDbEIsWUFBWTtRQUNaLFlBQVksYUFuQmQscUJBQXFCO1FBQ3JCLG9CQUFvQjtRQUNwQixvQkFBb0I7UUFDcEIsdUJBQXVCO1FBQ3ZCLGdDQUFnQztRQUNoQywrQkFBK0I7UUFDL0IsdUJBQXVCO3FIQW1CWix1QkFBdUIsWUFYaEMsWUFBWTtRQUNaLGdCQUFnQjtRQUNoQixhQUFhO1FBQ2Isa0JBQWtCO1FBQ2xCLFlBQVk7UUFDWixZQUFZOzJGQU1ILHVCQUF1QjtrQkFoQm5DLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLFVBQVU7cUJBQ1g7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLGtCQUFrQjt3QkFDbEIsWUFBWTt3QkFDWixZQUFZO3FCQUNiO29CQUNELE9BQU8sRUFBRTt3QkFDUCxVQUFVO3FCQUNYO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8gTW9kdWxlc1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBUb2FzdHJNb2R1bGUgfSBmcm9tICduZ3gtdG9hc3RyJztcclxuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XHJcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IE1hdEV4cGFuc2lvbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9leHBhbnNpb25cIjtcclxuXHJcbi8vIENvbXBvbmVudHNcclxuaW1wb3J0IHsgQ3VycmVuY3lTcGFuQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2N1cnJlbmN5LXNwYW4vY3VycmVuY3ktc3Bhbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTaG9ydGVuU3BhbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zaG9ydGVuLXNwYW4vc2hvcnRlbi1zcGFuLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFN0YXR1c0JhZGdlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3N0YXR1cy1iYWRnZS9zdGF0dXMtYmFkZ2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2ltcGxlRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2ltcGxlLWRyb3Bkb3duL3NpbXBsZS1kcm9wZG93bi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBPcGVyYXRpb25zTWVudU9wZXJhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vcGVyYXRpb25zL29wcy1tZW51LW9wZXJhdGlvbi9vcHMtbWVudS1vcGVyYXRpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgT3BlcmF0aW9uc01lbnVDYXRlZ29yeUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vcGVyYXRpb25zL29wcy1tZW51LWNhdGVnb3J5L29wcy1tZW51LWNhdGVnb3J5LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE9wZXJhdGlvbnNNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL29wZXJhdGlvbnMvb3BzLW1lbnUvb3BzLW1lbnUuY29tcG9uZW50JztcclxuXHJcbmNvbnN0IENPTVBPTkVOVFMgPSBbXHJcbiAgQ3VycmVuY3lTcGFuQ29tcG9uZW50LFxyXG4gIFNob3J0ZW5TcGFuQ29tcG9uZW50LFxyXG4gIFN0YXR1c0JhZGdlQ29tcG9uZW50LFxyXG4gIFNpbXBsZURyb3Bkb3duQ29tcG9uZW50LFxyXG4gIE9wZXJhdGlvbnNNZW51T3BlcmF0aW9uQ29tcG9uZW50LFxyXG4gIE9wZXJhdGlvbnNNZW51Q2F0ZWdvcnlDb21wb25lbnQsXHJcbiAgT3BlcmF0aW9uc01lbnVDb21wb25lbnRcclxuXTtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBDT01QT05FTlRTXHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxyXG4gICAgTWF0TWVudU1vZHVsZSxcclxuICAgIE1hdEV4cGFuc2lvbk1vZHVsZSxcclxuICAgIFRvYXN0ck1vZHVsZSxcclxuICAgIFJvdXRlck1vZHVsZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgQ09NUE9ORU5UU1xyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFV0aWxpdHlDb21wb25lbnRzTW9kdWxlIHsgfSJdfQ==
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Component, Input, ViewEncapsulation, ViewChild, EventEmitter, Output, NgModule } from '@angular/core';
2
+ import { Component, Input, EventEmitter, Output, ViewEncapsulation, ViewChild, NgModule } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
5
  import * as i1$1 from 'ngx-toastr';
@@ -8,6 +8,8 @@ import * as i4 from '@angular/material/tooltip';
8
8
  import { MatTooltipModule } from '@angular/material/tooltip';
9
9
  import * as i2$1 from '@angular/material/menu';
10
10
  import { MatMenuTrigger, MatMenuModule } from '@angular/material/menu';
11
+ import * as i2$2 from '@angular/router';
12
+ import { RouterModule } from '@angular/router';
11
13
  import * as i1$2 from '@angular/material/expansion';
12
14
  import { MatExpansionModule } from '@angular/material/expansion';
13
15
  import * as i2 from '@esfaenza/extensions';
@@ -102,6 +104,13 @@ class StatusBadgeComponent {
102
104
  this.Top = "20px";
103
105
  /** Valore dello stile 'right' del badge */
104
106
  this.Right = "0px";
107
+ /** Evento di click sparato se l'elemento è cliccabile */
108
+ this.onClick = new EventEmitter();
109
+ }
110
+ handleClick() {
111
+ if (!this.Clickable)
112
+ return;
113
+ this.onClick.emit();
105
114
  }
106
115
  ngOnInit() {
107
116
  if (this.Level === null || this.Level === undefined)
@@ -113,10 +122,10 @@ class StatusBadgeComponent {
113
122
  }
114
123
  }
115
124
  StatusBadgeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StatusBadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
116
- StatusBadgeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: StatusBadgeComponent, selector: "status-badge", inputs: { Status: "Status", Zoom: "Zoom", Top: "Top", Right: "Right", Level: "Level", Info: "Info", Warning: "Warning", Success: "Success", Danger: "Danger" }, ngImport: i0, template: "<div class=\"status-badge-container utils-no-selection\" [style.margin-top]=\"Top\" [style.margin-right]=\"Right\" [style.zoom]=\"Zoom\" [style.-moz-transform]=\"'scale(' + Zoom + ')'\">\r\n <span class=\"status-badge\"\r\n [class.status-badge-info]=\"Info\"\r\n [class.status-badge-warning]=\"Warning\"\r\n [class.status-badge-success]=\"Success\"\r\n [class.status-badge-danger]=\"Danger\">\r\n <i style=\"font-size: 18px;\"\r\n class=\"fa\" \r\n [class.fa-info-circle]=\"Info\" \r\n [class.fa-exclamation-circle]=\"Warning\" \r\n [class.fa-check-circle]=\"Success\" \r\n [class.fa-times-circle]=\"Danger\">\r\n </i>\r\n <span *ngIf=\"Status\" class=\"ml-2 app-bold\">{{Status.toUpperCase()}}</span>\r\n </span>\r\n</div>", styles: [".utils-pointer{cursor:pointer}.utils-copy{cursor:copy}.utils-bold{font-weight:700}.utils-no-selection{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}::ng-deep .mat-tooltip{font-size:16px}.status-badge-container{position:absolute;right:0;margin-right:15px;top:0;white-space:nowrap}.status-badge{height:30px;padding:5px 10px;font-size:16px;line-height:20px;border-radius:5px}.status-badge-info{border:3px solid;color:#248dad}.status-badge-warning{border:3px solid;color:#f79a17}.status-badge-success{border:3px solid;color:#2d922d}.status-badge-danger{border:3px solid;color:#bf1725}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
125
+ StatusBadgeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: StatusBadgeComponent, selector: "status-badge", inputs: { Status: "Status", Zoom: "Zoom", Top: "Top", Right: "Right", Level: "Level", Info: "Info", Warning: "Warning", Success: "Success", Danger: "Danger", Clickable: "Clickable" }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<div class=\"status-badge-container utils-no-selection\" \r\n [class.app-pointer]=\"Clickable\"\r\n [style.margin-top]=\"Top\" \r\n [style.margin-right]=\"Right\" \r\n [style.zoom]=\"Zoom\" \r\n [style.-moz-transform]=\"'scale(' + Zoom + ')'\"\r\n (click)=\"handleClick();\">\r\n\r\n <span class=\"status-badge\"\r\n [class.status-badge-info]=\"Info\"\r\n [class.status-badge-warning]=\"Warning\"\r\n [class.status-badge-success]=\"Success\"\r\n [class.status-badge-danger]=\"Danger\">\r\n <i style=\"font-size: 18px;\"\r\n class=\"fa\" \r\n [class.fa-info-circle]=\"Info\" \r\n [class.fa-exclamation-circle]=\"Warning\" \r\n [class.fa-check-circle]=\"Success\" \r\n [class.fa-times-circle]=\"Danger\">\r\n </i>\r\n <span *ngIf=\"Status\" class=\"ml-2 app-bold\">{{Status.toUpperCase()}}</span>\r\n </span>\r\n\r\n</div>", styles: [".utils-pointer{cursor:pointer}.utils-copy{cursor:copy}.utils-bold{font-weight:700}.utils-no-selection{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}::ng-deep .mat-tooltip{font-size:16px}.status-badge-container{position:absolute;right:0;margin-right:15px;top:0;white-space:nowrap}.status-badge{height:30px;padding:5px 10px;font-size:16px;line-height:20px;border-radius:5px}.status-badge-info{border:3px solid;color:#248dad}.status-badge-warning{border:3px solid;color:#f79a17}.status-badge-success{border:3px solid;color:#2d922d}.status-badge-danger{border:3px solid;color:#bf1725}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
117
126
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StatusBadgeComponent, decorators: [{
118
127
  type: Component,
119
- args: [{ selector: "status-badge", template: "<div class=\"status-badge-container utils-no-selection\" [style.margin-top]=\"Top\" [style.margin-right]=\"Right\" [style.zoom]=\"Zoom\" [style.-moz-transform]=\"'scale(' + Zoom + ')'\">\r\n <span class=\"status-badge\"\r\n [class.status-badge-info]=\"Info\"\r\n [class.status-badge-warning]=\"Warning\"\r\n [class.status-badge-success]=\"Success\"\r\n [class.status-badge-danger]=\"Danger\">\r\n <i style=\"font-size: 18px;\"\r\n class=\"fa\" \r\n [class.fa-info-circle]=\"Info\" \r\n [class.fa-exclamation-circle]=\"Warning\" \r\n [class.fa-check-circle]=\"Success\" \r\n [class.fa-times-circle]=\"Danger\">\r\n </i>\r\n <span *ngIf=\"Status\" class=\"ml-2 app-bold\">{{Status.toUpperCase()}}</span>\r\n </span>\r\n</div>", styles: [".utils-pointer{cursor:pointer}.utils-copy{cursor:copy}.utils-bold{font-weight:700}.utils-no-selection{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}::ng-deep .mat-tooltip{font-size:16px}.status-badge-container{position:absolute;right:0;margin-right:15px;top:0;white-space:nowrap}.status-badge{height:30px;padding:5px 10px;font-size:16px;line-height:20px;border-radius:5px}.status-badge-info{border:3px solid;color:#248dad}.status-badge-warning{border:3px solid;color:#f79a17}.status-badge-success{border:3px solid;color:#2d922d}.status-badge-danger{border:3px solid;color:#bf1725}\n"] }]
128
+ args: [{ selector: "status-badge", template: "<div class=\"status-badge-container utils-no-selection\" \r\n [class.app-pointer]=\"Clickable\"\r\n [style.margin-top]=\"Top\" \r\n [style.margin-right]=\"Right\" \r\n [style.zoom]=\"Zoom\" \r\n [style.-moz-transform]=\"'scale(' + Zoom + ')'\"\r\n (click)=\"handleClick();\">\r\n\r\n <span class=\"status-badge\"\r\n [class.status-badge-info]=\"Info\"\r\n [class.status-badge-warning]=\"Warning\"\r\n [class.status-badge-success]=\"Success\"\r\n [class.status-badge-danger]=\"Danger\">\r\n <i style=\"font-size: 18px;\"\r\n class=\"fa\" \r\n [class.fa-info-circle]=\"Info\" \r\n [class.fa-exclamation-circle]=\"Warning\" \r\n [class.fa-check-circle]=\"Success\" \r\n [class.fa-times-circle]=\"Danger\">\r\n </i>\r\n <span *ngIf=\"Status\" class=\"ml-2 app-bold\">{{Status.toUpperCase()}}</span>\r\n </span>\r\n\r\n</div>", styles: [".utils-pointer{cursor:pointer}.utils-copy{cursor:copy}.utils-bold{font-weight:700}.utils-no-selection{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}::ng-deep .mat-tooltip{font-size:16px}.status-badge-container{position:absolute;right:0;margin-right:15px;top:0;white-space:nowrap}.status-badge{height:30px;padding:5px 10px;font-size:16px;line-height:20px;border-radius:5px}.status-badge-info{border:3px solid;color:#248dad}.status-badge-warning{border:3px solid;color:#f79a17}.status-badge-success{border:3px solid;color:#2d922d}.status-badge-danger{border:3px solid;color:#bf1725}\n"] }]
120
129
  }], propDecorators: { Status: [{
121
130
  type: Input
122
131
  }], Zoom: [{
@@ -135,6 +144,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
135
144
  type: Input
136
145
  }], Danger: [{
137
146
  type: Input
147
+ }], Clickable: [{
148
+ type: Input
149
+ }], onClick: [{
150
+ type: Output
138
151
  }] } });
139
152
 
140
153
  // Angular
@@ -166,8 +179,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
166
179
  type: Input
167
180
  }] } });
168
181
 
182
+ // Angular
169
183
  class OperationsMenuOperationComponent {
170
184
  constructor() {
185
+ // Se valorizzato, non verrà più emesso l'output "onClick"
186
+ this.RouterLink = null;
187
+ // Passacarte per il vero evento "click" del componente
171
188
  this.onClick = new EventEmitter();
172
189
  }
173
190
  emitClick() {
@@ -175,14 +192,19 @@ class OperationsMenuOperationComponent {
175
192
  }
176
193
  }
177
194
  OperationsMenuOperationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OperationsMenuOperationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
178
- OperationsMenuOperationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OperationsMenuOperationComponent, selector: "ops-menu-operation", outputs: { onClick: "onClick" }, ngImport: i0, template: "<div class=\"app-padding-left-10\">\r\n <a class=\"app-link app-inline-wrapped\" (click)=\"emitClick()\"><ng-content></ng-content></a>\r\n</div>" });
195
+ OperationsMenuOperationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OperationsMenuOperationComponent, selector: "ops-menu-operation", inputs: { RouterLink: "RouterLink" }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<div class=\"app-padding-left-10\">\r\n <a *ngIf=\"!RouterLink\" class=\"app-link app-inline-wrapped\" (click)=\"emitClick()\"><ng-container *ngTemplateOutlet=\"Content;\"></ng-container></a>\r\n <a *ngIf=\"!!RouterLink\" class=\"app-link app-inline-wrapped\" [routerLink]=\"RouterLink\"><ng-container *ngTemplateOutlet=\"Content;\"></ng-container></a>\r\n</div>\r\n\r\n<ng-template #Content>\r\n <ng-content></ng-content>\r\n</ng-template>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2$2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
179
196
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OperationsMenuOperationComponent, decorators: [{
180
197
  type: Component,
181
- args: [{ selector: "ops-menu-operation", template: "<div class=\"app-padding-left-10\">\r\n <a class=\"app-link app-inline-wrapped\" (click)=\"emitClick()\"><ng-content></ng-content></a>\r\n</div>" }]
182
- }], ctorParameters: function () { return []; }, propDecorators: { onClick: [{
198
+ args: [{ selector: "ops-menu-operation", template: "<div class=\"app-padding-left-10\">\r\n <a *ngIf=\"!RouterLink\" class=\"app-link app-inline-wrapped\" (click)=\"emitClick()\"><ng-container *ngTemplateOutlet=\"Content;\"></ng-container></a>\r\n <a *ngIf=\"!!RouterLink\" class=\"app-link app-inline-wrapped\" [routerLink]=\"RouterLink\"><ng-container *ngTemplateOutlet=\"Content;\"></ng-container></a>\r\n</div>\r\n\r\n<ng-template #Content>\r\n <ng-content></ng-content>\r\n</ng-template>" }]
199
+ }], ctorParameters: function () { return []; }, propDecorators: { RouterLink: [{
200
+ type: Input
201
+ }], onClick: [{
183
202
  type: Output
184
203
  }] } });
185
204
 
205
+ // Angular
206
+ // Configurazioni
207
+ // Applicazione
186
208
  class OperationsMenuCategoryComponent {
187
209
  constructor() {
188
210
  this.Name = "Nuova categoria";
@@ -200,21 +222,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
200
222
  type: Input
201
223
  }] } });
202
224
 
203
- /**
204
- * ATTENZIONE
205
- * Questo componente si trova anche su @esfaenza/core branch next2
206
- * Viene "duplicato" in quanto il rilascio di quel branch non è ancora minimamente pianificato
207
- * e replicare il componente in ogni progetto non ha senso.
208
- * Forse sarebbe meglio lasciarlo solo qui, e core lo importa da appunto questa libreria.
209
- */
225
+ // Angular
226
+ // Configurazioni
227
+ // Applicazione
210
228
  class OperationsMenuComponent {
211
229
  constructor() { }
212
230
  }
213
231
  OperationsMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OperationsMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
214
- OperationsMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OperationsMenuComponent, selector: "ops-menu", ngImport: i0, template: "<h5 class=\"app-bold\">Operazioni</h5>\r\n\r\n<div class=\"card app-margin-top-10\">\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>" });
232
+ OperationsMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OperationsMenuComponent, selector: "ops-menu", ngImport: i0, template: "<!-- Widget Operazioni 2.0 -->\r\n<div class=\"card app-margin-bottom-15\">\r\n <div class=\"card-header\">\r\n <span class=\"text-uppercase\">Operazioni</span>\r\n </div>\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>" });
215
233
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OperationsMenuComponent, decorators: [{
216
234
  type: Component,
217
- args: [{ selector: "ops-menu", template: "<h5 class=\"app-bold\">Operazioni</h5>\r\n\r\n<div class=\"card app-margin-top-10\">\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>" }]
235
+ args: [{ selector: "ops-menu", template: "<!-- Widget Operazioni 2.0 -->\r\n<div class=\"card app-margin-bottom-15\">\r\n <div class=\"card-header\">\r\n <span class=\"text-uppercase\">Operazioni</span>\r\n </div>\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>" }]
218
236
  }], ctorParameters: function () { return []; } });
219
237
 
220
238
  // Modules
@@ -240,7 +258,8 @@ UtilityComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
240
258
  MatTooltipModule,
241
259
  MatMenuModule,
242
260
  MatExpansionModule,
243
- ToastrModule], exports: [CurrencySpanComponent,
261
+ ToastrModule,
262
+ RouterModule], exports: [CurrencySpanComponent,
244
263
  ShortenSpanComponent,
245
264
  StatusBadgeComponent,
246
265
  SimpleDropdownComponent,
@@ -251,7 +270,8 @@ UtilityComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0",
251
270
  MatTooltipModule,
252
271
  MatMenuModule,
253
272
  MatExpansionModule,
254
- ToastrModule] });
273
+ ToastrModule,
274
+ RouterModule] });
255
275
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UtilityComponentsModule, decorators: [{
256
276
  type: NgModule,
257
277
  args: [{
@@ -263,7 +283,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
263
283
  MatTooltipModule,
264
284
  MatMenuModule,
265
285
  MatExpansionModule,
266
- ToastrModule
286
+ ToastrModule,
287
+ RouterModule
267
288
  ],
268
289
  exports: [
269
290
  COMPONENTS
@@ -1 +1 @@
1
- {"version":3,"file":"esfaenza-utility-components.mjs","sources":["../../../projects/utility-components/src/lib/components/currency-span/currency-span.component.ts","../../../projects/utility-components/src/lib/components/currency-span/currency-span.component.html","../../../projects/utility-components/src/lib/components/shorten-span/shorten-span.component.ts","../../../projects/utility-components/src/lib/components/shorten-span/shorten-span.component.html","../../../projects/utility-components/src/lib/components/status-badge/status-badge.component.ts","../../../projects/utility-components/src/lib/components/status-badge/status-badge.component.html","../../../projects/utility-components/src/lib/components/simple-dropdown/simple-dropdown.component.ts","../../../projects/utility-components/src/lib/components/simple-dropdown/simple-dropdown.component.html","../../../projects/utility-components/src/lib/components/operations/ops-menu-operation/ops-menu-operation.component.ts","../../../projects/utility-components/src/lib/components/operations/ops-menu-operation/ops-menu-operation.component.html","../../../projects/utility-components/src/lib/components/operations/ops-menu-category/ops-menu-category.component.ts","../../../projects/utility-components/src/lib/components/operations/ops-menu-category/ops-menu-category.component.html","../../../projects/utility-components/src/lib/components/operations/ops-menu/ops-menu.component.ts","../../../projects/utility-components/src/lib/components/operations/ops-menu/ops-menu.component.html","../../../projects/utility-components/src/lib/utility-components.module.ts","../../../projects/utility-components/src/lib/models/DropdownOption.ts","../../../projects/utility-components/src/public-api.ts","../../../projects/utility-components/src/esfaenza-utility-components.ts"],"sourcesContent":["// Angular\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n/** Questo componente rappresenta un elemento span che formatta automaticamente un **CurrencyValue** in base al suo **CurrencyType** */\r\n@Component({\r\n selector: \"currency-span\",\r\n templateUrl: \"currency-span.component.html\"\r\n})\r\nexport class CurrencySpanComponent {\r\n /** Valore da formattare */\r\n @Input() CurrencyValue: number;\r\n /** Tipo in base al quale formattare il valore **CurrencyValue** */\r\n @Input() CurrencyType: string = CurrencyType.EMPTY;\r\n}\r\n\r\n/**\r\n * @ignore\r\n * Al momento non serve assolutamente a niente, ma per espandere eventualmente \r\n * il componente in futuro lo lascio qui che schifo non fa.\r\n */\r\nexport enum CurrencyType {\r\n EUR = \"€\",\r\n USD = \"$\",\r\n CAD = \"$\",\r\n EMPTY = \"\"\r\n}","<span [class.text-info]=\"CurrencyValue == 0\"\r\n [class.text-success]=\"CurrencyValue > 0\"\r\n [class.text-danger]=\"CurrencyValue < 0\">\r\n {{CurrencyValue ? (CurrencyValue | currency:'':'':'1.2-2':'it') : '0,00'}} {{CurrencyType}}\r\n</span>","// Angular\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n// Configurazioni\r\nimport { ClipboardService } from \"@esfaenza/extensions\";\r\n\r\n// Direttive, Componenti, Librerie\r\nimport { ToastrService } from \"ngx-toastr\";\r\n\r\n/** Questo componente rappresenta un elemento span che tronca un **Text** in base ad una **MaxLength** */\r\n@Component({\r\n selector: \"shorten-span\",\r\n templateUrl: \"shorten-span.component.html\",\r\n styleUrls: [\"./shorten-span.component.scss\"]\r\n})\r\nexport class ShortenSpanComponent {\r\n /** Mostra **Text** con stile grassetto */\r\n @Input() Bold: boolean = false;\r\n /** Testo da mostrare nello span */\r\n @Input() Text: string;\r\n /** Lunghezza massima del testo, prima di venire troncato */\r\n @Input() MaxLength: number = 999;\r\n /** Abilita la possibilita di copiare **Text** col tasto sinistro del mouse */\r\n @Input() ClipboardCopy: boolean = false;\r\n\r\n /** @ignore */\r\n constructor(private toastrService: ToastrService, private clipboardService: ClipboardService) { }\r\n\r\n /** Testo da mostrare nel tooltip di material, quando ha valore diverso da null */\r\n public ShowTooltip = null;\r\n\r\n /** @ignore */\r\n ngOnInit() {\r\n this.ShowTooltip = this.Text?.length >= this.MaxLength ? this.Text : null;\r\n }\r\n\r\n /**\r\n * Copia un valore nella clipboard\r\n * \r\n * @param {string} value Valore da copiare nella clipboard\r\n */\r\n copyToClipboard(value: string) {\r\n this.clipboardService.copyTextToClipboard(value);\r\n this.toastrService.info('Testo copiato!', null, { positionClass: 'toast-top-center' });\r\n }\r\n}","<span [class.utils-copy]=\"ClipboardCopy\" (click)=\"ClipboardCopy ? copyToClipboard(Text) : null\" *ngIf=\"Text\" [class.utils-bold]=\"Bold\" [matTooltip]=\"ShowTooltip\">\r\n {{Text.length > MaxLength + 3 ? Text.substr(0, MaxLength) + \"...\" : Text}}\r\n</span>","// Angular\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n/** \r\n * Questo componente serve a mostrare un badge di stato, con un testo **Status**.\r\n * Colorato in base a condizioni di **Info**, **Success**, **Warning** o **Danger** \r\n */\r\n@Component({\r\n selector: \"status-badge\",\r\n templateUrl: \"status-badge.component.html\",\r\n styleUrls: [\"./status-badge.component.scss\"]\r\n})\r\nexport class StatusBadgeComponent {\r\n /** Etichetta da mostrare nel badge */\r\n @Input() public Status: string;\r\n /** Dimensione del badge, in valore numerico (1 = 100%) */\r\n @Input() public Zoom: number = 1;\r\n /** Valore dello stile 'top' del badge */\r\n @Input() public Top: string = \"20px\";\r\n /** Valore dello stile 'right' del badge */\r\n @Input() public Right: string = \"0px\";\r\n /** Condizione per la gestione del livello del badge - (Info o Warning o Success o Danger)*/\r\n @Input() public Level: 'Info' | 'Warning' | 'Success' | 'Danger';\r\n /** Valore boolen relativo al binding del livello badge - (Info) */\r\n @Input() public Info: boolean;\r\n /** Valore boolen relativo al binding del livello badge - (Warning) */\r\n @Input() public Warning: boolean;\r\n /** Valore boolen relativo al binding del livello badge - (Success) */\r\n @Input() public Success: boolean;\r\n /** Valore boolen relativo al binding del livello badge - (Danger) */\r\n @Input() public Danger: boolean;\r\n\r\n ngOnInit() {\r\n if (this.Level === null || this.Level === undefined)\r\n return;\r\n this.Info = this.Level == \"Info\";\r\n this.Warning = this.Level == \"Warning\";\r\n this.Success = this.Level == \"Success\";\r\n this.Danger = this.Level == \"Danger\";\r\n }\r\n}","<div class=\"status-badge-container utils-no-selection\" [style.margin-top]=\"Top\" [style.margin-right]=\"Right\" [style.zoom]=\"Zoom\" [style.-moz-transform]=\"'scale(' + Zoom + ')'\">\r\n <span class=\"status-badge\"\r\n [class.status-badge-info]=\"Info\"\r\n [class.status-badge-warning]=\"Warning\"\r\n [class.status-badge-success]=\"Success\"\r\n [class.status-badge-danger]=\"Danger\">\r\n <i style=\"font-size: 18px;\"\r\n class=\"fa\" \r\n [class.fa-info-circle]=\"Info\" \r\n [class.fa-exclamation-circle]=\"Warning\" \r\n [class.fa-check-circle]=\"Success\" \r\n [class.fa-times-circle]=\"Danger\">\r\n </i>\r\n <span *ngIf=\"Status\" class=\"ml-2 app-bold\">{{Status.toUpperCase()}}</span>\r\n </span>\r\n</div>","// Angular\r\nimport { Component, Input, ViewChild, ViewEncapsulation } from \"@angular/core\";\r\nimport { MatMenuTrigger } from \"@angular/material/menu\";\r\n\r\n// Models\r\nimport { DropdownOption } from \"../../models/DropdownOption\";\r\n\r\n/** Questo componente si occupa di creare un context-menu con **Options** definite dal programmatore, che innescano una funzione quando selezionate */\r\n@Component({\r\n selector: \"simple-dropdown\",\r\n templateUrl: \"simple-dropdown.component.html\",\r\n styleUrls: [\"./simple-dropdown.component.scss\"],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SimpleDropdownComponent {\r\n /** Trigger del MatMenu, per poter decidere quando mostrare il menu da codice */\r\n @ViewChild(MatMenuTrigger, { static: true }) matMenuTrigger: MatMenuTrigger;\r\n /** Opzioni da mostrare nel context-menu, composte da un campo Nome ed uno Operazione */\r\n @Input() Options: DropdownOption[] = [];\r\n /** Posizione di Default del context-menu, evitare di smanazzare */\r\n public MenuPosition = { x: '0', y: '0' }\r\n /** Serve per far apparire il menu dove definito da **MenuPosition**, facendo uso di **matMenuTrigger** */\r\n public Show(event: MouseEvent) {\r\n this.MenuPosition.x = event.clientX + 'px';\r\n this.MenuPosition.y = event.clientY + 'px';\r\n this.matMenuTrigger.openMenu();\r\n\r\n return false;\r\n }\r\n}","<div style=\"visibility: hidden; position: fixed;\" \r\n [style.left]=\"MenuPosition.x\" \r\n [style.top]=\"MenuPosition.y\" \r\n [matMenuTriggerFor]=\"rightMenu\">\r\n</div>\r\n\r\n<mat-menu #rightMenu=\"matMenu\">\r\n <ng-container *ngFor=\"let item of Options\">\r\n <button mat-menu-item (click)=\"item.execute()\">{{item.label}}</button>\r\n </ng-container>\r\n</mat-menu>","import { Component, EventEmitter, Output } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"ops-menu-operation\",\r\n templateUrl: \"./ops-menu-operation.component.html\"\r\n})\r\nexport class OperationsMenuOperationComponent {\r\n @Output() onClick: EventEmitter<void> = new EventEmitter<void>();\r\n\r\n constructor() { }\r\n\r\n emitClick() {\r\n this.onClick.emit();\r\n }\r\n}","<div class=\"app-padding-left-10\">\r\n <a class=\"app-link app-inline-wrapped\" (click)=\"emitClick()\"><ng-content></ng-content></a>\r\n</div>","import { Component, Input } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"ops-menu-category\",\r\n templateUrl: \"./ops-menu-category.component.html\"\r\n})\r\nexport class OperationsMenuCategoryComponent {\r\n @Input() Name: string = \"Nuova categoria\";\r\n @Input() Expanded: boolean = false;\r\n\r\n constructor() { }\r\n}","<mat-accordion>\r\n <mat-expansion-panel [expanded]=\"Expanded\" (opened)=\"Expanded = true\" (closed)=\"Expanded = false\">\r\n <!--Header-->\r\n <mat-expansion-panel-header style=\"max-height: 48px !important\">\r\n <mat-panel-title class=\"app-no-selection\">{{Name}}</mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <!--Operations-->\r\n <ng-content></ng-content>\r\n </mat-expansion-panel>\r\n</mat-accordion>","import { Component } from \"@angular/core\";\r\n\r\n/**\r\n * ATTENZIONE\r\n * Questo componente si trova anche su @esfaenza/core branch next2\r\n * Viene \"duplicato\" in quanto il rilascio di quel branch non è ancora minimamente pianificato\r\n * e replicare il componente in ogni progetto non ha senso. \r\n * Forse sarebbe meglio lasciarlo solo qui, e core lo importa da appunto questa libreria.\r\n */\r\n@Component({\r\n selector: \"ops-menu\",\r\n templateUrl: \"./ops-menu.component.html\"\r\n})\r\nexport class OperationsMenuComponent {\r\n constructor() { }\r\n}","<h5 class=\"app-bold\">Operazioni</h5>\r\n\r\n<div class=\"card app-margin-top-10\">\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>","// Modules\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatExpansionModule } from \"@angular/material/expansion\";\r\n\r\n// Components\r\nimport { CurrencySpanComponent } from './components/currency-span/currency-span.component';\r\nimport { ShortenSpanComponent } from './components/shorten-span/shorten-span.component';\r\nimport { StatusBadgeComponent } from './components/status-badge/status-badge.component';\r\nimport { SimpleDropdownComponent } from './components/simple-dropdown/simple-dropdown.component';\r\nimport { OperationsMenuOperationComponent } from './components/operations/ops-menu-operation/ops-menu-operation.component';\r\nimport { OperationsMenuCategoryComponent } from './components/operations/ops-menu-category/ops-menu-category.component';\r\nimport { OperationsMenuComponent } from './components/operations/ops-menu/ops-menu.component';\r\n\r\nconst COMPONENTS = [\r\n CurrencySpanComponent,\r\n ShortenSpanComponent,\r\n StatusBadgeComponent,\r\n SimpleDropdownComponent,\r\n OperationsMenuOperationComponent,\r\n OperationsMenuCategoryComponent,\r\n OperationsMenuComponent\r\n];\r\n\r\n@NgModule({\r\n declarations: [\r\n COMPONENTS\r\n ],\r\n imports: [\r\n CommonModule,\r\n MatTooltipModule,\r\n MatMenuModule,\r\n MatExpansionModule,\r\n ToastrModule\r\n ],\r\n exports: [\r\n COMPONENTS\r\n ]\r\n})\r\nexport class UtilityComponentsModule { }","/** Modello che definisce una opzione del menu contestuale */\r\nexport class DropdownOption {\r\n /** Nome dell'opzione da mostrare */\r\n label: string;\r\n /** Funzione da eseguire quando viene selezionata l'opzione */\r\n execute: () => {};\r\n}","/*\r\n * Public API Surface of utility-components\r\n */\r\n\r\nexport * from './lib/utility-components.module';\r\nexport * from './lib/components/operations/ops-menu/ops-menu.component';\r\nexport * from './lib/components/operations/ops-menu-category/ops-menu-category.component';\r\nexport * from './lib/components/operations/ops-menu-operation/ops-menu-operation.component';\r\nexport * from './lib/components/currency-span/currency-span.component';\r\nexport * from './lib/components/shorten-span/shorten-span.component';\r\nexport * from './lib/components/simple-dropdown/simple-dropdown.component';\r\nexport * from './lib/components/status-badge/status-badge.component';\r\nexport * from './lib/models/DropdownOption';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i3","i2"],"mappings":"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"}
1
+ {"version":3,"file":"esfaenza-utility-components.mjs","sources":["../../../projects/utility-components/src/lib/components/currency-span/currency-span.component.ts","../../../projects/utility-components/src/lib/components/currency-span/currency-span.component.html","../../../projects/utility-components/src/lib/components/shorten-span/shorten-span.component.ts","../../../projects/utility-components/src/lib/components/shorten-span/shorten-span.component.html","../../../projects/utility-components/src/lib/components/status-badge/status-badge.component.ts","../../../projects/utility-components/src/lib/components/status-badge/status-badge.component.html","../../../projects/utility-components/src/lib/components/simple-dropdown/simple-dropdown.component.ts","../../../projects/utility-components/src/lib/components/simple-dropdown/simple-dropdown.component.html","../../../projects/utility-components/src/lib/components/operations/ops-menu-operation/ops-menu-operation.component.ts","../../../projects/utility-components/src/lib/components/operations/ops-menu-operation/ops-menu-operation.component.html","../../../projects/utility-components/src/lib/components/operations/ops-menu-category/ops-menu-category.component.ts","../../../projects/utility-components/src/lib/components/operations/ops-menu-category/ops-menu-category.component.html","../../../projects/utility-components/src/lib/components/operations/ops-menu/ops-menu.component.ts","../../../projects/utility-components/src/lib/components/operations/ops-menu/ops-menu.component.html","../../../projects/utility-components/src/lib/utility-components.module.ts","../../../projects/utility-components/src/lib/models/DropdownOption.ts","../../../projects/utility-components/src/public-api.ts","../../../projects/utility-components/src/esfaenza-utility-components.ts"],"sourcesContent":["// Angular\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n/** Questo componente rappresenta un elemento span che formatta automaticamente un **CurrencyValue** in base al suo **CurrencyType** */\r\n@Component({\r\n selector: \"currency-span\",\r\n templateUrl: \"currency-span.component.html\"\r\n})\r\nexport class CurrencySpanComponent {\r\n /** Valore da formattare */\r\n @Input() CurrencyValue: number;\r\n /** Tipo in base al quale formattare il valore **CurrencyValue** */\r\n @Input() CurrencyType: string = CurrencyType.EMPTY;\r\n}\r\n\r\n/**\r\n * @ignore\r\n * Al momento non serve assolutamente a niente, ma per espandere eventualmente \r\n * il componente in futuro lo lascio qui che schifo non fa.\r\n */\r\nexport enum CurrencyType {\r\n EUR = \"€\",\r\n USD = \"$\",\r\n CAD = \"$\",\r\n EMPTY = \"\"\r\n}","<span [class.text-info]=\"CurrencyValue == 0\"\r\n [class.text-success]=\"CurrencyValue > 0\"\r\n [class.text-danger]=\"CurrencyValue < 0\">\r\n {{CurrencyValue ? (CurrencyValue | currency:'':'':'1.2-2':'it') : '0,00'}} {{CurrencyType}}\r\n</span>","// Angular\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n// Configurazioni\r\nimport { ClipboardService } from \"@esfaenza/extensions\";\r\n\r\n// Direttive, Componenti, Librerie\r\nimport { ToastrService } from \"ngx-toastr\";\r\n\r\n/** Questo componente rappresenta un elemento span che tronca un **Text** in base ad una **MaxLength** */\r\n@Component({\r\n selector: \"shorten-span\",\r\n templateUrl: \"shorten-span.component.html\",\r\n styleUrls: [\"./shorten-span.component.scss\"]\r\n})\r\nexport class ShortenSpanComponent {\r\n /** Mostra **Text** con stile grassetto */\r\n @Input() Bold: boolean = false;\r\n /** Testo da mostrare nello span */\r\n @Input() Text: string;\r\n /** Lunghezza massima del testo, prima di venire troncato */\r\n @Input() MaxLength: number = 999;\r\n /** Abilita la possibilita di copiare **Text** col tasto sinistro del mouse */\r\n @Input() ClipboardCopy: boolean = false;\r\n\r\n /** @ignore */\r\n constructor(private toastrService: ToastrService, private clipboardService: ClipboardService) { }\r\n\r\n /** Testo da mostrare nel tooltip di material, quando ha valore diverso da null */\r\n public ShowTooltip = null;\r\n\r\n /** @ignore */\r\n ngOnInit() {\r\n this.ShowTooltip = this.Text?.length >= this.MaxLength ? this.Text : null;\r\n }\r\n\r\n /**\r\n * Copia un valore nella clipboard\r\n * \r\n * @param {string} value Valore da copiare nella clipboard\r\n */\r\n copyToClipboard(value: string) {\r\n this.clipboardService.copyTextToClipboard(value);\r\n this.toastrService.info('Testo copiato!', null, { positionClass: 'toast-top-center' });\r\n }\r\n}","<span [class.utils-copy]=\"ClipboardCopy\" (click)=\"ClipboardCopy ? copyToClipboard(Text) : null\" *ngIf=\"Text\" [class.utils-bold]=\"Bold\" [matTooltip]=\"ShowTooltip\">\r\n {{Text.length > MaxLength + 3 ? Text.substr(0, MaxLength) + \"...\" : Text}}\r\n</span>","// Angular\r\nimport { Component, EventEmitter, Input, Output } from \"@angular/core\";\r\n\r\n/** \r\n * Questo componente serve a mostrare un badge di stato, con un testo **Status**.\r\n * Colorato in base a condizioni di **Info**, **Success**, **Warning** o **Danger** \r\n */\r\n@Component({\r\n selector: \"status-badge\",\r\n templateUrl: \"status-badge.component.html\",\r\n styleUrls: [\"./status-badge.component.scss\"]\r\n})\r\nexport class StatusBadgeComponent {\r\n /** Etichetta da mostrare nel badge */\r\n @Input() public Status: string;\r\n /** Dimensione del badge, in valore numerico (1 = 100%) */\r\n @Input() public Zoom: number = 1;\r\n /** Valore dello stile 'top' del badge */\r\n @Input() public Top: string = \"20px\";\r\n /** Valore dello stile 'right' del badge */\r\n @Input() public Right: string = \"0px\";\r\n /** Condizione per la gestione del livello del badge - (Info o Warning o Success o Danger)*/\r\n @Input() public Level: 'Info' | 'Warning' | 'Success' | 'Danger';\r\n /** Valore boolen relativo al binding del livello badge - (Info) */\r\n @Input() public Info: boolean;\r\n /** Valore boolen relativo al binding del livello badge - (Warning) */\r\n @Input() public Warning: boolean;\r\n /** Valore boolen relativo al binding del livello badge - (Success) */\r\n @Input() public Success: boolean;\r\n /** Valore boolen relativo al binding del livello badge - (Danger) */\r\n @Input() public Danger: boolean;\r\n /** Indica se la card è cliccabile e mette gli stili di hover se servono */\r\n @Input() public Clickable: boolean;\r\n /** Evento di click sparato se l'elemento è cliccabile */\r\n @Output() public onClick: EventEmitter<void> = new EventEmitter<void>();\r\n\r\n handleClick() {\r\n if (!this.Clickable)\r\n return;\r\n\r\n this.onClick.emit();\r\n }\r\n\r\n ngOnInit() {\r\n if (this.Level === null || this.Level === undefined)\r\n return;\r\n this.Info = this.Level == \"Info\";\r\n this.Warning = this.Level == \"Warning\";\r\n this.Success = this.Level == \"Success\";\r\n this.Danger = this.Level == \"Danger\";\r\n }\r\n}","<div class=\"status-badge-container utils-no-selection\" \r\n [class.app-pointer]=\"Clickable\"\r\n [style.margin-top]=\"Top\" \r\n [style.margin-right]=\"Right\" \r\n [style.zoom]=\"Zoom\" \r\n [style.-moz-transform]=\"'scale(' + Zoom + ')'\"\r\n (click)=\"handleClick();\">\r\n\r\n <span class=\"status-badge\"\r\n [class.status-badge-info]=\"Info\"\r\n [class.status-badge-warning]=\"Warning\"\r\n [class.status-badge-success]=\"Success\"\r\n [class.status-badge-danger]=\"Danger\">\r\n <i style=\"font-size: 18px;\"\r\n class=\"fa\" \r\n [class.fa-info-circle]=\"Info\" \r\n [class.fa-exclamation-circle]=\"Warning\" \r\n [class.fa-check-circle]=\"Success\" \r\n [class.fa-times-circle]=\"Danger\">\r\n </i>\r\n <span *ngIf=\"Status\" class=\"ml-2 app-bold\">{{Status.toUpperCase()}}</span>\r\n </span>\r\n\r\n</div>","// Angular\r\nimport { Component, Input, ViewChild, ViewEncapsulation } from \"@angular/core\";\r\nimport { MatMenuTrigger } from \"@angular/material/menu\";\r\n\r\n// Models\r\nimport { DropdownOption } from \"../../models/DropdownOption\";\r\n\r\n/** Questo componente si occupa di creare un context-menu con **Options** definite dal programmatore, che innescano una funzione quando selezionate */\r\n@Component({\r\n selector: \"simple-dropdown\",\r\n templateUrl: \"simple-dropdown.component.html\",\r\n styleUrls: [\"./simple-dropdown.component.scss\"],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SimpleDropdownComponent {\r\n /** Trigger del MatMenu, per poter decidere quando mostrare il menu da codice */\r\n @ViewChild(MatMenuTrigger, { static: true }) matMenuTrigger: MatMenuTrigger;\r\n /** Opzioni da mostrare nel context-menu, composte da un campo Nome ed uno Operazione */\r\n @Input() Options: DropdownOption[] = [];\r\n /** Posizione di Default del context-menu, evitare di smanazzare */\r\n public MenuPosition = { x: '0', y: '0' }\r\n /** Serve per far apparire il menu dove definito da **MenuPosition**, facendo uso di **matMenuTrigger** */\r\n public Show(event: MouseEvent) {\r\n this.MenuPosition.x = event.clientX + 'px';\r\n this.MenuPosition.y = event.clientY + 'px';\r\n this.matMenuTrigger.openMenu();\r\n\r\n return false;\r\n }\r\n}","<div style=\"visibility: hidden; position: fixed;\" \r\n [style.left]=\"MenuPosition.x\" \r\n [style.top]=\"MenuPosition.y\" \r\n [matMenuTriggerFor]=\"rightMenu\">\r\n</div>\r\n\r\n<mat-menu #rightMenu=\"matMenu\">\r\n <ng-container *ngFor=\"let item of Options\">\r\n <button mat-menu-item (click)=\"item.execute()\">{{item.label}}</button>\r\n </ng-container>\r\n</mat-menu>","// Angular\r\nimport { Component, EventEmitter, Input, Output } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"ops-menu-operation\",\r\n templateUrl: \"./ops-menu-operation.component.html\"\r\n})\r\nexport class OperationsMenuOperationComponent {\r\n // Se valorizzato, non verrà più emesso l'output \"onClick\"\r\n @Input() RouterLink: any[] = null;\r\n // Passacarte per il vero evento \"click\" del componente\r\n @Output() onClick: EventEmitter<void> = new EventEmitter<void>();\r\n\r\n constructor() { }\r\n\r\n emitClick() {\r\n this.onClick.emit();\r\n }\r\n}","<div class=\"app-padding-left-10\">\r\n <a *ngIf=\"!RouterLink\" class=\"app-link app-inline-wrapped\" (click)=\"emitClick()\"><ng-container *ngTemplateOutlet=\"Content;\"></ng-container></a>\r\n <a *ngIf=\"!!RouterLink\" class=\"app-link app-inline-wrapped\" [routerLink]=\"RouterLink\"><ng-container *ngTemplateOutlet=\"Content;\"></ng-container></a>\r\n</div>\r\n\r\n<ng-template #Content>\r\n <ng-content></ng-content>\r\n</ng-template>","// Angular\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n// Configurazioni\r\n\r\n// Applicazione\r\n\r\n@Component({\r\n selector: \"ops-menu-category\",\r\n templateUrl: \"./ops-menu-category.component.html\"\r\n})\r\nexport class OperationsMenuCategoryComponent {\r\n @Input() Name: string = \"Nuova categoria\";\r\n @Input() Expanded: boolean = false;\r\n\r\n constructor() { }\r\n}","<mat-accordion>\r\n <mat-expansion-panel [expanded]=\"Expanded\" (opened)=\"Expanded = true\" (closed)=\"Expanded = false\">\r\n <!--Header-->\r\n <mat-expansion-panel-header style=\"max-height: 48px !important\">\r\n <mat-panel-title class=\"app-no-selection\">{{Name}}</mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <!--Operations-->\r\n <ng-content></ng-content>\r\n </mat-expansion-panel>\r\n</mat-accordion>","// Angular\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n// Configurazioni\r\n\r\n// Applicazione\r\n\r\n@Component({\r\n selector: \"ops-menu\",\r\n templateUrl: \"./ops-menu.component.html\"\r\n})\r\nexport class OperationsMenuComponent {\r\n constructor() { }\r\n}","<!-- Widget Operazioni 2.0 -->\r\n<div class=\"card app-margin-bottom-15\">\r\n <div class=\"card-header\">\r\n <span class=\"text-uppercase\">Operazioni</span>\r\n </div>\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>","// Modules\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { RouterModule } from '@angular/router';\r\nimport { MatExpansionModule } from \"@angular/material/expansion\";\r\n\r\n// Components\r\nimport { CurrencySpanComponent } from './components/currency-span/currency-span.component';\r\nimport { ShortenSpanComponent } from './components/shorten-span/shorten-span.component';\r\nimport { StatusBadgeComponent } from './components/status-badge/status-badge.component';\r\nimport { SimpleDropdownComponent } from './components/simple-dropdown/simple-dropdown.component';\r\nimport { OperationsMenuOperationComponent } from './components/operations/ops-menu-operation/ops-menu-operation.component';\r\nimport { OperationsMenuCategoryComponent } from './components/operations/ops-menu-category/ops-menu-category.component';\r\nimport { OperationsMenuComponent } from './components/operations/ops-menu/ops-menu.component';\r\n\r\nconst COMPONENTS = [\r\n CurrencySpanComponent,\r\n ShortenSpanComponent,\r\n StatusBadgeComponent,\r\n SimpleDropdownComponent,\r\n OperationsMenuOperationComponent,\r\n OperationsMenuCategoryComponent,\r\n OperationsMenuComponent\r\n];\r\n\r\n@NgModule({\r\n declarations: [\r\n COMPONENTS\r\n ],\r\n imports: [\r\n CommonModule,\r\n MatTooltipModule,\r\n MatMenuModule,\r\n MatExpansionModule,\r\n ToastrModule,\r\n RouterModule\r\n ],\r\n exports: [\r\n COMPONENTS\r\n ]\r\n})\r\nexport class UtilityComponentsModule { }","/** Modello che definisce una opzione del menu contestuale */\r\nexport class DropdownOption {\r\n /** Nome dell'opzione da mostrare */\r\n label: string;\r\n /** Funzione da eseguire quando viene selezionata l'opzione */\r\n execute: () => {};\r\n}","/*\r\n * Public API Surface of utility-components\r\n */\r\n\r\nexport * from './lib/utility-components.module';\r\nexport * from './lib/components/operations/ops-menu/ops-menu.component';\r\nexport * from './lib/components/operations/ops-menu-category/ops-menu-category.component';\r\nexport * from './lib/components/operations/ops-menu-operation/ops-menu-operation.component';\r\nexport * from './lib/components/currency-span/currency-span.component';\r\nexport * from './lib/components/shorten-span/shorten-span.component';\r\nexport * from './lib/components/simple-dropdown/simple-dropdown.component';\r\nexport * from './lib/components/status-badge/status-badge.component';\r\nexport * from './lib/models/DropdownOption';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i3","i2"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Component, Input, ViewEncapsulation, ViewChild, EventEmitter, Output, NgModule } from '@angular/core';
2
+ import { Component, Input, EventEmitter, Output, ViewEncapsulation, ViewChild, NgModule } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
5
  import * as i1$1 from 'ngx-toastr';
@@ -8,6 +8,8 @@ import * as i4 from '@angular/material/tooltip';
8
8
  import { MatTooltipModule } from '@angular/material/tooltip';
9
9
  import * as i2$1 from '@angular/material/menu';
10
10
  import { MatMenuTrigger, MatMenuModule } from '@angular/material/menu';
11
+ import * as i2$2 from '@angular/router';
12
+ import { RouterModule } from '@angular/router';
11
13
  import * as i1$2 from '@angular/material/expansion';
12
14
  import { MatExpansionModule } from '@angular/material/expansion';
13
15
  import * as i2 from '@esfaenza/extensions';
@@ -101,6 +103,13 @@ class StatusBadgeComponent {
101
103
  this.Top = "20px";
102
104
  /** Valore dello stile 'right' del badge */
103
105
  this.Right = "0px";
106
+ /** Evento di click sparato se l'elemento è cliccabile */
107
+ this.onClick = new EventEmitter();
108
+ }
109
+ handleClick() {
110
+ if (!this.Clickable)
111
+ return;
112
+ this.onClick.emit();
104
113
  }
105
114
  ngOnInit() {
106
115
  if (this.Level === null || this.Level === undefined)
@@ -112,10 +121,10 @@ class StatusBadgeComponent {
112
121
  }
113
122
  }
114
123
  StatusBadgeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StatusBadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
115
- StatusBadgeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: StatusBadgeComponent, selector: "status-badge", inputs: { Status: "Status", Zoom: "Zoom", Top: "Top", Right: "Right", Level: "Level", Info: "Info", Warning: "Warning", Success: "Success", Danger: "Danger" }, ngImport: i0, template: "<div class=\"status-badge-container utils-no-selection\" [style.margin-top]=\"Top\" [style.margin-right]=\"Right\" [style.zoom]=\"Zoom\" [style.-moz-transform]=\"'scale(' + Zoom + ')'\">\r\n <span class=\"status-badge\"\r\n [class.status-badge-info]=\"Info\"\r\n [class.status-badge-warning]=\"Warning\"\r\n [class.status-badge-success]=\"Success\"\r\n [class.status-badge-danger]=\"Danger\">\r\n <i style=\"font-size: 18px;\"\r\n class=\"fa\" \r\n [class.fa-info-circle]=\"Info\" \r\n [class.fa-exclamation-circle]=\"Warning\" \r\n [class.fa-check-circle]=\"Success\" \r\n [class.fa-times-circle]=\"Danger\">\r\n </i>\r\n <span *ngIf=\"Status\" class=\"ml-2 app-bold\">{{Status.toUpperCase()}}</span>\r\n </span>\r\n</div>", styles: [".utils-pointer{cursor:pointer}.utils-copy{cursor:copy}.utils-bold{font-weight:700}.utils-no-selection{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}::ng-deep .mat-tooltip{font-size:16px}.status-badge-container{position:absolute;right:0;margin-right:15px;top:0;white-space:nowrap}.status-badge{height:30px;padding:5px 10px;font-size:16px;line-height:20px;border-radius:5px}.status-badge-info{border:3px solid;color:#248dad}.status-badge-warning{border:3px solid;color:#f79a17}.status-badge-success{border:3px solid;color:#2d922d}.status-badge-danger{border:3px solid;color:#bf1725}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
124
+ StatusBadgeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: StatusBadgeComponent, selector: "status-badge", inputs: { Status: "Status", Zoom: "Zoom", Top: "Top", Right: "Right", Level: "Level", Info: "Info", Warning: "Warning", Success: "Success", Danger: "Danger", Clickable: "Clickable" }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<div class=\"status-badge-container utils-no-selection\" \r\n [class.app-pointer]=\"Clickable\"\r\n [style.margin-top]=\"Top\" \r\n [style.margin-right]=\"Right\" \r\n [style.zoom]=\"Zoom\" \r\n [style.-moz-transform]=\"'scale(' + Zoom + ')'\"\r\n (click)=\"handleClick();\">\r\n\r\n <span class=\"status-badge\"\r\n [class.status-badge-info]=\"Info\"\r\n [class.status-badge-warning]=\"Warning\"\r\n [class.status-badge-success]=\"Success\"\r\n [class.status-badge-danger]=\"Danger\">\r\n <i style=\"font-size: 18px;\"\r\n class=\"fa\" \r\n [class.fa-info-circle]=\"Info\" \r\n [class.fa-exclamation-circle]=\"Warning\" \r\n [class.fa-check-circle]=\"Success\" \r\n [class.fa-times-circle]=\"Danger\">\r\n </i>\r\n <span *ngIf=\"Status\" class=\"ml-2 app-bold\">{{Status.toUpperCase()}}</span>\r\n </span>\r\n\r\n</div>", styles: [".utils-pointer{cursor:pointer}.utils-copy{cursor:copy}.utils-bold{font-weight:700}.utils-no-selection{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}::ng-deep .mat-tooltip{font-size:16px}.status-badge-container{position:absolute;right:0;margin-right:15px;top:0;white-space:nowrap}.status-badge{height:30px;padding:5px 10px;font-size:16px;line-height:20px;border-radius:5px}.status-badge-info{border:3px solid;color:#248dad}.status-badge-warning{border:3px solid;color:#f79a17}.status-badge-success{border:3px solid;color:#2d922d}.status-badge-danger{border:3px solid;color:#bf1725}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
116
125
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: StatusBadgeComponent, decorators: [{
117
126
  type: Component,
118
- args: [{ selector: "status-badge", template: "<div class=\"status-badge-container utils-no-selection\" [style.margin-top]=\"Top\" [style.margin-right]=\"Right\" [style.zoom]=\"Zoom\" [style.-moz-transform]=\"'scale(' + Zoom + ')'\">\r\n <span class=\"status-badge\"\r\n [class.status-badge-info]=\"Info\"\r\n [class.status-badge-warning]=\"Warning\"\r\n [class.status-badge-success]=\"Success\"\r\n [class.status-badge-danger]=\"Danger\">\r\n <i style=\"font-size: 18px;\"\r\n class=\"fa\" \r\n [class.fa-info-circle]=\"Info\" \r\n [class.fa-exclamation-circle]=\"Warning\" \r\n [class.fa-check-circle]=\"Success\" \r\n [class.fa-times-circle]=\"Danger\">\r\n </i>\r\n <span *ngIf=\"Status\" class=\"ml-2 app-bold\">{{Status.toUpperCase()}}</span>\r\n </span>\r\n</div>", styles: [".utils-pointer{cursor:pointer}.utils-copy{cursor:copy}.utils-bold{font-weight:700}.utils-no-selection{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}::ng-deep .mat-tooltip{font-size:16px}.status-badge-container{position:absolute;right:0;margin-right:15px;top:0;white-space:nowrap}.status-badge{height:30px;padding:5px 10px;font-size:16px;line-height:20px;border-radius:5px}.status-badge-info{border:3px solid;color:#248dad}.status-badge-warning{border:3px solid;color:#f79a17}.status-badge-success{border:3px solid;color:#2d922d}.status-badge-danger{border:3px solid;color:#bf1725}\n"] }]
127
+ args: [{ selector: "status-badge", template: "<div class=\"status-badge-container utils-no-selection\" \r\n [class.app-pointer]=\"Clickable\"\r\n [style.margin-top]=\"Top\" \r\n [style.margin-right]=\"Right\" \r\n [style.zoom]=\"Zoom\" \r\n [style.-moz-transform]=\"'scale(' + Zoom + ')'\"\r\n (click)=\"handleClick();\">\r\n\r\n <span class=\"status-badge\"\r\n [class.status-badge-info]=\"Info\"\r\n [class.status-badge-warning]=\"Warning\"\r\n [class.status-badge-success]=\"Success\"\r\n [class.status-badge-danger]=\"Danger\">\r\n <i style=\"font-size: 18px;\"\r\n class=\"fa\" \r\n [class.fa-info-circle]=\"Info\" \r\n [class.fa-exclamation-circle]=\"Warning\" \r\n [class.fa-check-circle]=\"Success\" \r\n [class.fa-times-circle]=\"Danger\">\r\n </i>\r\n <span *ngIf=\"Status\" class=\"ml-2 app-bold\">{{Status.toUpperCase()}}</span>\r\n </span>\r\n\r\n</div>", styles: [".utils-pointer{cursor:pointer}.utils-copy{cursor:copy}.utils-bold{font-weight:700}.utils-no-selection{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}::ng-deep .mat-tooltip{font-size:16px}.status-badge-container{position:absolute;right:0;margin-right:15px;top:0;white-space:nowrap}.status-badge{height:30px;padding:5px 10px;font-size:16px;line-height:20px;border-radius:5px}.status-badge-info{border:3px solid;color:#248dad}.status-badge-warning{border:3px solid;color:#f79a17}.status-badge-success{border:3px solid;color:#2d922d}.status-badge-danger{border:3px solid;color:#bf1725}\n"] }]
119
128
  }], propDecorators: { Status: [{
120
129
  type: Input
121
130
  }], Zoom: [{
@@ -134,6 +143,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
134
143
  type: Input
135
144
  }], Danger: [{
136
145
  type: Input
146
+ }], Clickable: [{
147
+ type: Input
148
+ }], onClick: [{
149
+ type: Output
137
150
  }] } });
138
151
 
139
152
  // Angular
@@ -165,8 +178,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
165
178
  type: Input
166
179
  }] } });
167
180
 
181
+ // Angular
168
182
  class OperationsMenuOperationComponent {
169
183
  constructor() {
184
+ // Se valorizzato, non verrà più emesso l'output "onClick"
185
+ this.RouterLink = null;
186
+ // Passacarte per il vero evento "click" del componente
170
187
  this.onClick = new EventEmitter();
171
188
  }
172
189
  emitClick() {
@@ -174,14 +191,19 @@ class OperationsMenuOperationComponent {
174
191
  }
175
192
  }
176
193
  OperationsMenuOperationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OperationsMenuOperationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
177
- OperationsMenuOperationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OperationsMenuOperationComponent, selector: "ops-menu-operation", outputs: { onClick: "onClick" }, ngImport: i0, template: "<div class=\"app-padding-left-10\">\r\n <a class=\"app-link app-inline-wrapped\" (click)=\"emitClick()\"><ng-content></ng-content></a>\r\n</div>" });
194
+ OperationsMenuOperationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OperationsMenuOperationComponent, selector: "ops-menu-operation", inputs: { RouterLink: "RouterLink" }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<div class=\"app-padding-left-10\">\r\n <a *ngIf=\"!RouterLink\" class=\"app-link app-inline-wrapped\" (click)=\"emitClick()\"><ng-container *ngTemplateOutlet=\"Content;\"></ng-container></a>\r\n <a *ngIf=\"!!RouterLink\" class=\"app-link app-inline-wrapped\" [routerLink]=\"RouterLink\"><ng-container *ngTemplateOutlet=\"Content;\"></ng-container></a>\r\n</div>\r\n\r\n<ng-template #Content>\r\n <ng-content></ng-content>\r\n</ng-template>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2$2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
178
195
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OperationsMenuOperationComponent, decorators: [{
179
196
  type: Component,
180
- args: [{ selector: "ops-menu-operation", template: "<div class=\"app-padding-left-10\">\r\n <a class=\"app-link app-inline-wrapped\" (click)=\"emitClick()\"><ng-content></ng-content></a>\r\n</div>" }]
181
- }], ctorParameters: function () { return []; }, propDecorators: { onClick: [{
197
+ args: [{ selector: "ops-menu-operation", template: "<div class=\"app-padding-left-10\">\r\n <a *ngIf=\"!RouterLink\" class=\"app-link app-inline-wrapped\" (click)=\"emitClick()\"><ng-container *ngTemplateOutlet=\"Content;\"></ng-container></a>\r\n <a *ngIf=\"!!RouterLink\" class=\"app-link app-inline-wrapped\" [routerLink]=\"RouterLink\"><ng-container *ngTemplateOutlet=\"Content;\"></ng-container></a>\r\n</div>\r\n\r\n<ng-template #Content>\r\n <ng-content></ng-content>\r\n</ng-template>" }]
198
+ }], ctorParameters: function () { return []; }, propDecorators: { RouterLink: [{
199
+ type: Input
200
+ }], onClick: [{
182
201
  type: Output
183
202
  }] } });
184
203
 
204
+ // Angular
205
+ // Configurazioni
206
+ // Applicazione
185
207
  class OperationsMenuCategoryComponent {
186
208
  constructor() {
187
209
  this.Name = "Nuova categoria";
@@ -199,21 +221,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
199
221
  type: Input
200
222
  }] } });
201
223
 
202
- /**
203
- * ATTENZIONE
204
- * Questo componente si trova anche su @esfaenza/core branch next2
205
- * Viene "duplicato" in quanto il rilascio di quel branch non è ancora minimamente pianificato
206
- * e replicare il componente in ogni progetto non ha senso.
207
- * Forse sarebbe meglio lasciarlo solo qui, e core lo importa da appunto questa libreria.
208
- */
224
+ // Angular
225
+ // Configurazioni
226
+ // Applicazione
209
227
  class OperationsMenuComponent {
210
228
  constructor() { }
211
229
  }
212
230
  OperationsMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OperationsMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
213
- OperationsMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OperationsMenuComponent, selector: "ops-menu", ngImport: i0, template: "<h5 class=\"app-bold\">Operazioni</h5>\r\n\r\n<div class=\"card app-margin-top-10\">\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>" });
231
+ OperationsMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OperationsMenuComponent, selector: "ops-menu", ngImport: i0, template: "<!-- Widget Operazioni 2.0 -->\r\n<div class=\"card app-margin-bottom-15\">\r\n <div class=\"card-header\">\r\n <span class=\"text-uppercase\">Operazioni</span>\r\n </div>\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>" });
214
232
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OperationsMenuComponent, decorators: [{
215
233
  type: Component,
216
- args: [{ selector: "ops-menu", template: "<h5 class=\"app-bold\">Operazioni</h5>\r\n\r\n<div class=\"card app-margin-top-10\">\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>" }]
234
+ args: [{ selector: "ops-menu", template: "<!-- Widget Operazioni 2.0 -->\r\n<div class=\"card app-margin-bottom-15\">\r\n <div class=\"card-header\">\r\n <span class=\"text-uppercase\">Operazioni</span>\r\n </div>\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>" }]
217
235
  }], ctorParameters: function () { return []; } });
218
236
 
219
237
  // Modules
@@ -239,7 +257,8 @@ UtilityComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
239
257
  MatTooltipModule,
240
258
  MatMenuModule,
241
259
  MatExpansionModule,
242
- ToastrModule], exports: [CurrencySpanComponent,
260
+ ToastrModule,
261
+ RouterModule], exports: [CurrencySpanComponent,
243
262
  ShortenSpanComponent,
244
263
  StatusBadgeComponent,
245
264
  SimpleDropdownComponent,
@@ -250,7 +269,8 @@ UtilityComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0",
250
269
  MatTooltipModule,
251
270
  MatMenuModule,
252
271
  MatExpansionModule,
253
- ToastrModule] });
272
+ ToastrModule,
273
+ RouterModule] });
254
274
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: UtilityComponentsModule, decorators: [{
255
275
  type: NgModule,
256
276
  args: [{
@@ -262,7 +282,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
262
282
  MatTooltipModule,
263
283
  MatMenuModule,
264
284
  MatExpansionModule,
265
- ToastrModule
285
+ ToastrModule,
286
+ RouterModule
266
287
  ],
267
288
  exports: [
268
289
  COMPONENTS
@@ -1 +1 @@
1
- {"version":3,"file":"esfaenza-utility-components.mjs","sources":["../../../projects/utility-components/src/lib/components/currency-span/currency-span.component.ts","../../../projects/utility-components/src/lib/components/currency-span/currency-span.component.html","../../../projects/utility-components/src/lib/components/shorten-span/shorten-span.component.ts","../../../projects/utility-components/src/lib/components/shorten-span/shorten-span.component.html","../../../projects/utility-components/src/lib/components/status-badge/status-badge.component.ts","../../../projects/utility-components/src/lib/components/status-badge/status-badge.component.html","../../../projects/utility-components/src/lib/components/simple-dropdown/simple-dropdown.component.ts","../../../projects/utility-components/src/lib/components/simple-dropdown/simple-dropdown.component.html","../../../projects/utility-components/src/lib/components/operations/ops-menu-operation/ops-menu-operation.component.ts","../../../projects/utility-components/src/lib/components/operations/ops-menu-operation/ops-menu-operation.component.html","../../../projects/utility-components/src/lib/components/operations/ops-menu-category/ops-menu-category.component.ts","../../../projects/utility-components/src/lib/components/operations/ops-menu-category/ops-menu-category.component.html","../../../projects/utility-components/src/lib/components/operations/ops-menu/ops-menu.component.ts","../../../projects/utility-components/src/lib/components/operations/ops-menu/ops-menu.component.html","../../../projects/utility-components/src/lib/utility-components.module.ts","../../../projects/utility-components/src/lib/models/DropdownOption.ts","../../../projects/utility-components/src/public-api.ts","../../../projects/utility-components/src/esfaenza-utility-components.ts"],"sourcesContent":["// Angular\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n/** Questo componente rappresenta un elemento span che formatta automaticamente un **CurrencyValue** in base al suo **CurrencyType** */\r\n@Component({\r\n selector: \"currency-span\",\r\n templateUrl: \"currency-span.component.html\"\r\n})\r\nexport class CurrencySpanComponent {\r\n /** Valore da formattare */\r\n @Input() CurrencyValue: number;\r\n /** Tipo in base al quale formattare il valore **CurrencyValue** */\r\n @Input() CurrencyType: string = CurrencyType.EMPTY;\r\n}\r\n\r\n/**\r\n * @ignore\r\n * Al momento non serve assolutamente a niente, ma per espandere eventualmente \r\n * il componente in futuro lo lascio qui che schifo non fa.\r\n */\r\nexport enum CurrencyType {\r\n EUR = \"€\",\r\n USD = \"$\",\r\n CAD = \"$\",\r\n EMPTY = \"\"\r\n}","<span [class.text-info]=\"CurrencyValue == 0\"\r\n [class.text-success]=\"CurrencyValue > 0\"\r\n [class.text-danger]=\"CurrencyValue < 0\">\r\n {{CurrencyValue ? (CurrencyValue | currency:'':'':'1.2-2':'it') : '0,00'}} {{CurrencyType}}\r\n</span>","// Angular\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n// Configurazioni\r\nimport { ClipboardService } from \"@esfaenza/extensions\";\r\n\r\n// Direttive, Componenti, Librerie\r\nimport { ToastrService } from \"ngx-toastr\";\r\n\r\n/** Questo componente rappresenta un elemento span che tronca un **Text** in base ad una **MaxLength** */\r\n@Component({\r\n selector: \"shorten-span\",\r\n templateUrl: \"shorten-span.component.html\",\r\n styleUrls: [\"./shorten-span.component.scss\"]\r\n})\r\nexport class ShortenSpanComponent {\r\n /** Mostra **Text** con stile grassetto */\r\n @Input() Bold: boolean = false;\r\n /** Testo da mostrare nello span */\r\n @Input() Text: string;\r\n /** Lunghezza massima del testo, prima di venire troncato */\r\n @Input() MaxLength: number = 999;\r\n /** Abilita la possibilita di copiare **Text** col tasto sinistro del mouse */\r\n @Input() ClipboardCopy: boolean = false;\r\n\r\n /** @ignore */\r\n constructor(private toastrService: ToastrService, private clipboardService: ClipboardService) { }\r\n\r\n /** Testo da mostrare nel tooltip di material, quando ha valore diverso da null */\r\n public ShowTooltip = null;\r\n\r\n /** @ignore */\r\n ngOnInit() {\r\n this.ShowTooltip = this.Text?.length >= this.MaxLength ? this.Text : null;\r\n }\r\n\r\n /**\r\n * Copia un valore nella clipboard\r\n * \r\n * @param {string} value Valore da copiare nella clipboard\r\n */\r\n copyToClipboard(value: string) {\r\n this.clipboardService.copyTextToClipboard(value);\r\n this.toastrService.info('Testo copiato!', null, { positionClass: 'toast-top-center' });\r\n }\r\n}","<span [class.utils-copy]=\"ClipboardCopy\" (click)=\"ClipboardCopy ? copyToClipboard(Text) : null\" *ngIf=\"Text\" [class.utils-bold]=\"Bold\" [matTooltip]=\"ShowTooltip\">\r\n {{Text.length > MaxLength + 3 ? Text.substr(0, MaxLength) + \"...\" : Text}}\r\n</span>","// Angular\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n/** \r\n * Questo componente serve a mostrare un badge di stato, con un testo **Status**.\r\n * Colorato in base a condizioni di **Info**, **Success**, **Warning** o **Danger** \r\n */\r\n@Component({\r\n selector: \"status-badge\",\r\n templateUrl: \"status-badge.component.html\",\r\n styleUrls: [\"./status-badge.component.scss\"]\r\n})\r\nexport class StatusBadgeComponent {\r\n /** Etichetta da mostrare nel badge */\r\n @Input() public Status: string;\r\n /** Dimensione del badge, in valore numerico (1 = 100%) */\r\n @Input() public Zoom: number = 1;\r\n /** Valore dello stile 'top' del badge */\r\n @Input() public Top: string = \"20px\";\r\n /** Valore dello stile 'right' del badge */\r\n @Input() public Right: string = \"0px\";\r\n /** Condizione per la gestione del livello del badge - (Info o Warning o Success o Danger)*/\r\n @Input() public Level: 'Info' | 'Warning' | 'Success' | 'Danger';\r\n /** Valore boolen relativo al binding del livello badge - (Info) */\r\n @Input() public Info: boolean;\r\n /** Valore boolen relativo al binding del livello badge - (Warning) */\r\n @Input() public Warning: boolean;\r\n /** Valore boolen relativo al binding del livello badge - (Success) */\r\n @Input() public Success: boolean;\r\n /** Valore boolen relativo al binding del livello badge - (Danger) */\r\n @Input() public Danger: boolean;\r\n\r\n ngOnInit() {\r\n if (this.Level === null || this.Level === undefined)\r\n return;\r\n this.Info = this.Level == \"Info\";\r\n this.Warning = this.Level == \"Warning\";\r\n this.Success = this.Level == \"Success\";\r\n this.Danger = this.Level == \"Danger\";\r\n }\r\n}","<div class=\"status-badge-container utils-no-selection\" [style.margin-top]=\"Top\" [style.margin-right]=\"Right\" [style.zoom]=\"Zoom\" [style.-moz-transform]=\"'scale(' + Zoom + ')'\">\r\n <span class=\"status-badge\"\r\n [class.status-badge-info]=\"Info\"\r\n [class.status-badge-warning]=\"Warning\"\r\n [class.status-badge-success]=\"Success\"\r\n [class.status-badge-danger]=\"Danger\">\r\n <i style=\"font-size: 18px;\"\r\n class=\"fa\" \r\n [class.fa-info-circle]=\"Info\" \r\n [class.fa-exclamation-circle]=\"Warning\" \r\n [class.fa-check-circle]=\"Success\" \r\n [class.fa-times-circle]=\"Danger\">\r\n </i>\r\n <span *ngIf=\"Status\" class=\"ml-2 app-bold\">{{Status.toUpperCase()}}</span>\r\n </span>\r\n</div>","// Angular\r\nimport { Component, Input, ViewChild, ViewEncapsulation } from \"@angular/core\";\r\nimport { MatMenuTrigger } from \"@angular/material/menu\";\r\n\r\n// Models\r\nimport { DropdownOption } from \"../../models/DropdownOption\";\r\n\r\n/** Questo componente si occupa di creare un context-menu con **Options** definite dal programmatore, che innescano una funzione quando selezionate */\r\n@Component({\r\n selector: \"simple-dropdown\",\r\n templateUrl: \"simple-dropdown.component.html\",\r\n styleUrls: [\"./simple-dropdown.component.scss\"],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SimpleDropdownComponent {\r\n /** Trigger del MatMenu, per poter decidere quando mostrare il menu da codice */\r\n @ViewChild(MatMenuTrigger, { static: true }) matMenuTrigger: MatMenuTrigger;\r\n /** Opzioni da mostrare nel context-menu, composte da un campo Nome ed uno Operazione */\r\n @Input() Options: DropdownOption[] = [];\r\n /** Posizione di Default del context-menu, evitare di smanazzare */\r\n public MenuPosition = { x: '0', y: '0' }\r\n /** Serve per far apparire il menu dove definito da **MenuPosition**, facendo uso di **matMenuTrigger** */\r\n public Show(event: MouseEvent) {\r\n this.MenuPosition.x = event.clientX + 'px';\r\n this.MenuPosition.y = event.clientY + 'px';\r\n this.matMenuTrigger.openMenu();\r\n\r\n return false;\r\n }\r\n}","<div style=\"visibility: hidden; position: fixed;\" \r\n [style.left]=\"MenuPosition.x\" \r\n [style.top]=\"MenuPosition.y\" \r\n [matMenuTriggerFor]=\"rightMenu\">\r\n</div>\r\n\r\n<mat-menu #rightMenu=\"matMenu\">\r\n <ng-container *ngFor=\"let item of Options\">\r\n <button mat-menu-item (click)=\"item.execute()\">{{item.label}}</button>\r\n </ng-container>\r\n</mat-menu>","import { Component, EventEmitter, Output } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"ops-menu-operation\",\r\n templateUrl: \"./ops-menu-operation.component.html\"\r\n})\r\nexport class OperationsMenuOperationComponent {\r\n @Output() onClick: EventEmitter<void> = new EventEmitter<void>();\r\n\r\n constructor() { }\r\n\r\n emitClick() {\r\n this.onClick.emit();\r\n }\r\n}","<div class=\"app-padding-left-10\">\r\n <a class=\"app-link app-inline-wrapped\" (click)=\"emitClick()\"><ng-content></ng-content></a>\r\n</div>","import { Component, Input } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"ops-menu-category\",\r\n templateUrl: \"./ops-menu-category.component.html\"\r\n})\r\nexport class OperationsMenuCategoryComponent {\r\n @Input() Name: string = \"Nuova categoria\";\r\n @Input() Expanded: boolean = false;\r\n\r\n constructor() { }\r\n}","<mat-accordion>\r\n <mat-expansion-panel [expanded]=\"Expanded\" (opened)=\"Expanded = true\" (closed)=\"Expanded = false\">\r\n <!--Header-->\r\n <mat-expansion-panel-header style=\"max-height: 48px !important\">\r\n <mat-panel-title class=\"app-no-selection\">{{Name}}</mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <!--Operations-->\r\n <ng-content></ng-content>\r\n </mat-expansion-panel>\r\n</mat-accordion>","import { Component } from \"@angular/core\";\r\n\r\n/**\r\n * ATTENZIONE\r\n * Questo componente si trova anche su @esfaenza/core branch next2\r\n * Viene \"duplicato\" in quanto il rilascio di quel branch non è ancora minimamente pianificato\r\n * e replicare il componente in ogni progetto non ha senso. \r\n * Forse sarebbe meglio lasciarlo solo qui, e core lo importa da appunto questa libreria.\r\n */\r\n@Component({\r\n selector: \"ops-menu\",\r\n templateUrl: \"./ops-menu.component.html\"\r\n})\r\nexport class OperationsMenuComponent {\r\n constructor() { }\r\n}","<h5 class=\"app-bold\">Operazioni</h5>\r\n\r\n<div class=\"card app-margin-top-10\">\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>","// Modules\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatExpansionModule } from \"@angular/material/expansion\";\r\n\r\n// Components\r\nimport { CurrencySpanComponent } from './components/currency-span/currency-span.component';\r\nimport { ShortenSpanComponent } from './components/shorten-span/shorten-span.component';\r\nimport { StatusBadgeComponent } from './components/status-badge/status-badge.component';\r\nimport { SimpleDropdownComponent } from './components/simple-dropdown/simple-dropdown.component';\r\nimport { OperationsMenuOperationComponent } from './components/operations/ops-menu-operation/ops-menu-operation.component';\r\nimport { OperationsMenuCategoryComponent } from './components/operations/ops-menu-category/ops-menu-category.component';\r\nimport { OperationsMenuComponent } from './components/operations/ops-menu/ops-menu.component';\r\n\r\nconst COMPONENTS = [\r\n CurrencySpanComponent,\r\n ShortenSpanComponent,\r\n StatusBadgeComponent,\r\n SimpleDropdownComponent,\r\n OperationsMenuOperationComponent,\r\n OperationsMenuCategoryComponent,\r\n OperationsMenuComponent\r\n];\r\n\r\n@NgModule({\r\n declarations: [\r\n COMPONENTS\r\n ],\r\n imports: [\r\n CommonModule,\r\n MatTooltipModule,\r\n MatMenuModule,\r\n MatExpansionModule,\r\n ToastrModule\r\n ],\r\n exports: [\r\n COMPONENTS\r\n ]\r\n})\r\nexport class UtilityComponentsModule { }","/** Modello che definisce una opzione del menu contestuale */\r\nexport class DropdownOption {\r\n /** Nome dell'opzione da mostrare */\r\n label: string;\r\n /** Funzione da eseguire quando viene selezionata l'opzione */\r\n execute: () => {};\r\n}","/*\r\n * Public API Surface of utility-components\r\n */\r\n\r\nexport * from './lib/utility-components.module';\r\nexport * from './lib/components/operations/ops-menu/ops-menu.component';\r\nexport * from './lib/components/operations/ops-menu-category/ops-menu-category.component';\r\nexport * from './lib/components/operations/ops-menu-operation/ops-menu-operation.component';\r\nexport * from './lib/components/currency-span/currency-span.component';\r\nexport * from './lib/components/shorten-span/shorten-span.component';\r\nexport * from './lib/components/simple-dropdown/simple-dropdown.component';\r\nexport * from './lib/components/status-badge/status-badge.component';\r\nexport * from './lib/models/DropdownOption';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i3","i2"],"mappings":"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"}
1
+ {"version":3,"file":"esfaenza-utility-components.mjs","sources":["../../../projects/utility-components/src/lib/components/currency-span/currency-span.component.ts","../../../projects/utility-components/src/lib/components/currency-span/currency-span.component.html","../../../projects/utility-components/src/lib/components/shorten-span/shorten-span.component.ts","../../../projects/utility-components/src/lib/components/shorten-span/shorten-span.component.html","../../../projects/utility-components/src/lib/components/status-badge/status-badge.component.ts","../../../projects/utility-components/src/lib/components/status-badge/status-badge.component.html","../../../projects/utility-components/src/lib/components/simple-dropdown/simple-dropdown.component.ts","../../../projects/utility-components/src/lib/components/simple-dropdown/simple-dropdown.component.html","../../../projects/utility-components/src/lib/components/operations/ops-menu-operation/ops-menu-operation.component.ts","../../../projects/utility-components/src/lib/components/operations/ops-menu-operation/ops-menu-operation.component.html","../../../projects/utility-components/src/lib/components/operations/ops-menu-category/ops-menu-category.component.ts","../../../projects/utility-components/src/lib/components/operations/ops-menu-category/ops-menu-category.component.html","../../../projects/utility-components/src/lib/components/operations/ops-menu/ops-menu.component.ts","../../../projects/utility-components/src/lib/components/operations/ops-menu/ops-menu.component.html","../../../projects/utility-components/src/lib/utility-components.module.ts","../../../projects/utility-components/src/lib/models/DropdownOption.ts","../../../projects/utility-components/src/public-api.ts","../../../projects/utility-components/src/esfaenza-utility-components.ts"],"sourcesContent":["// Angular\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n/** Questo componente rappresenta un elemento span che formatta automaticamente un **CurrencyValue** in base al suo **CurrencyType** */\r\n@Component({\r\n selector: \"currency-span\",\r\n templateUrl: \"currency-span.component.html\"\r\n})\r\nexport class CurrencySpanComponent {\r\n /** Valore da formattare */\r\n @Input() CurrencyValue: number;\r\n /** Tipo in base al quale formattare il valore **CurrencyValue** */\r\n @Input() CurrencyType: string = CurrencyType.EMPTY;\r\n}\r\n\r\n/**\r\n * @ignore\r\n * Al momento non serve assolutamente a niente, ma per espandere eventualmente \r\n * il componente in futuro lo lascio qui che schifo non fa.\r\n */\r\nexport enum CurrencyType {\r\n EUR = \"€\",\r\n USD = \"$\",\r\n CAD = \"$\",\r\n EMPTY = \"\"\r\n}","<span [class.text-info]=\"CurrencyValue == 0\"\r\n [class.text-success]=\"CurrencyValue > 0\"\r\n [class.text-danger]=\"CurrencyValue < 0\">\r\n {{CurrencyValue ? (CurrencyValue | currency:'':'':'1.2-2':'it') : '0,00'}} {{CurrencyType}}\r\n</span>","// Angular\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n// Configurazioni\r\nimport { ClipboardService } from \"@esfaenza/extensions\";\r\n\r\n// Direttive, Componenti, Librerie\r\nimport { ToastrService } from \"ngx-toastr\";\r\n\r\n/** Questo componente rappresenta un elemento span che tronca un **Text** in base ad una **MaxLength** */\r\n@Component({\r\n selector: \"shorten-span\",\r\n templateUrl: \"shorten-span.component.html\",\r\n styleUrls: [\"./shorten-span.component.scss\"]\r\n})\r\nexport class ShortenSpanComponent {\r\n /** Mostra **Text** con stile grassetto */\r\n @Input() Bold: boolean = false;\r\n /** Testo da mostrare nello span */\r\n @Input() Text: string;\r\n /** Lunghezza massima del testo, prima di venire troncato */\r\n @Input() MaxLength: number = 999;\r\n /** Abilita la possibilita di copiare **Text** col tasto sinistro del mouse */\r\n @Input() ClipboardCopy: boolean = false;\r\n\r\n /** @ignore */\r\n constructor(private toastrService: ToastrService, private clipboardService: ClipboardService) { }\r\n\r\n /** Testo da mostrare nel tooltip di material, quando ha valore diverso da null */\r\n public ShowTooltip = null;\r\n\r\n /** @ignore */\r\n ngOnInit() {\r\n this.ShowTooltip = this.Text?.length >= this.MaxLength ? this.Text : null;\r\n }\r\n\r\n /**\r\n * Copia un valore nella clipboard\r\n * \r\n * @param {string} value Valore da copiare nella clipboard\r\n */\r\n copyToClipboard(value: string) {\r\n this.clipboardService.copyTextToClipboard(value);\r\n this.toastrService.info('Testo copiato!', null, { positionClass: 'toast-top-center' });\r\n }\r\n}","<span [class.utils-copy]=\"ClipboardCopy\" (click)=\"ClipboardCopy ? copyToClipboard(Text) : null\" *ngIf=\"Text\" [class.utils-bold]=\"Bold\" [matTooltip]=\"ShowTooltip\">\r\n {{Text.length > MaxLength + 3 ? Text.substr(0, MaxLength) + \"...\" : Text}}\r\n</span>","// Angular\r\nimport { Component, EventEmitter, Input, Output } from \"@angular/core\";\r\n\r\n/** \r\n * Questo componente serve a mostrare un badge di stato, con un testo **Status**.\r\n * Colorato in base a condizioni di **Info**, **Success**, **Warning** o **Danger** \r\n */\r\n@Component({\r\n selector: \"status-badge\",\r\n templateUrl: \"status-badge.component.html\",\r\n styleUrls: [\"./status-badge.component.scss\"]\r\n})\r\nexport class StatusBadgeComponent {\r\n /** Etichetta da mostrare nel badge */\r\n @Input() public Status: string;\r\n /** Dimensione del badge, in valore numerico (1 = 100%) */\r\n @Input() public Zoom: number = 1;\r\n /** Valore dello stile 'top' del badge */\r\n @Input() public Top: string = \"20px\";\r\n /** Valore dello stile 'right' del badge */\r\n @Input() public Right: string = \"0px\";\r\n /** Condizione per la gestione del livello del badge - (Info o Warning o Success o Danger)*/\r\n @Input() public Level: 'Info' | 'Warning' | 'Success' | 'Danger';\r\n /** Valore boolen relativo al binding del livello badge - (Info) */\r\n @Input() public Info: boolean;\r\n /** Valore boolen relativo al binding del livello badge - (Warning) */\r\n @Input() public Warning: boolean;\r\n /** Valore boolen relativo al binding del livello badge - (Success) */\r\n @Input() public Success: boolean;\r\n /** Valore boolen relativo al binding del livello badge - (Danger) */\r\n @Input() public Danger: boolean;\r\n /** Indica se la card è cliccabile e mette gli stili di hover se servono */\r\n @Input() public Clickable: boolean;\r\n /** Evento di click sparato se l'elemento è cliccabile */\r\n @Output() public onClick: EventEmitter<void> = new EventEmitter<void>();\r\n\r\n handleClick() {\r\n if (!this.Clickable)\r\n return;\r\n\r\n this.onClick.emit();\r\n }\r\n\r\n ngOnInit() {\r\n if (this.Level === null || this.Level === undefined)\r\n return;\r\n this.Info = this.Level == \"Info\";\r\n this.Warning = this.Level == \"Warning\";\r\n this.Success = this.Level == \"Success\";\r\n this.Danger = this.Level == \"Danger\";\r\n }\r\n}","<div class=\"status-badge-container utils-no-selection\" \r\n [class.app-pointer]=\"Clickable\"\r\n [style.margin-top]=\"Top\" \r\n [style.margin-right]=\"Right\" \r\n [style.zoom]=\"Zoom\" \r\n [style.-moz-transform]=\"'scale(' + Zoom + ')'\"\r\n (click)=\"handleClick();\">\r\n\r\n <span class=\"status-badge\"\r\n [class.status-badge-info]=\"Info\"\r\n [class.status-badge-warning]=\"Warning\"\r\n [class.status-badge-success]=\"Success\"\r\n [class.status-badge-danger]=\"Danger\">\r\n <i style=\"font-size: 18px;\"\r\n class=\"fa\" \r\n [class.fa-info-circle]=\"Info\" \r\n [class.fa-exclamation-circle]=\"Warning\" \r\n [class.fa-check-circle]=\"Success\" \r\n [class.fa-times-circle]=\"Danger\">\r\n </i>\r\n <span *ngIf=\"Status\" class=\"ml-2 app-bold\">{{Status.toUpperCase()}}</span>\r\n </span>\r\n\r\n</div>","// Angular\r\nimport { Component, Input, ViewChild, ViewEncapsulation } from \"@angular/core\";\r\nimport { MatMenuTrigger } from \"@angular/material/menu\";\r\n\r\n// Models\r\nimport { DropdownOption } from \"../../models/DropdownOption\";\r\n\r\n/** Questo componente si occupa di creare un context-menu con **Options** definite dal programmatore, che innescano una funzione quando selezionate */\r\n@Component({\r\n selector: \"simple-dropdown\",\r\n templateUrl: \"simple-dropdown.component.html\",\r\n styleUrls: [\"./simple-dropdown.component.scss\"],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SimpleDropdownComponent {\r\n /** Trigger del MatMenu, per poter decidere quando mostrare il menu da codice */\r\n @ViewChild(MatMenuTrigger, { static: true }) matMenuTrigger: MatMenuTrigger;\r\n /** Opzioni da mostrare nel context-menu, composte da un campo Nome ed uno Operazione */\r\n @Input() Options: DropdownOption[] = [];\r\n /** Posizione di Default del context-menu, evitare di smanazzare */\r\n public MenuPosition = { x: '0', y: '0' }\r\n /** Serve per far apparire il menu dove definito da **MenuPosition**, facendo uso di **matMenuTrigger** */\r\n public Show(event: MouseEvent) {\r\n this.MenuPosition.x = event.clientX + 'px';\r\n this.MenuPosition.y = event.clientY + 'px';\r\n this.matMenuTrigger.openMenu();\r\n\r\n return false;\r\n }\r\n}","<div style=\"visibility: hidden; position: fixed;\" \r\n [style.left]=\"MenuPosition.x\" \r\n [style.top]=\"MenuPosition.y\" \r\n [matMenuTriggerFor]=\"rightMenu\">\r\n</div>\r\n\r\n<mat-menu #rightMenu=\"matMenu\">\r\n <ng-container *ngFor=\"let item of Options\">\r\n <button mat-menu-item (click)=\"item.execute()\">{{item.label}}</button>\r\n </ng-container>\r\n</mat-menu>","// Angular\r\nimport { Component, EventEmitter, Input, Output } from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"ops-menu-operation\",\r\n templateUrl: \"./ops-menu-operation.component.html\"\r\n})\r\nexport class OperationsMenuOperationComponent {\r\n // Se valorizzato, non verrà più emesso l'output \"onClick\"\r\n @Input() RouterLink: any[] = null;\r\n // Passacarte per il vero evento \"click\" del componente\r\n @Output() onClick: EventEmitter<void> = new EventEmitter<void>();\r\n\r\n constructor() { }\r\n\r\n emitClick() {\r\n this.onClick.emit();\r\n }\r\n}","<div class=\"app-padding-left-10\">\r\n <a *ngIf=\"!RouterLink\" class=\"app-link app-inline-wrapped\" (click)=\"emitClick()\"><ng-container *ngTemplateOutlet=\"Content;\"></ng-container></a>\r\n <a *ngIf=\"!!RouterLink\" class=\"app-link app-inline-wrapped\" [routerLink]=\"RouterLink\"><ng-container *ngTemplateOutlet=\"Content;\"></ng-container></a>\r\n</div>\r\n\r\n<ng-template #Content>\r\n <ng-content></ng-content>\r\n</ng-template>","// Angular\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n// Configurazioni\r\n\r\n// Applicazione\r\n\r\n@Component({\r\n selector: \"ops-menu-category\",\r\n templateUrl: \"./ops-menu-category.component.html\"\r\n})\r\nexport class OperationsMenuCategoryComponent {\r\n @Input() Name: string = \"Nuova categoria\";\r\n @Input() Expanded: boolean = false;\r\n\r\n constructor() { }\r\n}","<mat-accordion>\r\n <mat-expansion-panel [expanded]=\"Expanded\" (opened)=\"Expanded = true\" (closed)=\"Expanded = false\">\r\n <!--Header-->\r\n <mat-expansion-panel-header style=\"max-height: 48px !important\">\r\n <mat-panel-title class=\"app-no-selection\">{{Name}}</mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <!--Operations-->\r\n <ng-content></ng-content>\r\n </mat-expansion-panel>\r\n</mat-accordion>","// Angular\r\nimport { Component, Input } from \"@angular/core\";\r\n\r\n// Configurazioni\r\n\r\n// Applicazione\r\n\r\n@Component({\r\n selector: \"ops-menu\",\r\n templateUrl: \"./ops-menu.component.html\"\r\n})\r\nexport class OperationsMenuComponent {\r\n constructor() { }\r\n}","<!-- Widget Operazioni 2.0 -->\r\n<div class=\"card app-margin-bottom-15\">\r\n <div class=\"card-header\">\r\n <span class=\"text-uppercase\">Operazioni</span>\r\n </div>\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>","// Modules\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { RouterModule } from '@angular/router';\r\nimport { MatExpansionModule } from \"@angular/material/expansion\";\r\n\r\n// Components\r\nimport { CurrencySpanComponent } from './components/currency-span/currency-span.component';\r\nimport { ShortenSpanComponent } from './components/shorten-span/shorten-span.component';\r\nimport { StatusBadgeComponent } from './components/status-badge/status-badge.component';\r\nimport { SimpleDropdownComponent } from './components/simple-dropdown/simple-dropdown.component';\r\nimport { OperationsMenuOperationComponent } from './components/operations/ops-menu-operation/ops-menu-operation.component';\r\nimport { OperationsMenuCategoryComponent } from './components/operations/ops-menu-category/ops-menu-category.component';\r\nimport { OperationsMenuComponent } from './components/operations/ops-menu/ops-menu.component';\r\n\r\nconst COMPONENTS = [\r\n CurrencySpanComponent,\r\n ShortenSpanComponent,\r\n StatusBadgeComponent,\r\n SimpleDropdownComponent,\r\n OperationsMenuOperationComponent,\r\n OperationsMenuCategoryComponent,\r\n OperationsMenuComponent\r\n];\r\n\r\n@NgModule({\r\n declarations: [\r\n COMPONENTS\r\n ],\r\n imports: [\r\n CommonModule,\r\n MatTooltipModule,\r\n MatMenuModule,\r\n MatExpansionModule,\r\n ToastrModule,\r\n RouterModule\r\n ],\r\n exports: [\r\n COMPONENTS\r\n ]\r\n})\r\nexport class UtilityComponentsModule { }","/** Modello che definisce una opzione del menu contestuale */\r\nexport class DropdownOption {\r\n /** Nome dell'opzione da mostrare */\r\n label: string;\r\n /** Funzione da eseguire quando viene selezionata l'opzione */\r\n execute: () => {};\r\n}","/*\r\n * Public API Surface of utility-components\r\n */\r\n\r\nexport * from './lib/utility-components.module';\r\nexport * from './lib/components/operations/ops-menu/ops-menu.component';\r\nexport * from './lib/components/operations/ops-menu-category/ops-menu-category.component';\r\nexport * from './lib/components/operations/ops-menu-operation/ops-menu-operation.component';\r\nexport * from './lib/components/currency-span/currency-span.component';\r\nexport * from './lib/components/shorten-span/shorten-span.component';\r\nexport * from './lib/components/simple-dropdown/simple-dropdown.component';\r\nexport * from './lib/components/status-badge/status-badge.component';\r\nexport * from './lib/models/DropdownOption';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i3","i2"],"mappings":"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"}
@@ -1,11 +1,4 @@
1
1
  import * as i0 from "@angular/core";
2
- /**
3
- * ATTENZIONE
4
- * Questo componente si trova anche su @esfaenza/core branch next2
5
- * Viene "duplicato" in quanto il rilascio di quel branch non è ancora minimamente pianificato
6
- * e replicare il componente in ogni progetto non ha senso.
7
- * Forse sarebbe meglio lasciarlo solo qui, e core lo importa da appunto questa libreria.
8
- */
9
2
  export declare class OperationsMenuComponent {
10
3
  constructor();
11
4
  static ɵfac: i0.ɵɵFactoryDeclaration<OperationsMenuComponent, never>;
@@ -1,9 +1,10 @@
1
1
  import { EventEmitter } from "@angular/core";
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class OperationsMenuOperationComponent {
4
+ RouterLink: any[];
4
5
  onClick: EventEmitter<void>;
5
6
  constructor();
6
7
  emitClick(): void;
7
8
  static ɵfac: i0.ɵɵFactoryDeclaration<OperationsMenuOperationComponent, never>;
8
- static ɵcmp: i0.ɵɵComponentDeclaration<OperationsMenuOperationComponent, "ops-menu-operation", never, {}, { "onClick": "onClick"; }, never, ["*"], false, never>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<OperationsMenuOperationComponent, "ops-menu-operation", never, { "RouterLink": "RouterLink"; }, { "onClick": "onClick"; }, never, ["*"], false, never>;
9
10
  }
@@ -1,3 +1,4 @@
1
+ import { EventEmitter } from "@angular/core";
1
2
  import * as i0 from "@angular/core";
2
3
  /**
3
4
  * Questo componente serve a mostrare un badge di stato, con un testo **Status**.
@@ -22,7 +23,12 @@ export declare class StatusBadgeComponent {
22
23
  Success: boolean;
23
24
  /** Valore boolen relativo al binding del livello badge - (Danger) */
24
25
  Danger: boolean;
26
+ /** Indica se la card è cliccabile e mette gli stili di hover se servono */
27
+ Clickable: boolean;
28
+ /** Evento di click sparato se l'elemento è cliccabile */
29
+ onClick: EventEmitter<void>;
30
+ handleClick(): void;
25
31
  ngOnInit(): void;
26
32
  static ɵfac: i0.ɵɵFactoryDeclaration<StatusBadgeComponent, never>;
27
- static ɵcmp: i0.ɵɵComponentDeclaration<StatusBadgeComponent, "status-badge", never, { "Status": "Status"; "Zoom": "Zoom"; "Top": "Top"; "Right": "Right"; "Level": "Level"; "Info": "Info"; "Warning": "Warning"; "Success": "Success"; "Danger": "Danger"; }, {}, never, never, false, never>;
33
+ static ɵcmp: i0.ɵɵComponentDeclaration<StatusBadgeComponent, "status-badge", never, { "Status": "Status"; "Zoom": "Zoom"; "Top": "Top"; "Right": "Right"; "Level": "Level"; "Info": "Info"; "Warning": "Warning"; "Success": "Success"; "Danger": "Danger"; "Clickable": "Clickable"; }, { "onClick": "onClick"; }, never, never, false, never>;
28
34
  }
@@ -11,8 +11,9 @@ import * as i9 from "@angular/material/tooltip";
11
11
  import * as i10 from "@angular/material/menu";
12
12
  import * as i11 from "@angular/material/expansion";
13
13
  import * as i12 from "ngx-toastr";
14
+ import * as i13 from "@angular/router";
14
15
  export declare class UtilityComponentsModule {
15
16
  static ɵfac: i0.ɵɵFactoryDeclaration<UtilityComponentsModule, never>;
16
- static ɵmod: i0.ɵɵNgModuleDeclaration<UtilityComponentsModule, [typeof i1.CurrencySpanComponent, typeof i2.ShortenSpanComponent, typeof i3.StatusBadgeComponent, typeof i4.SimpleDropdownComponent, typeof i5.OperationsMenuOperationComponent, typeof i6.OperationsMenuCategoryComponent, typeof i7.OperationsMenuComponent], [typeof i8.CommonModule, typeof i9.MatTooltipModule, typeof i10.MatMenuModule, typeof i11.MatExpansionModule, typeof i12.ToastrModule], [typeof i1.CurrencySpanComponent, typeof i2.ShortenSpanComponent, typeof i3.StatusBadgeComponent, typeof i4.SimpleDropdownComponent, typeof i5.OperationsMenuOperationComponent, typeof i6.OperationsMenuCategoryComponent, typeof i7.OperationsMenuComponent]>;
17
+ static ɵmod: i0.ɵɵNgModuleDeclaration<UtilityComponentsModule, [typeof i1.CurrencySpanComponent, typeof i2.ShortenSpanComponent, typeof i3.StatusBadgeComponent, typeof i4.SimpleDropdownComponent, typeof i5.OperationsMenuOperationComponent, typeof i6.OperationsMenuCategoryComponent, typeof i7.OperationsMenuComponent], [typeof i8.CommonModule, typeof i9.MatTooltipModule, typeof i10.MatMenuModule, typeof i11.MatExpansionModule, typeof i12.ToastrModule, typeof i13.RouterModule], [typeof i1.CurrencySpanComponent, typeof i2.ShortenSpanComponent, typeof i3.StatusBadgeComponent, typeof i4.SimpleDropdownComponent, typeof i5.OperationsMenuOperationComponent, typeof i6.OperationsMenuCategoryComponent, typeof i7.OperationsMenuComponent]>;
17
18
  static ɵinj: i0.ɵɵInjectorDeclaration<UtilityComponentsModule>;
18
19
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@esfaenza/utility-components",
3
- "version": "15.2.4",
3
+ "version": "15.2.6",
4
4
  "dependencies": {
5
5
  "tslib": "^2.0.0"
6
6
  },