@esfaenza/utility-components 16.2.27 → 17.3.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/esfaenza-utility-components.mjs +4 -4
- package/esm2022/lib/components/currency-span/currency-span.component.mjs +33 -33
- package/esm2022/lib/components/operations/ops-menu/ops-menu.component.mjs +14 -14
- package/esm2022/lib/components/operations/ops-menu-category/ops-menu-category.component.mjs +23 -23
- package/esm2022/lib/components/operations/ops-menu-operation/ops-menu-operation.component.mjs +27 -27
- package/esm2022/lib/components/shorten-span/shorten-span.component.mjs +51 -51
- package/esm2022/lib/components/simple-dropdown/simple-dropdown.component.mjs +33 -33
- package/esm2022/lib/components/status-badge/status-badge.component.mjs +61 -61
- package/esm2022/lib/models/DropdownOption.mjs +3 -3
- package/esm2022/lib/utility-components.module.mjs +72 -72
- package/esm2022/public-api.mjs +12 -12
- package/fesm2022/esfaenza-utility-components.mjs +269 -269
- package/fesm2022/esfaenza-utility-components.mjs.map +1 -1
- package/index.d.ts +5 -5
- package/lib/components/currency-span/currency-span.component.d.ts +21 -21
- package/lib/components/operations/ops-menu/ops-menu.component.d.ts +6 -6
- package/lib/components/operations/ops-menu-category/ops-menu-category.component.d.ts +8 -8
- package/lib/components/operations/ops-menu-operation/ops-menu-operation.component.d.ts +10 -10
- package/lib/components/shorten-span/shorten-span.component.d.ts +30 -30
- package/lib/components/simple-dropdown/simple-dropdown.component.d.ts +19 -19
- package/lib/components/status-badge/status-badge.component.d.ts +34 -34
- package/lib/models/DropdownOption.d.ts +7 -7
- package/lib/utility-components.module.d.ts +19 -19
- package/package.json +7 -7
- package/public-api.d.ts +9 -9
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public-api';
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
5
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNmYWVuemEtdXRpbGl0eS1jb21wb25lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvdXRpbGl0eS1jb21wb25lbnRzL3NyYy9lc2ZhZW56YS11dGlsaXR5LWNvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
// Angular
|
|
2
|
-
import { Component, Input } from "@angular/core";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
/** Questo componente rappresenta un elemento span che formatta automaticamente un **CurrencyValue** in base al suo **CurrencyType** */
|
|
6
|
-
export class CurrencySpanComponent {
|
|
7
|
-
constructor() {
|
|
8
|
-
/** Tipo in base al quale formattare il valore **CurrencyValue** */
|
|
9
|
-
this.CurrencyType = CurrencyType.EMPTY;
|
|
10
|
-
}
|
|
11
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
12
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
13
|
-
}
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
15
|
-
type: Component,
|
|
16
|
-
args: [{ selector: "currency-span", template: "<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>" }]
|
|
17
|
-
}], propDecorators: { CurrencyValue: [{
|
|
18
|
-
type: Input
|
|
19
|
-
}], CurrencyType: [{
|
|
20
|
-
type: Input
|
|
21
|
-
}] } });
|
|
22
|
-
/**
|
|
23
|
-
* @ignore
|
|
24
|
-
* Al momento non serve assolutamente a niente, ma per espandere eventualmente
|
|
25
|
-
* il componente in futuro lo lascio qui che schifo non fa.
|
|
26
|
-
*/
|
|
27
|
-
export var CurrencyType;
|
|
28
|
-
(function (CurrencyType) {
|
|
29
|
-
CurrencyType["EUR"] = "\u20AC";
|
|
30
|
-
CurrencyType["USD"] = "$";
|
|
31
|
-
CurrencyType["CAD"] = "$";
|
|
32
|
-
CurrencyType["EMPTY"] = "";
|
|
33
|
-
})(CurrencyType || (CurrencyType = {}));
|
|
1
|
+
// Angular
|
|
2
|
+
import { Component, Input } from "@angular/core";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
/** Questo componente rappresenta un elemento span che formatta automaticamente un **CurrencyValue** in base al suo **CurrencyType** */
|
|
6
|
+
export class CurrencySpanComponent {
|
|
7
|
+
constructor() {
|
|
8
|
+
/** Tipo in base al quale formattare il valore **CurrencyValue** */
|
|
9
|
+
this.CurrencyType = CurrencyType.EMPTY;
|
|
10
|
+
}
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CurrencySpanComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
12
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: CurrencySpanComponent, selector: "currency-span", inputs: { CurrencyValue: "CurrencyValue", CurrencyType: "CurrencyType" }, ngImport: i0, template: "<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>", dependencies: [{ kind: "pipe", type: i1.CurrencyPipe, name: "currency" }] }); }
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CurrencySpanComponent, decorators: [{
|
|
15
|
+
type: Component,
|
|
16
|
+
args: [{ selector: "currency-span", template: "<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>" }]
|
|
17
|
+
}], propDecorators: { CurrencyValue: [{
|
|
18
|
+
type: Input
|
|
19
|
+
}], CurrencyType: [{
|
|
20
|
+
type: Input
|
|
21
|
+
}] } });
|
|
22
|
+
/**
|
|
23
|
+
* @ignore
|
|
24
|
+
* Al momento non serve assolutamente a niente, ma per espandere eventualmente
|
|
25
|
+
* il componente in futuro lo lascio qui che schifo non fa.
|
|
26
|
+
*/
|
|
27
|
+
export var CurrencyType;
|
|
28
|
+
(function (CurrencyType) {
|
|
29
|
+
CurrencyType["EUR"] = "\u20AC";
|
|
30
|
+
CurrencyType["USD"] = "$";
|
|
31
|
+
CurrencyType["CAD"] = "$";
|
|
32
|
+
CurrencyType["EMPTY"] = "";
|
|
33
|
+
})(CurrencyType || (CurrencyType = {}));
|
|
34
34
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3ktc3Bhbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91dGlsaXR5LWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2N1cnJlbmN5LXNwYW4vY3VycmVuY3ktc3Bhbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91dGlsaXR5LWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2N1cnJlbmN5LXNwYW4vY3VycmVuY3ktc3Bhbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUVqRCx1SUFBdUk7QUFLdkksTUFBTSxPQUFPLHFCQUFxQjtJQUpsQztRQU9JLG1FQUFtRTtRQUMxRCxpQkFBWSxHQUFXLFlBQVksQ0FBQyxLQUFLLENBQUM7S0FDdEQ7K0dBTFkscUJBQXFCO21HQUFyQixxQkFBcUIsK0hDUmxDLHNRQUlPOzs0RkRJTSxxQkFBcUI7a0JBSmpDLFNBQVM7K0JBQ0ksZUFBZTs4QkFLaEIsYUFBYTtzQkFBckIsS0FBSztnQkFFRyxZQUFZO3NCQUFwQixLQUFLOztBQUdWOzs7O0dBSUc7QUFDSCxNQUFNLENBQU4sSUFBWSxZQUtYO0FBTEQsV0FBWSxZQUFZO0lBQ3BCLDhCQUFTLENBQUE7SUFDVCx5QkFBUyxDQUFBO0lBQ1QseUJBQVMsQ0FBQTtJQUNULDBCQUFVLENBQUE7QUFDZCxDQUFDLEVBTFcsWUFBWSxLQUFaLFlBQVksUUFLdkIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBbmd1bGFyXHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuLyoqIFF1ZXN0byBjb21wb25lbnRlIHJhcHByZXNlbnRhIHVuIGVsZW1lbnRvIHNwYW4gY2hlIGZvcm1hdHRhIGF1dG9tYXRpY2FtZW50ZSB1biAqKkN1cnJlbmN5VmFsdWUqKiBpbiBiYXNlIGFsIHN1byAqKkN1cnJlbmN5VHlwZSoqICovXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwiY3VycmVuY3ktc3BhblwiLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwiY3VycmVuY3ktc3Bhbi5jb21wb25lbnQuaHRtbFwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDdXJyZW5jeVNwYW5Db21wb25lbnQge1xyXG4gICAgLyoqIFZhbG9yZSBkYSBmb3JtYXR0YXJlICovXHJcbiAgICBASW5wdXQoKSBDdXJyZW5jeVZhbHVlOiBudW1iZXI7XHJcbiAgICAvKiogVGlwbyBpbiBiYXNlIGFsIHF1YWxlIGZvcm1hdHRhcmUgaWwgdmFsb3JlICoqQ3VycmVuY3lWYWx1ZSoqICovXHJcbiAgICBASW5wdXQoKSBDdXJyZW5jeVR5cGU6IHN0cmluZyA9IEN1cnJlbmN5VHlwZS5FTVBUWTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEBpZ25vcmVcclxuICogQWwgbW9tZW50byBub24gc2VydmUgYXNzb2x1dGFtZW50ZSBhIG5pZW50ZSwgbWEgcGVyIGVzcGFuZGVyZSBldmVudHVhbG1lbnRlIFxyXG4gKiBpbCBjb21wb25lbnRlIGluIGZ1dHVybyBsbyBsYXNjaW8gcXVpIGNoZSBzY2hpZm8gbm9uIGZhLlxyXG4gKi9cclxuZXhwb3J0IGVudW0gQ3VycmVuY3lUeXBlIHtcclxuICAgIEVVUiA9IFwi4oKsXCIsXHJcbiAgICBVU0QgPSBcIiRcIixcclxuICAgIENBRCA9IFwiJFwiLFxyXG4gICAgRU1QVFkgPSBcIlwiXHJcbn0iLCI8c3BhbiBbY2xhc3MudGV4dC1pbmZvXT1cIkN1cnJlbmN5VmFsdWUgPT0gMFwiXHJcbiAgICAgIFtjbGFzcy50ZXh0LXN1Y2Nlc3NdPVwiQ3VycmVuY3lWYWx1ZSA+IDBcIlxyXG4gICAgICBbY2xhc3MudGV4dC1kYW5nZXJdPVwiQ3VycmVuY3lWYWx1ZSA8IDBcIj5cclxuICAgIHt7Q3VycmVuY3lWYWx1ZSA/IChDdXJyZW5jeVZhbHVlIHwgY3VycmVuY3k6Jyc6Jyc6JzEuMi0yJzonaXQnKSA6ICcwLDAwJ319IHt7Q3VycmVuY3lUeXBlfX1cclxuPC9zcGFuPiJdfQ==
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
// Angular
|
|
2
|
-
import { Component } from "@angular/core";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
// Configurazioni
|
|
5
|
-
// Applicazione
|
|
6
|
-
export class OperationsMenuComponent {
|
|
7
|
-
constructor() { }
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
9
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
10
|
-
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
12
|
-
type: Component,
|
|
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>" }]
|
|
14
|
-
}], ctorParameters:
|
|
1
|
+
// Angular
|
|
2
|
+
import { Component } from "@angular/core";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
// Configurazioni
|
|
5
|
+
// Applicazione
|
|
6
|
+
export class OperationsMenuComponent {
|
|
7
|
+
constructor() { }
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OperationsMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", 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>" }); }
|
|
10
|
+
}
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OperationsMenuComponent, decorators: [{
|
|
12
|
+
type: Component,
|
|
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>" }]
|
|
14
|
+
}], ctorParameters: () => [] });
|
|
15
15
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BzLW1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXRpbGl0eS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9vcGVyYXRpb25zL29wcy1tZW51L29wcy1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvb3BlcmF0aW9ucy9vcHMtbWVudS9vcHMtbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFFLFNBQVMsRUFBUyxNQUFNLGVBQWUsQ0FBQzs7QUFFakQsaUJBQWlCO0FBRWpCLGVBQWU7QUFNZixNQUFNLE9BQU8sdUJBQXVCO0lBQ2hDLGdCQUFnQixDQUFDOytHQURSLHVCQUF1QjttR0FBdkIsdUJBQXVCLGdEQ1hwQyxvUUFRTTs7NEZER08sdUJBQXVCO2tCQUpuQyxTQUFTOytCQUNJLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBbmd1bGFyXHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuLy8gQ29uZmlndXJhemlvbmlcclxuXHJcbi8vIEFwcGxpY2F6aW9uZVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogXCJvcHMtbWVudVwiLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwiLi9vcHMtbWVudS5jb21wb25lbnQuaHRtbFwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBPcGVyYXRpb25zTWVudUNvbXBvbmVudCB7XHJcbiAgICBjb25zdHJ1Y3RvcigpIHsgfVxyXG59IiwiPCEtLSBXaWRnZXQgT3BlcmF6aW9uaSAyLjAgLS0+XHJcbjxkaXYgY2xhc3M9XCJjYXJkIGFwcC1tYXJnaW4tYm90dG9tLTE1XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXJcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtdXBwZXJjYXNlXCI+T3BlcmF6aW9uaTwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdj5cclxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
// Angular
|
|
2
|
-
import { Component, Input } from "@angular/core";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/material/expansion";
|
|
5
|
-
// Configurazioni
|
|
6
|
-
// Applicazione
|
|
7
|
-
export class OperationsMenuCategoryComponent {
|
|
8
|
-
constructor() {
|
|
9
|
-
this.Name = "Nuova categoria";
|
|
10
|
-
this.Expanded = false;
|
|
11
|
-
}
|
|
12
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
13
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
14
|
-
}
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
16
|
-
type: Component,
|
|
17
|
-
args: [{ selector: "ops-menu-category", template: "<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>" }]
|
|
18
|
-
}], ctorParameters:
|
|
19
|
-
type: Input
|
|
20
|
-
}], Expanded: [{
|
|
21
|
-
type: Input
|
|
22
|
-
}] } });
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
// Angular
|
|
2
|
+
import { Component, Input } from "@angular/core";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/material/expansion";
|
|
5
|
+
// Configurazioni
|
|
6
|
+
// Applicazione
|
|
7
|
+
export class OperationsMenuCategoryComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.Name = "Nuova categoria";
|
|
10
|
+
this.Expanded = false;
|
|
11
|
+
}
|
|
12
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OperationsMenuCategoryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
13
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: OperationsMenuCategoryComponent, selector: "ops-menu-category", inputs: { Name: "Name", Expanded: "Expanded" }, ngImport: i0, template: "<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>", dependencies: [{ kind: "directive", type: i1.MatAccordion, selector: "mat-accordion", inputs: ["multi", "hideToggle", "displayMode", "togglePosition"], exportAs: ["matAccordion"] }, { kind: "component", type: i1.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["disabled", "expanded", "hideToggle", "togglePosition"], outputs: ["opened", "closed", "expandedChange", "afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { kind: "component", type: i1.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["tabIndex", "expandedHeight", "collapsedHeight"] }, { kind: "directive", type: i1.MatExpansionPanelTitle, selector: "mat-panel-title" }] }); }
|
|
14
|
+
}
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OperationsMenuCategoryComponent, decorators: [{
|
|
16
|
+
type: Component,
|
|
17
|
+
args: [{ selector: "ops-menu-category", template: "<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>" }]
|
|
18
|
+
}], ctorParameters: () => [], propDecorators: { Name: [{
|
|
19
|
+
type: Input
|
|
20
|
+
}], Expanded: [{
|
|
21
|
+
type: Input
|
|
22
|
+
}] } });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BzLW1lbnUtY2F0ZWdvcnkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXRpbGl0eS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9vcGVyYXRpb25zL29wcy1tZW51LWNhdGVnb3J5L29wcy1tZW51LWNhdGVnb3J5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvb3BlcmF0aW9ucy9vcHMtbWVudS1jYXRlZ29yeS9vcHMtbWVudS1jYXRlZ29yeS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUVqRCxpQkFBaUI7QUFFakIsZUFBZTtBQU1mLE1BQU0sT0FBTywrQkFBK0I7SUFJeEM7UUFIUyxTQUFJLEdBQVcsaUJBQWlCLENBQUM7UUFDakMsYUFBUSxHQUFZLEtBQUssQ0FBQztJQUVuQixDQUFDOytHQUpSLCtCQUErQjttR0FBL0IsK0JBQStCLHlHQ1g1QywyZEFTZ0I7OzRGREVILCtCQUErQjtrQkFKM0MsU0FBUzsrQkFDSSxtQkFBbUI7d0RBSXBCLElBQUk7c0JBQVosS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhclxyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8vIENvbmZpZ3VyYXppb25pXHJcblxyXG4vLyBBcHBsaWNhemlvbmVcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwib3BzLW1lbnUtY2F0ZWdvcnlcIixcclxuICAgIHRlbXBsYXRlVXJsOiBcIi4vb3BzLW1lbnUtY2F0ZWdvcnkuY29tcG9uZW50Lmh0bWxcIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgT3BlcmF0aW9uc01lbnVDYXRlZ29yeUNvbXBvbmVudCB7XHJcbiAgICBASW5wdXQoKSBOYW1lOiBzdHJpbmcgPSBcIk51b3ZhIGNhdGVnb3JpYVwiO1xyXG4gICAgQElucHV0KCkgRXhwYW5kZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHsgfVxyXG59IiwiPG1hdC1hY2NvcmRpb24+XHJcbiAgICA8bWF0LWV4cGFuc2lvbi1wYW5lbCBbZXhwYW5kZWRdPVwiRXhwYW5kZWRcIiAob3BlbmVkKT1cIkV4cGFuZGVkID0gdHJ1ZVwiIChjbG9zZWQpPVwiRXhwYW5kZWQgPSBmYWxzZVwiPlxyXG4gICAgICAgIDwhLS1IZWFkZXItLT5cclxuICAgICAgICA8bWF0LWV4cGFuc2lvbi1wYW5lbC1oZWFkZXIgc3R5bGU9XCJtYXgtaGVpZ2h0OiA0OHB4ICFpbXBvcnRhbnRcIj5cclxuICAgICAgICAgICAgPG1hdC1wYW5lbC10aXRsZSBjbGFzcz1cImFwcC1uby1zZWxlY3Rpb25cIj57e05hbWV9fTwvbWF0LXBhbmVsLXRpdGxlPlxyXG4gICAgICAgIDwvbWF0LWV4cGFuc2lvbi1wYW5lbC1oZWFkZXI+XHJcbiAgICAgICAgPCEtLU9wZXJhdGlvbnMtLT5cclxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICA8L21hdC1leHBhbnNpb24tcGFuZWw+XHJcbjwvbWF0LWFjY29yZGlvbj4iXX0=
|
package/esm2022/lib/components/operations/ops-menu-operation/ops-menu-operation.component.mjs
CHANGED
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
// Angular
|
|
2
|
-
import { Component, EventEmitter, Input, Output } from "@angular/core";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
import * as i2 from "@angular/router";
|
|
6
|
-
export class OperationsMenuOperationComponent {
|
|
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
|
|
11
|
-
this.onClick = new EventEmitter();
|
|
12
|
-
}
|
|
13
|
-
emitClick() {
|
|
14
|
-
this.onClick.emit();
|
|
15
|
-
}
|
|
16
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
17
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
18
|
-
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
20
|
-
type: Component,
|
|
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:
|
|
23
|
-
type: Input
|
|
24
|
-
}], onClick: [{
|
|
25
|
-
type: Output
|
|
26
|
-
}] } });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
// Angular
|
|
2
|
+
import { Component, EventEmitter, Input, Output } from "@angular/core";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@angular/router";
|
|
6
|
+
export class OperationsMenuOperationComponent {
|
|
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
|
|
11
|
+
this.onClick = new EventEmitter();
|
|
12
|
+
}
|
|
13
|
+
emitClick() {
|
|
14
|
+
this.onClick.emit();
|
|
15
|
+
}
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OperationsMenuOperationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
17
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", 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", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
|
|
18
|
+
}
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OperationsMenuOperationComponent, decorators: [{
|
|
20
|
+
type: Component,
|
|
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: () => [], propDecorators: { RouterLink: [{
|
|
23
|
+
type: Input
|
|
24
|
+
}], onClick: [{
|
|
25
|
+
type: Output
|
|
26
|
+
}] } });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BzLW1lbnUtb3BlcmF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvb3BlcmF0aW9ucy9vcHMtbWVudS1vcGVyYXRpb24vb3BzLW1lbnUtb3BlcmF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvb3BlcmF0aW9ucy9vcHMtbWVudS1vcGVyYXRpb24vb3BzLW1lbnUtb3BlcmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFVBQVU7QUFDVixPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBTXZFLE1BQU0sT0FBTyxnQ0FBZ0M7SUFNekM7UUFMQSwwREFBMEQ7UUFDakQsZUFBVSxHQUFVLElBQUksQ0FBQztRQUNsQyx1REFBdUQ7UUFDN0MsWUFBTyxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO0lBRWpELENBQUM7SUFFakIsU0FBUztRQUNMLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEIsQ0FBQzsrR0FWUSxnQ0FBZ0M7bUdBQWhDLGdDQUFnQyxpSUNQN0MsbWNBT2M7OzRGREFELGdDQUFnQztrQkFKNUMsU0FBUzsrQkFDSSxvQkFBb0I7d0RBS3JCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUksT0FBTztzQkFBaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFuZ3VsYXJcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogXCJvcHMtbWVudS1vcGVyYXRpb25cIixcclxuICAgIHRlbXBsYXRlVXJsOiBcIi4vb3BzLW1lbnUtb3BlcmF0aW9uLmNvbXBvbmVudC5odG1sXCJcclxufSlcclxuZXhwb3J0IGNsYXNzIE9wZXJhdGlvbnNNZW51T3BlcmF0aW9uQ29tcG9uZW50IHtcclxuICAgIC8vIFNlIHZhbG9yaXp6YXRvLCBub24gdmVycsOgIHBpw7kgZW1lc3NvIGwnb3V0cHV0IFwib25DbGlja1wiXHJcbiAgICBASW5wdXQoKSBSb3V0ZXJMaW5rOiBhbnlbXSA9IG51bGw7XHJcbiAgICAvLyBQYXNzYWNhcnRlIHBlciBpbCB2ZXJvIGV2ZW50byBcImNsaWNrXCIgZGVsIGNvbXBvbmVudGVcclxuICAgIEBPdXRwdXQoKSBvbkNsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgICBlbWl0Q2xpY2soKSB7XHJcbiAgICAgICAgdGhpcy5vbkNsaWNrLmVtaXQoKTtcclxuICAgIH1cclxufSIsIjxkaXYgY2xhc3M9XCJhcHAtcGFkZGluZy1sZWZ0LTEwXCI+XHJcbiAgICA8YSAqbmdJZj1cIiFSb3V0ZXJMaW5rXCIgY2xhc3M9XCJhcHAtbGluayBhcHAtaW5saW5lLXdyYXBwZWRcIiAoY2xpY2spPVwiZW1pdENsaWNrKClcIj48bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiQ29udGVudDtcIj48L25nLWNvbnRhaW5lcj48L2E+XHJcbiAgICA8YSAqbmdJZj1cIiEhUm91dGVyTGlua1wiIGNsYXNzPVwiYXBwLWxpbmsgYXBwLWlubGluZS13cmFwcGVkXCIgW3JvdXRlckxpbmtdPVwiUm91dGVyTGlua1wiPjxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJDb250ZW50O1wiPjwvbmctY29udGFpbmVyPjwvYT5cclxuPC9kaXY+XHJcblxyXG48bmctdGVtcGxhdGUgI0NvbnRlbnQ+XHJcbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbjwvbmctdGVtcGxhdGU+Il19
|
|
@@ -1,51 +1,51 @@
|
|
|
1
|
-
// Angular
|
|
2
|
-
import { Component, Input } from "@angular/core";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "ngx-toastr";
|
|
5
|
-
import * as i2 from "@esfaenza/extensions";
|
|
6
|
-
import * as i3 from "@angular/common";
|
|
7
|
-
import * as i4 from "@angular/material/tooltip";
|
|
8
|
-
/** Questo componente rappresenta un elemento span che tronca un **Text** in base ad una **MaxLength** */
|
|
9
|
-
export class ShortenSpanComponent {
|
|
10
|
-
/** @ignore */
|
|
11
|
-
constructor(toastrService, clipboardService) {
|
|
12
|
-
this.toastrService = toastrService;
|
|
13
|
-
this.clipboardService = clipboardService;
|
|
14
|
-
/** Mostra **Text** con stile grassetto */
|
|
15
|
-
this.Bold = false;
|
|
16
|
-
/** Lunghezza massima del testo, prima di venire troncato */
|
|
17
|
-
this.MaxLength = 999;
|
|
18
|
-
/** Abilita la possibilita di copiare **Text** col tasto sinistro del mouse */
|
|
19
|
-
this.ClipboardCopy = false;
|
|
20
|
-
/** Testo da mostrare nel tooltip di material, quando ha valore diverso da null */
|
|
21
|
-
this.ShowTooltip = null;
|
|
22
|
-
}
|
|
23
|
-
/** @ignore */
|
|
24
|
-
ngOnInit() {
|
|
25
|
-
this.ShowTooltip = this.Text?.length >= this.MaxLength ? this.Text : null;
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Copia un valore nella clipboard
|
|
29
|
-
*
|
|
30
|
-
* @param {string} value Valore da copiare nella clipboard
|
|
31
|
-
*/
|
|
32
|
-
copyToClipboard(value) {
|
|
33
|
-
this.clipboardService.copyTextToClipboard(value);
|
|
34
|
-
this.toastrService.info('Testo copiato!', null, { positionClass: 'toast-top-center' });
|
|
35
|
-
}
|
|
36
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
37
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
38
|
-
}
|
|
39
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
40
|
-
type: Component,
|
|
41
|
-
args: [{ selector: "shorten-span", template: "<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>", 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}\n"] }]
|
|
42
|
-
}], ctorParameters:
|
|
43
|
-
type: Input
|
|
44
|
-
}], Text: [{
|
|
45
|
-
type: Input
|
|
46
|
-
}], MaxLength: [{
|
|
47
|
-
type: Input
|
|
48
|
-
}], ClipboardCopy: [{
|
|
49
|
-
type: Input
|
|
50
|
-
}] } });
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
// Angular
|
|
2
|
+
import { Component, Input } from "@angular/core";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "ngx-toastr";
|
|
5
|
+
import * as i2 from "@esfaenza/extensions";
|
|
6
|
+
import * as i3 from "@angular/common";
|
|
7
|
+
import * as i4 from "@angular/material/tooltip";
|
|
8
|
+
/** Questo componente rappresenta un elemento span che tronca un **Text** in base ad una **MaxLength** */
|
|
9
|
+
export class ShortenSpanComponent {
|
|
10
|
+
/** @ignore */
|
|
11
|
+
constructor(toastrService, clipboardService) {
|
|
12
|
+
this.toastrService = toastrService;
|
|
13
|
+
this.clipboardService = clipboardService;
|
|
14
|
+
/** Mostra **Text** con stile grassetto */
|
|
15
|
+
this.Bold = false;
|
|
16
|
+
/** Lunghezza massima del testo, prima di venire troncato */
|
|
17
|
+
this.MaxLength = 999;
|
|
18
|
+
/** Abilita la possibilita di copiare **Text** col tasto sinistro del mouse */
|
|
19
|
+
this.ClipboardCopy = false;
|
|
20
|
+
/** Testo da mostrare nel tooltip di material, quando ha valore diverso da null */
|
|
21
|
+
this.ShowTooltip = null;
|
|
22
|
+
}
|
|
23
|
+
/** @ignore */
|
|
24
|
+
ngOnInit() {
|
|
25
|
+
this.ShowTooltip = this.Text?.length >= this.MaxLength ? this.Text : null;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Copia un valore nella clipboard
|
|
29
|
+
*
|
|
30
|
+
* @param {string} value Valore da copiare nella clipboard
|
|
31
|
+
*/
|
|
32
|
+
copyToClipboard(value) {
|
|
33
|
+
this.clipboardService.copyTextToClipboard(value);
|
|
34
|
+
this.toastrService.info('Testo copiato!', null, { positionClass: 'toast-top-center' });
|
|
35
|
+
}
|
|
36
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ShortenSpanComponent, deps: [{ token: i1.ToastrService }, { token: i2.ClipboardService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
37
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ShortenSpanComponent, selector: "shorten-span", inputs: { Bold: "Bold", Text: "Text", MaxLength: "MaxLength", ClipboardCopy: "ClipboardCopy" }, ngImport: i0, template: "<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>", 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}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] }); }
|
|
38
|
+
}
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ShortenSpanComponent, decorators: [{
|
|
40
|
+
type: Component,
|
|
41
|
+
args: [{ selector: "shorten-span", template: "<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>", 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}\n"] }]
|
|
42
|
+
}], ctorParameters: () => [{ type: i1.ToastrService }, { type: i2.ClipboardService }], propDecorators: { Bold: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], Text: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], MaxLength: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}], ClipboardCopy: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}] } });
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvcnRlbi1zcGFuLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc2hvcnRlbi1zcGFuL3Nob3J0ZW4tc3Bhbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91dGlsaXR5LWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3Nob3J0ZW4tc3Bhbi9zaG9ydGVuLXNwYW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFRakQseUdBQXlHO0FBTXpHLE1BQU0sT0FBTyxvQkFBb0I7SUFVN0IsY0FBYztJQUNkLFlBQW9CLGFBQTRCLEVBQVUsZ0JBQWtDO1FBQXhFLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQVUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQVY1RiwwQ0FBMEM7UUFDakMsU0FBSSxHQUFZLEtBQUssQ0FBQztRQUcvQiw0REFBNEQ7UUFDbkQsY0FBUyxHQUFXLEdBQUcsQ0FBQztRQUNqQyw4RUFBOEU7UUFDckUsa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFLeEMsa0ZBQWtGO1FBQzNFLGdCQUFXLEdBQUcsSUFBSSxDQUFDO0lBSHNFLENBQUM7SUFLakcsY0FBYztJQUNkLFFBQVE7UUFDSixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUM5RSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGVBQWUsQ0FBQyxLQUFhO1FBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsRUFBRSxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDO0lBQzNGLENBQUM7K0dBN0JRLG9CQUFvQjttR0FBcEIsb0JBQW9CLG9KQ2ZqQyw2UUFFTzs7NEZEYU0sb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNJLGNBQWM7aUhBTWYsSUFBSTtzQkFBWixLQUFLO2dCQUVHLElBQUk7c0JBQVosS0FBSztnQkFFRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLGFBQWE7c0JBQXJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBbmd1bGFyXHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuLy8gQ29uZmlndXJhemlvbmlcclxuaW1wb3J0IHsgQ2xpcGJvYXJkU2VydmljZSB9IGZyb20gXCJAZXNmYWVuemEvZXh0ZW5zaW9uc1wiO1xyXG5cclxuLy8gRGlyZXR0aXZlLCBDb21wb25lbnRpLCBMaWJyZXJpZVxyXG5pbXBvcnQgeyBUb2FzdHJTZXJ2aWNlIH0gZnJvbSBcIm5neC10b2FzdHJcIjtcclxuXHJcbi8qKiBRdWVzdG8gY29tcG9uZW50ZSByYXBwcmVzZW50YSB1biBlbGVtZW50byBzcGFuIGNoZSB0cm9uY2EgdW4gKipUZXh0KiogaW4gYmFzZSBhZCB1bmEgKipNYXhMZW5ndGgqKiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiBcInNob3J0ZW4tc3BhblwiLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwic2hvcnRlbi1zcGFuLmNvbXBvbmVudC5odG1sXCIsXHJcbiAgICBzdHlsZVVybHM6IFtcIi4vc2hvcnRlbi1zcGFuLmNvbXBvbmVudC5zY3NzXCJdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaG9ydGVuU3BhbkNvbXBvbmVudCB7XHJcbiAgICAvKiogTW9zdHJhICoqVGV4dCoqIGNvbiBzdGlsZSBncmFzc2V0dG8gKi9cclxuICAgIEBJbnB1dCgpIEJvbGQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIC8qKiBUZXN0byBkYSBtb3N0cmFyZSBuZWxsbyBzcGFuICovXHJcbiAgICBASW5wdXQoKSBUZXh0OiBzdHJpbmc7XHJcbiAgICAvKiogTHVuZ2hlenphIG1hc3NpbWEgZGVsIHRlc3RvLCBwcmltYSBkaSB2ZW5pcmUgdHJvbmNhdG8gKi9cclxuICAgIEBJbnB1dCgpIE1heExlbmd0aDogbnVtYmVyID0gOTk5O1xyXG4gICAgLyoqIEFiaWxpdGEgbGEgcG9zc2liaWxpdGEgZGkgY29waWFyZSAqKlRleHQqKiBjb2wgdGFzdG8gc2luaXN0cm8gZGVsIG1vdXNlICovXHJcbiAgICBASW5wdXQoKSBDbGlwYm9hcmRDb3B5OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgLyoqIEBpZ25vcmUgKi9cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgdG9hc3RyU2VydmljZTogVG9hc3RyU2VydmljZSwgcHJpdmF0ZSBjbGlwYm9hcmRTZXJ2aWNlOiBDbGlwYm9hcmRTZXJ2aWNlKSB7IH1cclxuXHJcbiAgICAvKiogVGVzdG8gZGEgbW9zdHJhcmUgbmVsIHRvb2x0aXAgZGkgbWF0ZXJpYWwsIHF1YW5kbyBoYSB2YWxvcmUgZGl2ZXJzbyBkYSBudWxsICovXHJcbiAgICBwdWJsaWMgU2hvd1Rvb2x0aXAgPSBudWxsO1xyXG5cclxuICAgIC8qKiBAaWdub3JlICovXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuICAgICAgICB0aGlzLlNob3dUb29sdGlwID0gdGhpcy5UZXh0Py5sZW5ndGggPj0gdGhpcy5NYXhMZW5ndGggPyB0aGlzLlRleHQgOiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ29waWEgdW4gdmFsb3JlIG5lbGxhIGNsaXBib2FyZFxyXG4gICAgICogXHJcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gdmFsdWUgVmFsb3JlIGRhIGNvcGlhcmUgbmVsbGEgY2xpcGJvYXJkXHJcbiAgICAgKi9cclxuICAgIGNvcHlUb0NsaXBib2FyZCh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5jbGlwYm9hcmRTZXJ2aWNlLmNvcHlUZXh0VG9DbGlwYm9hcmQodmFsdWUpO1xyXG4gICAgICAgIHRoaXMudG9hc3RyU2VydmljZS5pbmZvKCdUZXN0byBjb3BpYXRvIScsIG51bGwsIHsgcG9zaXRpb25DbGFzczogJ3RvYXN0LXRvcC1jZW50ZXInIH0pO1xyXG4gICAgfVxyXG59IiwiPHNwYW4gW2NsYXNzLnV0aWxzLWNvcHldPVwiQ2xpcGJvYXJkQ29weVwiIChjbGljayk9XCJDbGlwYm9hcmRDb3B5ID8gY29weVRvQ2xpcGJvYXJkKFRleHQpIDogbnVsbFwiICpuZ0lmPVwiVGV4dFwiIFtjbGFzcy51dGlscy1ib2xkXT1cIkJvbGRcIiBbbWF0VG9vbHRpcF09XCJTaG93VG9vbHRpcFwiPlxyXG4gICAge3tUZXh0Lmxlbmd0aCA+IE1heExlbmd0aCArIDMgPyBUZXh0LnN1YnN0cigwLCBNYXhMZW5ndGgpICsgXCIuLi5cIiA6IFRleHR9fVxyXG48L3NwYW4+Il19
|
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
// Angular
|
|
2
|
-
import { Component, Input, ViewChild, ViewEncapsulation } from "@angular/core";
|
|
3
|
-
import { MatMenuTrigger } from "@angular/material/menu";
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/common";
|
|
6
|
-
import * as i2 from "@angular/material/menu";
|
|
7
|
-
/** Questo componente si occupa di creare un context-menu con **Options** definite dal programmatore, che innescano una funzione quando selezionate */
|
|
8
|
-
export class SimpleDropdownComponent {
|
|
9
|
-
constructor() {
|
|
10
|
-
/** Opzioni da mostrare nel context-menu, composte da un campo Nome ed uno Operazione */
|
|
11
|
-
this.Options = [];
|
|
12
|
-
/** Posizione di Default del context-menu, evitare di smanazzare */
|
|
13
|
-
this.MenuPosition = { x: '0', y: '0' };
|
|
14
|
-
}
|
|
15
|
-
/** Serve per far apparire il menu dove definito da **MenuPosition**, facendo uso di **matMenuTrigger** */
|
|
16
|
-
Show(event) {
|
|
17
|
-
this.MenuPosition.x = event.clientX + 'px';
|
|
18
|
-
this.MenuPosition.y = event.clientY + 'px';
|
|
19
|
-
this.matMenuTrigger.openMenu();
|
|
20
|
-
return false;
|
|
21
|
-
}
|
|
22
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
23
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
24
|
-
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
26
|
-
type: Component,
|
|
27
|
-
args: [{ selector: "simple-dropdown", encapsulation: ViewEncapsulation.None, template: "<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>", 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}.mat-menu-content:not(:empty){padding:0!important}.mat-menu-panel{min-height:unset!important}.mat-menu-item{background-color:#fff!important;height:38px!important;line-height:38px!important}\n"] }]
|
|
28
|
-
}], propDecorators: { matMenuTrigger: [{
|
|
29
|
-
type: ViewChild,
|
|
30
|
-
args: [MatMenuTrigger, { static: true }]
|
|
31
|
-
}], Options: [{
|
|
32
|
-
type: Input
|
|
33
|
-
}] } });
|
|
1
|
+
// Angular
|
|
2
|
+
import { Component, Input, ViewChild, ViewEncapsulation } from "@angular/core";
|
|
3
|
+
import { MatMenuTrigger } from "@angular/material/menu";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
import * as i2 from "@angular/material/menu";
|
|
7
|
+
/** Questo componente si occupa di creare un context-menu con **Options** definite dal programmatore, che innescano una funzione quando selezionate */
|
|
8
|
+
export class SimpleDropdownComponent {
|
|
9
|
+
constructor() {
|
|
10
|
+
/** Opzioni da mostrare nel context-menu, composte da un campo Nome ed uno Operazione */
|
|
11
|
+
this.Options = [];
|
|
12
|
+
/** Posizione di Default del context-menu, evitare di smanazzare */
|
|
13
|
+
this.MenuPosition = { x: '0', y: '0' };
|
|
14
|
+
}
|
|
15
|
+
/** Serve per far apparire il menu dove definito da **MenuPosition**, facendo uso di **matMenuTrigger** */
|
|
16
|
+
Show(event) {
|
|
17
|
+
this.MenuPosition.x = event.clientX + 'px';
|
|
18
|
+
this.MenuPosition.y = event.clientY + 'px';
|
|
19
|
+
this.matMenuTrigger.openMenu();
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SimpleDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
23
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SimpleDropdownComponent, selector: "simple-dropdown", inputs: { Options: "Options" }, viewQueries: [{ propertyName: "matMenuTrigger", first: true, predicate: MatMenuTrigger, descendants: true, static: true }], ngImport: i0, template: "<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>", 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}.mat-menu-content:not(:empty){padding:0!important}.mat-menu-panel{min-height:unset!important}.mat-menu-item{background-color:#fff!important;height:38px!important;line-height:38px!important}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i2.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i2.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
24
|
+
}
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SimpleDropdownComponent, decorators: [{
|
|
26
|
+
type: Component,
|
|
27
|
+
args: [{ selector: "simple-dropdown", encapsulation: ViewEncapsulation.None, template: "<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>", 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}.mat-menu-content:not(:empty){padding:0!important}.mat-menu-panel{min-height:unset!important}.mat-menu-item{background-color:#fff!important;height:38px!important;line-height:38px!important}\n"] }]
|
|
28
|
+
}], propDecorators: { matMenuTrigger: [{
|
|
29
|
+
type: ViewChild,
|
|
30
|
+
args: [MatMenuTrigger, { static: true }]
|
|
31
|
+
}], Options: [{
|
|
32
|
+
type: Input
|
|
33
|
+
}] } });
|
|
34
34
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxpdHktY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc2ltcGxlLWRyb3Bkb3duL3NpbXBsZS1kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91dGlsaXR5LWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3NpbXBsZS1kcm9wZG93bi9zaW1wbGUtZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7QUFLeEQsc0pBQXNKO0FBT3RKLE1BQU0sT0FBTyx1QkFBdUI7SUFOcEM7UUFTSSx3RkFBd0Y7UUFDL0UsWUFBTyxHQUFxQixFQUFFLENBQUM7UUFDeEMsbUVBQW1FO1FBQzVELGlCQUFZLEdBQUcsRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQTtLQVMzQztJQVJHLDBHQUEwRztJQUNuRyxJQUFJLENBQUMsS0FBaUI7UUFDekIsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDM0MsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDM0MsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUUvQixPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDOytHQWRRLHVCQUF1QjttR0FBdkIsdUJBQXVCLHVJQUVyQixjQUFjLDhEQ2hCN0Isb1pBVVc7OzRGRElFLHVCQUF1QjtrQkFObkMsU0FBUzsrQkFDSSxpQkFBaUIsaUJBR1osaUJBQWlCLENBQUMsSUFBSTs4QkFJUSxjQUFjO3NCQUExRCxTQUFTO3VCQUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBRWxDLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFuZ3VsYXJcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IE1hdE1lbnVUcmlnZ2VyIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL21lbnVcIjtcclxuXHJcbi8vIE1vZGVsc1xyXG5pbXBvcnQgeyBEcm9wZG93bk9wdGlvbiB9IGZyb20gXCIuLi8uLi9tb2RlbHMvRHJvcGRvd25PcHRpb25cIjtcclxuXHJcbi8qKiBRdWVzdG8gY29tcG9uZW50ZSBzaSBvY2N1cGEgZGkgY3JlYXJlIHVuIGNvbnRleHQtbWVudSBjb24gKipPcHRpb25zKiogZGVmaW5pdGUgZGFsIHByb2dyYW1tYXRvcmUsIGNoZSBpbm5lc2Nhbm8gdW5hIGZ1bnppb25lIHF1YW5kbyBzZWxlemlvbmF0ZSAqL1xyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiBcInNpbXBsZS1kcm9wZG93blwiLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwic2ltcGxlLWRyb3Bkb3duLmNvbXBvbmVudC5odG1sXCIsXHJcbiAgICBzdHlsZVVybHM6IFtcIi4vc2ltcGxlLWRyb3Bkb3duLmNvbXBvbmVudC5zY3NzXCJdLFxyXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2ltcGxlRHJvcGRvd25Db21wb25lbnQge1xyXG4gICAgLyoqIFRyaWdnZXIgZGVsIE1hdE1lbnUsIHBlciBwb3RlciBkZWNpZGVyZSBxdWFuZG8gbW9zdHJhcmUgaWwgbWVudSBkYSBjb2RpY2UgKi9cclxuICAgIEBWaWV3Q2hpbGQoTWF0TWVudVRyaWdnZXIsIHsgc3RhdGljOiB0cnVlIH0pIG1hdE1lbnVUcmlnZ2VyOiBNYXRNZW51VHJpZ2dlcjtcclxuICAgIC8qKiBPcHppb25pIGRhIG1vc3RyYXJlIG5lbCBjb250ZXh0LW1lbnUsIGNvbXBvc3RlIGRhIHVuIGNhbXBvIE5vbWUgZWQgdW5vIE9wZXJhemlvbmUgKi9cclxuICAgIEBJbnB1dCgpIE9wdGlvbnM6IERyb3Bkb3duT3B0aW9uW10gPSBbXTtcclxuICAgIC8qKiBQb3NpemlvbmUgZGkgRGVmYXVsdCBkZWwgY29udGV4dC1tZW51LCBldml0YXJlIGRpIHNtYW5henphcmUgKi9cclxuICAgIHB1YmxpYyBNZW51UG9zaXRpb24gPSB7IHg6ICcwJywgeTogJzAnIH1cclxuICAgIC8qKiBTZXJ2ZSBwZXIgZmFyIGFwcGFyaXJlIGlsIG1lbnUgZG92ZSBkZWZpbml0byBkYSAqKk1lbnVQb3NpdGlvbioqLCBmYWNlbmRvIHVzbyBkaSAqKm1hdE1lbnVUcmlnZ2VyKiogKi9cclxuICAgIHB1YmxpYyBTaG93KGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICAgICAgdGhpcy5NZW51UG9zaXRpb24ueCA9IGV2ZW50LmNsaWVudFggKyAncHgnO1xyXG4gICAgICAgIHRoaXMuTWVudVBvc2l0aW9uLnkgPSBldmVudC5jbGllbnRZICsgJ3B4JztcclxuICAgICAgICB0aGlzLm1hdE1lbnVUcmlnZ2VyLm9wZW5NZW51KCk7XHJcblxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxufSIsIjxkaXYgc3R5bGU9XCJ2aXNpYmlsaXR5OiBoaWRkZW47IHBvc2l0aW9uOiBmaXhlZDtcIiBcclxuICAgICBbc3R5bGUubGVmdF09XCJNZW51UG9zaXRpb24ueFwiIFxyXG4gICAgIFtzdHlsZS50b3BdPVwiTWVudVBvc2l0aW9uLnlcIiBcclxuICAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwicmlnaHRNZW51XCI+XHJcbjwvZGl2PlxyXG5cclxuPG1hdC1tZW51ICNyaWdodE1lbnU9XCJtYXRNZW51XCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIE9wdGlvbnNcIj5cclxuICAgICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cIml0ZW0uZXhlY3V0ZSgpXCI+e3tpdGVtLmxhYmVsfX08L2J1dHRvbj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG48L21hdC1tZW51PiJdfQ==
|