@provoly/hypervisor 1.4.62 → 1.4.64
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/src/lib/event/detail/event-detail.component.mjs +11 -3
- package/esm2022/src/lib/event/detail/event-details-tooltip.component.mjs +12 -8
- package/esm2022/src/lib/event/filters/date/date-filter.component.mjs +4 -1
- package/esm2022/src/lib/general/last-events/last-events.component.mjs +13 -4
- package/fesm2022/provoly-hypervisor.mjs +33 -9
- package/fesm2022/provoly-hypervisor.mjs.map +1 -1
- package/package.json +1 -1
- package/src/lib/event/detail/event-detail.component.d.ts +1 -0
- package/src/lib/event/detail/event-details-tooltip.component.d.ts +4 -1
- package/src/lib/general/last-events/last-events.component.d.ts +5 -2
- package/styles/components/_o-hvy-event-detail.scss +3 -1
- package/styles/components/_o-hvy-last-events.scss +19 -0
|
@@ -1,20 +1,24 @@
|
|
|
1
1
|
import { PRY_DIALOG_DATA } from '@provoly/dashboard';
|
|
2
2
|
import { Component, Inject } from '@angular/core';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "
|
|
5
|
-
import * as i2 from "
|
|
4
|
+
import * as i1 from "@provoly/dashboard";
|
|
5
|
+
import * as i2 from "../../general/last-events/last-events.component";
|
|
6
6
|
export class HvyEventDetailsTooltipComponent {
|
|
7
|
-
constructor(data) {
|
|
7
|
+
constructor(dialog, data) {
|
|
8
|
+
this.dialog = dialog;
|
|
8
9
|
this.data = data;
|
|
9
10
|
}
|
|
10
|
-
|
|
11
|
-
|
|
11
|
+
closeDialog($event) {
|
|
12
|
+
this.dialog.close($event);
|
|
13
|
+
}
|
|
14
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: HvyEventDetailsTooltipComponent, deps: [{ token: i1.PryDialogRef }, { token: PRY_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
15
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: HvyEventDetailsTooltipComponent, selector: "hvy-event-detail-tooltip", ngImport: i0, template: "@if ((data.events && data.events.length > 0) || (data.services && data.services.length > 0)){\n <div class=\"o-hvy-event-detail-tooltip\">\n <hvy-last-events\n [events]=\"data.events ?? []\"\n [services]=\"data.services ?? []\"\n (closeDialogEmit)=\"closeDialog($event)\"\n [closeButton]=\"true\"\n >\n </hvy-last-events>\n </div>\n} @else {\n <div class=\"o-hvy-event-detail-tooltip o-hvy-event-detail-tooltip__no-data\">\n {{ '@chh.event.noEvents' | i18n }}\n <div class=\"o-modal__equipment__close\">\n <button class=\"\" (click)=\"closeDialog(true)\">\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n </div>\n </div>\n}\n", dependencies: [{ kind: "component", type: i1.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: i2.LastEventsComponent, selector: "hvy-last-events", inputs: ["services", "events", "closeButton"], outputs: ["closeDialogEmit"] }, { kind: "pipe", type: i1.I18nPipe, name: "i18n" }] }); }
|
|
12
16
|
}
|
|
13
17
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: HvyEventDetailsTooltipComponent, decorators: [{
|
|
14
18
|
type: Component,
|
|
15
|
-
args: [{ selector: 'hvy-event-detail-tooltip', template: "@if ((data.events && data.events.length > 0) || (data.services && data.services.length > 0)){\n <div class=\"o-hvy-event-detail-tooltip\">\n <hvy-last-events
|
|
16
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
19
|
+
args: [{ selector: 'hvy-event-detail-tooltip', template: "@if ((data.events && data.events.length > 0) || (data.services && data.services.length > 0)){\n <div class=\"o-hvy-event-detail-tooltip\">\n <hvy-last-events\n [events]=\"data.events ?? []\"\n [services]=\"data.services ?? []\"\n (closeDialogEmit)=\"closeDialog($event)\"\n [closeButton]=\"true\"\n >\n </hvy-last-events>\n </div>\n} @else {\n <div class=\"o-hvy-event-detail-tooltip o-hvy-event-detail-tooltip__no-data\">\n {{ '@chh.event.noEvents' | i18n }}\n <div class=\"o-modal__equipment__close\">\n <button class=\"\" (click)=\"closeDialog(true)\">\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n </div>\n </div>\n}\n" }]
|
|
20
|
+
}], ctorParameters: () => [{ type: i1.PryDialogRef }, { type: undefined, decorators: [{
|
|
17
21
|
type: Inject,
|
|
18
22
|
args: [PRY_DIALOG_DATA]
|
|
19
23
|
}] }] });
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtZGV0YWlscy10b29sdGlwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvaHlwZXJ2aXNvci9zcmMvbGliL2V2ZW50L2RldGFpbC9ldmVudC1kZXRhaWxzLXRvb2x0aXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9oeXBlcnZpc29yL3NyYy9saWIvZXZlbnQvZGV0YWlsL2V2ZW50LWRldGFpbHMtdG9vbHRpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsZUFBZSxFQUEwQyxNQUFNLG9CQUFvQixDQUFDO0FBQzVGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBU2xELE1BQU0sT0FBTywrQkFBK0I7SUFDMUMsWUFDVSxNQUErQyxFQUVoRCxJQUFvRTtRQUZuRSxXQUFNLEdBQU4sTUFBTSxDQUF5QztRQUVoRCxTQUFJLEdBQUosSUFBSSxDQUFnRTtJQUMxRSxDQUFDO0lBRUosV0FBVyxDQUFDLE1BQWU7UUFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDNUIsQ0FBQzs4R0FUVSwrQkFBK0IsOENBR2hDLGVBQWU7a0dBSGQsK0JBQStCLGdFQ1Y1QyxxckJBb0JBOzsyRkRWYSwrQkFBK0I7a0JBSjNDLFNBQVM7K0JBQ0UsMEJBQTBCOzswQkFNakMsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQUllfRElBTE9HX0RBVEEsIFByeURpYWxvZ0NvbmZpcm1Db21wb25lbnQsIFByeURpYWxvZ1JlZn0gZnJvbSAnQHByb3ZvbHkvZGFzaGJvYXJkJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIeXBTZXJ2aWNlVG9vbHRpcCB9IGZyb20gJy4uLy4uL21vZGVsL2V2ZW50L2h5cC1ldmVudC10b29sdGlwLmludGVyZmFjZSc7XG5cbmltcG9ydCB7IEh5cEV2ZW50RGV0YWlscyB9IGZyb20gJy4uLy4uL21vZGVsL2V2ZW50L2h5cC1ldmVudC1kZXRhaWwuaW50ZXJmYWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaHZ5LWV2ZW50LWRldGFpbC10b29sdGlwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2V2ZW50LWRldGFpbHMtdG9vbHRpcC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgSHZ5RXZlbnREZXRhaWxzVG9vbHRpcENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZGlhbG9nOiBQcnlEaWFsb2dSZWY8UHJ5RGlhbG9nQ29uZmlybUNvbXBvbmVudD4sXG4gICAgQEluamVjdChQUllfRElBTE9HX0RBVEEpXG4gICAgcHVibGljIGRhdGE6IHsgZXZlbnRzPzogSHlwRXZlbnREZXRhaWxzW107IHNlcnZpY2VzPzogSHlwU2VydmljZVRvb2x0aXBbXSB9XG4gICkge31cblxuICBjbG9zZURpYWxvZygkZXZlbnQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRpYWxvZy5jbG9zZSgkZXZlbnQpO1xuICB9XG59XG4iLCJAaWYgKChkYXRhLmV2ZW50cyAmJiBkYXRhLmV2ZW50cy5sZW5ndGggPiAwKSB8fCAoZGF0YS5zZXJ2aWNlcyAmJiBkYXRhLnNlcnZpY2VzLmxlbmd0aCA+IDApKXtcbiAgPGRpdiBjbGFzcz1cIm8taHZ5LWV2ZW50LWRldGFpbC10b29sdGlwXCI+XG4gICAgPGh2eS1sYXN0LWV2ZW50c1xuICAgICAgW2V2ZW50c109XCJkYXRhLmV2ZW50cyA/PyBbXVwiXG4gICAgICBbc2VydmljZXNdPVwiZGF0YS5zZXJ2aWNlcyA/PyBbXVwiXG4gICAgICAoY2xvc2VEaWFsb2dFbWl0KT1cImNsb3NlRGlhbG9nKCRldmVudClcIlxuICAgICAgW2Nsb3NlQnV0dG9uXT1cInRydWVcIlxuICAgID5cbiAgICA8L2h2eS1sYXN0LWV2ZW50cz5cbiAgPC9kaXY+XG59IEBlbHNlIHtcbiAgPGRpdiBjbGFzcz1cIm8taHZ5LWV2ZW50LWRldGFpbC10b29sdGlwIG8taHZ5LWV2ZW50LWRldGFpbC10b29sdGlwX19uby1kYXRhXCI+XG4gICAge3sgJ0BjaGguZXZlbnQubm9FdmVudHMnIHwgaTE4biB9fVxuICAgIDxkaXYgY2xhc3M9XCJvLW1vZGFsX19lcXVpcG1lbnRfX2Nsb3NlXCI+XG4gICAgICA8YnV0dG9uIGNsYXNzPVwiXCIgKGNsaWNrKT1cImNsb3NlRGlhbG9nKHRydWUpXCI+XG4gICAgICAgIDxwcnktaWNvbiBpY29uU3ZnPVwiY2xvc2VcIj48L3ByeS1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxufVxuIl19
|
|
@@ -12,6 +12,9 @@ export class DateFilterComponent extends HvyUnitFilterComponent {
|
|
|
12
12
|
this.value = '';
|
|
13
13
|
this.subscriptions.add(combineLatest([this.store.select(EventSelectors.filters), this._filterSet$]).subscribe(([filters, filterSet]) => {
|
|
14
14
|
this.value = (filters[filterSet] ?? {})[this.prop] ? (filters[filterSet] ?? {})[this.prop][0] ?? '' : '';
|
|
15
|
+
if (!!this.value) {
|
|
16
|
+
this.value = new Date(this.value).toISOString().substring(0, 10);
|
|
17
|
+
}
|
|
15
18
|
}));
|
|
16
19
|
}
|
|
17
20
|
getParams() {
|
|
@@ -32,4 +35,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
32
35
|
type: Component,
|
|
33
36
|
args: [{ selector: 'hvy-date-filter', providers: [{ provide: HvyUnitFilterComponent, useExisting: forwardRef(() => DateFilterComponent) }], template: "<div class=\"o-hvy-date-filters\">\n <label> {{ \"@chh.event.date\" | i18n }} :\n <input type=\"date\" class=\"a-form-field\"\n [value]=\"value\"\n (change)=\"triggerChange($event)\">\n </label>\n</div>\n" }]
|
|
34
37
|
}], ctorParameters: () => [{ type: i1.Store }] });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9oeXBlcnZpc29yL3NyYy9saWIvZXZlbnQvZmlsdGVycy9kYXRlL2RhdGUtZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvaHlwZXJ2aXNvci9zcmMvbGliL2V2ZW50L2ZpbHRlcnMvZGF0ZS9kYXRlLWZpbHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7OztBQU9yQyxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsc0JBQXNCO0lBRzdELFlBQW9CLEtBQVk7UUFDOUIsS0FBSyxFQUFFLENBQUM7UUFEVSxVQUFLLEdBQUwsS0FBSyxDQUFPO1FBRmhDLFVBQUssR0FBVyxFQUFFLENBQUM7UUFJakIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQ3BCLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsRUFBRSxFQUFFO1lBQzlHLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDekcsSUFBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBQyxDQUFDO2dCQUNmLElBQUksQ0FBQyxLQUFLLEdBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUMsRUFBRSxDQUFDLENBQUM7WUFDaEUsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRVEsU0FBUztRQUNoQixJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDdEIsT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUMvRCxDQUFDO0lBRUQsYUFBYSxDQUFDLE1BQWE7UUFDekIsYUFBYTtRQUNiLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxZQUFZLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUNyRSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3RCLENBQUM7OEdBMUJVLG1CQUFtQjtrR0FBbkIsbUJBQW1CLDBDQUZuQixDQUFDLEVBQUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsbUJBQW1CLENBQUMsRUFBRSxDQUFDLGlEQ1R0RyxzT0FPQTs7MkZESWEsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGlCQUFpQixhQUVoQixDQUFDLEVBQUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLG9CQUFvQixDQUFDLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHZ5VW5pdEZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4uL2h2eS11bml0LWZpbHRlci5jbGFzcyc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IEV2ZW50U2VsZWN0b3JzIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvZXZlbnQvZXZlbnQuc2VsZWN0b3JzJztcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaHZ5LWRhdGUtZmlsdGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGUtZmlsdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBIdnlVbml0RmlsdGVyQ29tcG9uZW50LCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBEYXRlRmlsdGVyQ29tcG9uZW50KSB9XVxufSlcbmV4cG9ydCBjbGFzcyBEYXRlRmlsdGVyQ29tcG9uZW50IGV4dGVuZHMgSHZ5VW5pdEZpbHRlckNvbXBvbmVudCB7XG4gIHZhbHVlOiBzdHJpbmcgPSAnJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHN0b3JlOiBTdG9yZSkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuc3RvcmUuc2VsZWN0KEV2ZW50U2VsZWN0b3JzLmZpbHRlcnMpLCB0aGlzLl9maWx0ZXJTZXQkXSkuc3Vic2NyaWJlKChbZmlsdGVycywgZmlsdGVyU2V0XSkgPT4ge1xuICAgICAgICB0aGlzLnZhbHVlID0gKGZpbHRlcnNbZmlsdGVyU2V0XSA/PyB7fSlbdGhpcy5wcm9wXSA/IChmaWx0ZXJzW2ZpbHRlclNldF0gPz8ge30pW3RoaXMucHJvcF1bMF0gPz8gJycgOiAnJztcbiAgICAgICAgaWYoISF0aGlzLnZhbHVlKXtcbiAgICAgICAgICB0aGlzLnZhbHVlPW5ldyBEYXRlKHRoaXMudmFsdWUpLnRvSVNPU3RyaW5nKCkuc3Vic3RyaW5nKDAsMTApO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBvdmVycmlkZSBnZXRQYXJhbXMoKTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmdbXSB9IHtcbiAgICBpZiAodGhpcy52YWx1ZSA9PT0gJycpIHtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gICAgcmV0dXJuIHsgW3RoaXMucHJvcF06IFtuZXcgRGF0ZSh0aGlzLnZhbHVlKS50b0lTT1N0cmluZygpXSB9O1xuICB9XG5cbiAgdHJpZ2dlckNoYW5nZSgkZXZlbnQ6IEV2ZW50KSB7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIHRoaXMudmFsdWUgPSAkZXZlbnQgaW5zdGFuY2VvZiBFdmVudCA/ICRldmVudC50YXJnZXQ/LnZhbHVlIDogJGV2ZW50O1xuICAgIHRoaXMuY2hhbmdlZC5uZXh0KCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJvLWh2eS1kYXRlLWZpbHRlcnNcIj5cbiAgPGxhYmVsPiB7eyBcIkBjaGguZXZlbnQuZGF0ZVwiIHwgaTE4biB9fSZuYnNwOzpcbiAgPGlucHV0IHR5cGU9XCJkYXRlXCIgY2xhc3M9XCJhLWZvcm0tZmllbGRcIlxuICAgICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICAgICAgIChjaGFuZ2UpPVwidHJpZ2dlckNoYW5nZSgkZXZlbnQpXCI+XG4gIDwvbGFiZWw+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
2
|
import { SubscriptionnerDirective } from '@provoly/dashboard';
|
|
3
3
|
import { displayDate } from '../display-date.function';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
@@ -12,11 +12,16 @@ export class LastEventsComponent extends SubscriptionnerDirective {
|
|
|
12
12
|
this.displayDate = displayDate;
|
|
13
13
|
this.services = [];
|
|
14
14
|
this.events = [];
|
|
15
|
+
this.closeDialogEmit = new EventEmitter();
|
|
16
|
+
this.closeButton = false;
|
|
15
17
|
this.references = [];
|
|
16
18
|
}
|
|
17
19
|
ngOnInit() {
|
|
18
20
|
this.initActionReference(this.services);
|
|
19
21
|
}
|
|
22
|
+
closeDialog() {
|
|
23
|
+
this.closeDialogEmit.next(true);
|
|
24
|
+
}
|
|
20
25
|
initActionReference(services) {
|
|
21
26
|
services.forEach((service, index) => {
|
|
22
27
|
if (service.externalId) {
|
|
@@ -33,14 +38,18 @@ export class LastEventsComponent extends SubscriptionnerDirective {
|
|
|
33
38
|
});
|
|
34
39
|
}
|
|
35
40
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: LastEventsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
36
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: LastEventsComponent, selector: "hvy-last-events", inputs: { services: "services", events: "events" }, usesInheritance: true, ngImport: i0, template: "@if (events.length > 0) {\n <div class=\"o-hvy-last-events__events\">\n <h3>{{ '@chh.event.lastEvents' | i18n }} ({{ events.length }})</h3>\n @for (event of events; track event.id) {\n <div class=\"o-hvy-last-events__events__item\">\n <div class=\"o-hvy-last-events__events__item__icon\">\n <hvy-icon-display [event]=\"event\"></hvy-icon-display>\n </div>\n <div class=\"o-hvy-last-events__events__item__title\">\n
|
|
41
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: LastEventsComponent, selector: "hvy-last-events", inputs: { services: "services", events: "events", closeButton: "closeButton" }, outputs: { closeDialogEmit: "closeDialogEmit" }, usesInheritance: true, ngImport: i0, template: "@if (events.length > 0) {\n <div class=\"o-hvy-last-events__events\">\n <div>\n <h3>{{ '@chh.event.lastEvents' | i18n }} ({{ events.length }})</h3>\n <div class=\"o-modal__equipment__close\" [hidden]=\"!closeButton\">\n <button class=\"\" (click)=\"closeDialog()\">\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n </div>\n </div>\n @for (event of events; track event.id) {\n <div class=\"o-hvy-last-events__events__item\">\n <div class=\"o-hvy-last-events__events__item__icon\">\n <hvy-icon-display [event]=\"event\"></hvy-icon-display>\n </div>\n <div class=\"o-hvy-event-tooltip-container\">\n <div class=\"o-hvy-last-events__events__item__title\">\n <span>{{ event.name }}</span>\n </div>\n <div class=\"o-hvy-last-events__events__item__descr\">\n <span> {{ event.description | truncate: [50, '...'] }}</span>\n </div>\n </div>\n <div class=\"o-hvy-last-events__events__item__status\">\n <hvy-status-display [item]=\"event\"></hvy-status-display>\n </div>\n </div>\n }\n </div>\n}\n@if (services.length > 0) {\n <div class=\"o-hvy-last-events__services\">\n @if ( !events || events.length === 0) {\n <div>\n <h3>{{ '@chh.event.services' | i18n }} ({{ services.length }})</h3>\n <div class=\"o-modal__equipment__close\" [hidden]=\"!closeButton\">\n <button class=\"\" (click)=\"closeDialog()\">\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n </div>\n </div>\n } @else {\n <h3>{{ '@chh.event.services' | i18n }} ({{ services.length }})</h3>\n }\n @for (service of services; track service.id) {\n <div class=\"o-hvy-last-events__services__item\">\n <div class=\"o-hvy-last-events__services__item__icon\">\n <pry-icon iconSvg=\"service\"></pry-icon>\n </div>\n <div class=\"o-hvy-last-events__services__item__title\">\n <span>{{ references[$index] }} - {{ '@chh.intervention.' + service.category | i18n }}</span>\n </div>\n <div class=\"o-hvy-last-events__services__item__descr\">\n <span>{{ '@chh.event.description' | i18n }} : {{ service.description | truncate: [50, '...'] }}</span>\n </div>\n <div class=\"o-hvy-last-events__services__item__date\">\n @if (service.status === 'ASKED') {\n <span>{{ '@chh.event.startDate' | i18n }} : {{ displayDate(service.startDate) }}</span>\n }\n @if (service.status === 'IN_PROGRESS') {\n <span>{{ '@chh.event.endPlannedDate' | i18n }} : {{ displayDate(service.endDate) }}</span>\n }\n @if (service.status === 'DONE') {\n <span>{{ '@chh.event.endDate' | i18n }} : {{ displayDate(service.endDate) }}</span>\n }\n </div>\n <div class=\"o-hvy-last-events__services__item__status\">\n <hvy-status-display [item]=\"service\" type=\"service\"></hvy-status-display>\n </div>\n </div>\n }\n </div>\n}\n", dependencies: [{ kind: "component", type: i1.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "component", type: i2.IconDisplayComponent, selector: "hvy-icon-display", inputs: ["event"] }, { kind: "component", type: i3.StatusDisplayComponent, selector: "hvy-status-display", inputs: ["type", "readonly", "item", "modifiable"], outputs: ["modified"] }, { kind: "pipe", type: i1.I18nPipe, name: "i18n" }, { kind: "pipe", type: i4.TruncatePipe, name: "truncate" }] }); }
|
|
37
42
|
}
|
|
38
43
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: LastEventsComponent, decorators: [{
|
|
39
44
|
type: Component,
|
|
40
|
-
args: [{ selector: 'hvy-last-events', template: "@if (events.length > 0) {\n <div class=\"o-hvy-last-events__events\">\n <h3>{{ '@chh.event.lastEvents' | i18n }} ({{ events.length }})</h3>\n @for (event of events; track event.id) {\n <div class=\"o-hvy-last-events__events__item\">\n <div class=\"o-hvy-last-events__events__item__icon\">\n <hvy-icon-display [event]=\"event\"></hvy-icon-display>\n </div>\n <div class=\"o-hvy-last-events__events__item__title\">\n
|
|
45
|
+
args: [{ selector: 'hvy-last-events', template: "@if (events.length > 0) {\n <div class=\"o-hvy-last-events__events\">\n <div>\n <h3>{{ '@chh.event.lastEvents' | i18n }} ({{ events.length }})</h3>\n <div class=\"o-modal__equipment__close\" [hidden]=\"!closeButton\">\n <button class=\"\" (click)=\"closeDialog()\">\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n </div>\n </div>\n @for (event of events; track event.id) {\n <div class=\"o-hvy-last-events__events__item\">\n <div class=\"o-hvy-last-events__events__item__icon\">\n <hvy-icon-display [event]=\"event\"></hvy-icon-display>\n </div>\n <div class=\"o-hvy-event-tooltip-container\">\n <div class=\"o-hvy-last-events__events__item__title\">\n <span>{{ event.name }}</span>\n </div>\n <div class=\"o-hvy-last-events__events__item__descr\">\n <span> {{ event.description | truncate: [50, '...'] }}</span>\n </div>\n </div>\n <div class=\"o-hvy-last-events__events__item__status\">\n <hvy-status-display [item]=\"event\"></hvy-status-display>\n </div>\n </div>\n }\n </div>\n}\n@if (services.length > 0) {\n <div class=\"o-hvy-last-events__services\">\n @if ( !events || events.length === 0) {\n <div>\n <h3>{{ '@chh.event.services' | i18n }} ({{ services.length }})</h3>\n <div class=\"o-modal__equipment__close\" [hidden]=\"!closeButton\">\n <button class=\"\" (click)=\"closeDialog()\">\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n </div>\n </div>\n } @else {\n <h3>{{ '@chh.event.services' | i18n }} ({{ services.length }})</h3>\n }\n @for (service of services; track service.id) {\n <div class=\"o-hvy-last-events__services__item\">\n <div class=\"o-hvy-last-events__services__item__icon\">\n <pry-icon iconSvg=\"service\"></pry-icon>\n </div>\n <div class=\"o-hvy-last-events__services__item__title\">\n <span>{{ references[$index] }} - {{ '@chh.intervention.' + service.category | i18n }}</span>\n </div>\n <div class=\"o-hvy-last-events__services__item__descr\">\n <span>{{ '@chh.event.description' | i18n }} : {{ service.description | truncate: [50, '...'] }}</span>\n </div>\n <div class=\"o-hvy-last-events__services__item__date\">\n @if (service.status === 'ASKED') {\n <span>{{ '@chh.event.startDate' | i18n }} : {{ displayDate(service.startDate) }}</span>\n }\n @if (service.status === 'IN_PROGRESS') {\n <span>{{ '@chh.event.endPlannedDate' | i18n }} : {{ displayDate(service.endDate) }}</span>\n }\n @if (service.status === 'DONE') {\n <span>{{ '@chh.event.endDate' | i18n }} : {{ displayDate(service.endDate) }}</span>\n }\n </div>\n <div class=\"o-hvy-last-events__services__item__status\">\n <hvy-status-display [item]=\"service\" type=\"service\"></hvy-status-display>\n </div>\n </div>\n }\n </div>\n}\n" }]
|
|
41
46
|
}], propDecorators: { services: [{
|
|
42
47
|
type: Input
|
|
43
48
|
}], events: [{
|
|
44
49
|
type: Input
|
|
50
|
+
}], closeDialogEmit: [{
|
|
51
|
+
type: Output
|
|
52
|
+
}], closeButton: [{
|
|
53
|
+
type: Input
|
|
45
54
|
}] } });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFzdC1ldmVudHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9oeXBlcnZpc29yL3NyYy9saWIvZ2VuZXJhbC9sYXN0LWV2ZW50cy9sYXN0LWV2ZW50cy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2h5cGVydmlzb3Ivc3JjL2xpYi9nZW5lcmFsL2xhc3QtZXZlbnRzL2xhc3QtZXZlbnRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDNUQsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLDBCQUEwQixDQUFDOzs7Ozs7QUFRckQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLHdCQUF3QjtJQUpqRTs7UUFLcUIsZ0JBQVcsR0FBRyxXQUFXLENBQUM7UUFFcEMsYUFBUSxHQUF3QixFQUFFLENBQUM7UUFDbkMsV0FBTSxHQUFzQixFQUFFLENBQUM7UUFDOUIsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBQy9DLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBRTdCLGVBQVUsR0FBYSxFQUFFLENBQUM7S0F1QjNCO0lBckJDLFFBQVE7UUFDTixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELG1CQUFtQixDQUFDLFFBQTZCO1FBQy9DLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDbEMsSUFBRyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ3RCLElBQUcsT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDO29CQUMxQixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLFVBQVUsSUFBSSxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUE7Z0JBQzVFLENBQUM7cUJBQU0sQ0FBQztvQkFDTixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUM7Z0JBQzlDLENBQUM7WUFDSCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDOUIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQzs4R0E5QlUsbUJBQW1CO2tHQUFuQixtQkFBbUIsK01DVmhDLDZpR0F5RUE7OzJGRC9EYSxtQkFBbUI7a0JBSi9CLFNBQVM7K0JBQ0UsaUJBQWlCOzhCQU1sQixRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDSSxlQUFlO3NCQUF4QixNQUFNO2dCQUNFLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmV9IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZCc7XG5pbXBvcnQge2Rpc3BsYXlEYXRlfSBmcm9tICcuLi9kaXNwbGF5LWRhdGUuZnVuY3Rpb24nO1xuaW1wb3J0IHtIeXBFdmVudERldGFpbHN9IGZyb20gJy4uLy4uL21vZGVsL2V2ZW50L2h5cC1ldmVudC1kZXRhaWwuaW50ZXJmYWNlJztcbmltcG9ydCB7SHlwU2VydmljZVRvb2x0aXB9IGZyb20gJy4uLy4uL21vZGVsL2V2ZW50L2h5cC1ldmVudC10b29sdGlwLmludGVyZmFjZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2h2eS1sYXN0LWV2ZW50cycsXG4gIHRlbXBsYXRlVXJsOiAnLi9sYXN0LWV2ZW50cy5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgTGFzdEV2ZW50c0NvbXBvbmVudCBleHRlbmRzIFN1YnNjcmlwdGlvbm5lckRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRpc3BsYXlEYXRlID0gZGlzcGxheURhdGU7XG5cbiAgQElucHV0KCkgc2VydmljZXM6IEh5cFNlcnZpY2VUb29sdGlwW10gPSBbXTtcbiAgQElucHV0KCkgZXZlbnRzOiBIeXBFdmVudERldGFpbHNbXSA9IFtdO1xuICBAT3V0cHV0KCkgY2xvc2VEaWFsb2dFbWl0ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBASW5wdXQoKSBjbG9zZUJ1dHRvbiA9IGZhbHNlO1xuXG4gIHJlZmVyZW5jZXM6IHN0cmluZ1tdID0gW107XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pbml0QWN0aW9uUmVmZXJlbmNlKHRoaXMuc2VydmljZXMpO1xuICB9XG5cbiAgY2xvc2VEaWFsb2coKXtcbiAgICB0aGlzLmNsb3NlRGlhbG9nRW1pdC5uZXh0KHRydWUpO1xuICB9XG5cbiAgaW5pdEFjdGlvblJlZmVyZW5jZShzZXJ2aWNlczogSHlwU2VydmljZVRvb2x0aXBbXSl7XG4gICAgc2VydmljZXMuZm9yRWFjaCgoc2VydmljZSwgaW5kZXgpID0+IHtcbiAgICAgIGlmKHNlcnZpY2UuZXh0ZXJuYWxJZCkge1xuICAgICAgICBpZihzZXJ2aWNlLmFkZGl0aW9uYWxJbmZvKSB7XG4gICAgICAgICAgdGhpcy5yZWZlcmVuY2VzW2luZGV4XSA9IGAke3NlcnZpY2UuZXh0ZXJuYWxJZH1AJHtzZXJ2aWNlLmFkZGl0aW9uYWxJbmZvfWBcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnJlZmVyZW5jZXNbaW5kZXhdID0gc2VydmljZS5leHRlcm5hbElkO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnJlZmVyZW5jZXNbaW5kZXhdID0gJyc7XG4gICAgICB9XG4gICAgfSlcbiAgfVxufVxuIiwiQGlmIChldmVudHMubGVuZ3RoID4gMCkge1xuICA8ZGl2IGNsYXNzPVwiby1odnktbGFzdC1ldmVudHNfX2V2ZW50c1wiPlxuICAgIDxkaXY+XG4gICAgICA8aDM+e3sgJ0BjaGguZXZlbnQubGFzdEV2ZW50cycgfCBpMThuIH19ICh7eyBldmVudHMubGVuZ3RoIH19KTwvaDM+XG4gICAgICA8ZGl2IGNsYXNzPVwiby1tb2RhbF9fZXF1aXBtZW50X19jbG9zZVwiIFtoaWRkZW5dPVwiIWNsb3NlQnV0dG9uXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJcIiAoY2xpY2spPVwiY2xvc2VEaWFsb2coKVwiPlxuICAgICAgICAgIDxwcnktaWNvbiBpY29uU3ZnPVwiY2xvc2VcIj48L3ByeS1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIEBmb3IgKGV2ZW50IG9mIGV2ZW50czsgdHJhY2sgZXZlbnQuaWQpIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJvLWh2eS1sYXN0LWV2ZW50c19fZXZlbnRzX19pdGVtXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJvLWh2eS1sYXN0LWV2ZW50c19fZXZlbnRzX19pdGVtX19pY29uXCI+XG4gICAgICAgICAgPGh2eS1pY29uLWRpc3BsYXkgW2V2ZW50XT1cImV2ZW50XCI+PC9odnktaWNvbi1kaXNwbGF5PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm8taHZ5LWV2ZW50LXRvb2x0aXAtY29udGFpbmVyXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm8taHZ5LWxhc3QtZXZlbnRzX19ldmVudHNfX2l0ZW1fX3RpdGxlXCI+XG4gICAgICAgICAgICA8c3Bhbj57eyBldmVudC5uYW1lIH19PC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJvLWh2eS1sYXN0LWV2ZW50c19fZXZlbnRzX19pdGVtX19kZXNjclwiPlxuICAgICAgICAgICAgPHNwYW4+IHt7IGV2ZW50LmRlc2NyaXB0aW9uIHwgdHJ1bmNhdGU6IFs1MCwgJy4uLiddIH19PC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm8taHZ5LWxhc3QtZXZlbnRzX19ldmVudHNfX2l0ZW1fX3N0YXR1c1wiPlxuICAgICAgICAgIDxodnktc3RhdHVzLWRpc3BsYXkgW2l0ZW1dPVwiZXZlbnRcIj48L2h2eS1zdGF0dXMtZGlzcGxheT5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxufVxuQGlmIChzZXJ2aWNlcy5sZW5ndGggPiAwKSB7XG4gIDxkaXYgY2xhc3M9XCJvLWh2eS1sYXN0LWV2ZW50c19fc2VydmljZXNcIj5cbiAgICBAaWYgKCAhZXZlbnRzIHx8IGV2ZW50cy5sZW5ndGggPT09IDApIHtcbiAgICAgIDxkaXY+XG4gICAgICAgIDxoMz57eyAnQGNoaC5ldmVudC5zZXJ2aWNlcycgfCBpMThuIH19ICh7eyBzZXJ2aWNlcy5sZW5ndGggfX0pPC9oMz5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm8tbW9kYWxfX2VxdWlwbWVudF9fY2xvc2VcIiBbaGlkZGVuXT1cIiFjbG9zZUJ1dHRvblwiPlxuICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJcIiAoY2xpY2spPVwiY2xvc2VEaWFsb2coKVwiPlxuICAgICAgICAgICAgPHByeS1pY29uIGljb25Tdmc9XCJjbG9zZVwiPjwvcHJ5LWljb24+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgfSBAZWxzZSB7XG4gICAgICA8aDM+e3sgJ0BjaGguZXZlbnQuc2VydmljZXMnIHwgaTE4biB9fSAoe3sgc2VydmljZXMubGVuZ3RoIH19KTwvaDM+XG4gICAgfVxuICAgIEBmb3IgKHNlcnZpY2Ugb2Ygc2VydmljZXM7IHRyYWNrIHNlcnZpY2UuaWQpIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJvLWh2eS1sYXN0LWV2ZW50c19fc2VydmljZXNfX2l0ZW1cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm8taHZ5LWxhc3QtZXZlbnRzX19zZXJ2aWNlc19faXRlbV9faWNvblwiPlxuICAgICAgICAgIDxwcnktaWNvbiBpY29uU3ZnPVwic2VydmljZVwiPjwvcHJ5LWljb24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiby1odnktbGFzdC1ldmVudHNfX3NlcnZpY2VzX19pdGVtX190aXRsZVwiPlxuICAgICAgICAgIDxzcGFuPnt7IHJlZmVyZW5jZXNbJGluZGV4XSB9fSAtIHt7ICdAY2hoLmludGVydmVudGlvbi4nICsgc2VydmljZS5jYXRlZ29yeSB8IGkxOG4gfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiby1odnktbGFzdC1ldmVudHNfX3NlcnZpY2VzX19pdGVtX19kZXNjclwiPlxuICAgICAgICAgIDxzcGFuPnt7ICdAY2hoLmV2ZW50LmRlc2NyaXB0aW9uJyB8IGkxOG4gfX0gOiB7eyBzZXJ2aWNlLmRlc2NyaXB0aW9uIHwgdHJ1bmNhdGU6IFs1MCwgJy4uLiddIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm8taHZ5LWxhc3QtZXZlbnRzX19zZXJ2aWNlc19faXRlbV9fZGF0ZVwiPlxuICAgICAgICAgIEBpZiAoc2VydmljZS5zdGF0dXMgPT09ICdBU0tFRCcpIHtcbiAgICAgICAgICAgIDxzcGFuPnt7ICdAY2hoLmV2ZW50LnN0YXJ0RGF0ZScgfCBpMThuIH19IDoge3sgZGlzcGxheURhdGUoc2VydmljZS5zdGFydERhdGUpIH19PC9zcGFuPlxuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgKHNlcnZpY2Uuc3RhdHVzID09PSAnSU5fUFJPR1JFU1MnKSB7XG4gICAgICAgICAgICA8c3Bhbj57eyAnQGNoaC5ldmVudC5lbmRQbGFubmVkRGF0ZScgfCBpMThuIH19IDoge3sgZGlzcGxheURhdGUoc2VydmljZS5lbmREYXRlKSB9fTwvc3Bhbj5cbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIChzZXJ2aWNlLnN0YXR1cyA9PT0gJ0RPTkUnKSB7XG4gICAgICAgICAgICA8c3Bhbj57eyAnQGNoaC5ldmVudC5lbmREYXRlJyB8IGkxOG4gfX0gOiB7eyBkaXNwbGF5RGF0ZShzZXJ2aWNlLmVuZERhdGUpIH19PC9zcGFuPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJvLWh2eS1sYXN0LWV2ZW50c19fc2VydmljZXNfX2l0ZW1fX3N0YXR1c1wiPlxuICAgICAgICAgIDxodnktc3RhdHVzLWRpc3BsYXkgW2l0ZW1dPVwic2VydmljZVwiIHR5cGU9XCJzZXJ2aWNlXCI+PC9odnktc3RhdHVzLWRpc3BsYXk+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgfVxuICA8L2Rpdj5cbn1cbiJdfQ==
|