@provoly/hypervisor 0.0.126 → 0.0.128
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/add-event/add-event.component.mjs +7 -5
- package/esm2022/src/lib/event/detail/event-detail.component.mjs +32 -21
- package/esm2022/src/lib/store/event/event.service.mjs +7 -4
- package/fesm2022/provoly-hypervisor.mjs +43 -27
- package/fesm2022/provoly-hypervisor.mjs.map +1 -1
- package/package.json +1 -1
- package/src/lib/event/detail/event-detail.component.d.ts +2 -2
- package/src/lib/store/event/event.service.d.ts +1 -1
|
@@ -19,12 +19,13 @@ export class HvyEventAddEventComponent {
|
|
|
19
19
|
const search = typeof this.eventSelectValue === 'string' && this.eventSelectValue.length > 2
|
|
20
20
|
? this.eventSelectValue
|
|
21
21
|
: undefined;
|
|
22
|
-
return this.eventService.search(search, ['NEW']).pipe(map((events) => events.map((event) => {
|
|
22
|
+
return this.eventService.search(search, ['name', 'id'], ['NEW']).pipe(map((events) => events.map((event) => {
|
|
23
23
|
const regex = RegExp(`(${search})` ?? '(/-/-/)', 'gid');
|
|
24
24
|
const html = `${padId.fn(event.id)} - ${event.name}`;
|
|
25
25
|
return {
|
|
26
26
|
...event,
|
|
27
|
-
html: html.replaceAll(regex, (matched, capture1) => `<b>${capture1}</b>`)
|
|
27
|
+
html: html.replaceAll(regex, (matched, capture1) => `<b>${capture1}</b>`),
|
|
28
|
+
displayName: html
|
|
28
29
|
};
|
|
29
30
|
})));
|
|
30
31
|
}), catchError(() => {
|
|
@@ -32,6 +33,7 @@ export class HvyEventAddEventComponent {
|
|
|
32
33
|
}), shareReplay());
|
|
33
34
|
}
|
|
34
35
|
selectedEventChange($event) {
|
|
36
|
+
this.eventSelectValue = $event;
|
|
35
37
|
this.onEventSearch$.next();
|
|
36
38
|
if (typeof $event === 'object') {
|
|
37
39
|
this.eventToAdd = $event;
|
|
@@ -47,13 +49,13 @@ export class HvyEventAddEventComponent {
|
|
|
47
49
|
this.dialog.close({ value: 'add', event: this.eventToAdd });
|
|
48
50
|
}
|
|
49
51
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: HvyEventAddEventComponent, deps: [{ token: i1.PryDialogRef }, { token: PRY_DIALOG_DATA }, { token: i2.EventService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
50
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: HvyEventAddEventComponent, selector: "hvy-add-event", ngImport: i0, template: "<div class=\"o-hvy-event-detail-add\">\n <h3>{{ '@hvy.event.add.title' | i18n }}</h3>\n <p>{{ '@hvy.event.add.description' | i18n }}</p>\n\n <div class=\"o-hvy-event-detail-add__container\">\n <label for=\"event\">{{ '@hvy.event.add.search' | i18n }}<span class=\"required\">*</span> :</label>\n <pry-select\n [items]=\"events$ | async\"\n bindLabel=\"
|
|
52
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: HvyEventAddEventComponent, selector: "hvy-add-event", ngImport: i0, template: "<div class=\"o-hvy-event-detail-add\">\n <h3>{{ '@hvy.event.add.title' | i18n }}</h3>\n <p>{{ '@hvy.event.add.description' | i18n }}</p>\n\n <div class=\"o-hvy-event-detail-add__container\">\n <label for=\"event\">{{ '@hvy.event.add.search' | i18n }}<span class=\"required\">*</span> :</label>\n <pry-select\n [items]=\"events$ | async\"\n bindLabel=\"displayName\"\n [ngModel]=\"eventToAdd\"\n (ngModelChange)=\"selectedEventChange($event)\"\n [autocomplete]=\"true\"\n [externalAutocompleteService]=\"true\"\n [placeholder]=\"'@hvy.event.parentEvent.placeholder' | i18n\"\n id=\"event\"\n [template]=\"templateOption\"\n class=\"o-hvy-event-detail-add__event\"\n ></pry-select>\n <ng-template #templateOption let-item=\"item\">\n <div class=\"u-display-flex -column\">\n <span [innerHTML]=\"item.html\"></span>\n </div>\n </ng-template>\n </div>\n\n <div class=\"o-hvy-event-detail-add__buttons\">\n <button class=\"a-btn a-btn--primary\" [disabled]=\"!eventToAdd\" (click)=\"add()\">\n {{ '@hvy.action.validate' | i18n }}\n </button>\n <button class=\"a-btn a-btn--secondary\" (click)=\"closeModal()\">{{ '@hvy.action.cancel' | i18n }}</button>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1.PrySelectComponent, selector: "pry-select", inputs: ["items", "clearable", "multiple", "closeOnSelect", "placeholder", "isForm", "required", "name", "autocomplete", "alwaysShowAutosuggestedValues", "externalAutocompleteService", "bindValue", "bindLabel", "iconSize", "bindIcon", "template", "i18nPrefix", "bindClasses", "loading", "elementRef"], outputs: ["searched", "cleared", "clicked"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.I18nPipe, name: "i18n" }] }); }
|
|
51
53
|
}
|
|
52
54
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: HvyEventAddEventComponent, decorators: [{
|
|
53
55
|
type: Component,
|
|
54
|
-
args: [{ selector: 'hvy-add-event', template: "<div class=\"o-hvy-event-detail-add\">\n <h3>{{ '@hvy.event.add.title' | i18n }}</h3>\n <p>{{ '@hvy.event.add.description' | i18n }}</p>\n\n <div class=\"o-hvy-event-detail-add__container\">\n <label for=\"event\">{{ '@hvy.event.add.search' | i18n }}<span class=\"required\">*</span> :</label>\n <pry-select\n [items]=\"events$ | async\"\n bindLabel=\"
|
|
56
|
+
args: [{ selector: 'hvy-add-event', template: "<div class=\"o-hvy-event-detail-add\">\n <h3>{{ '@hvy.event.add.title' | i18n }}</h3>\n <p>{{ '@hvy.event.add.description' | i18n }}</p>\n\n <div class=\"o-hvy-event-detail-add__container\">\n <label for=\"event\">{{ '@hvy.event.add.search' | i18n }}<span class=\"required\">*</span> :</label>\n <pry-select\n [items]=\"events$ | async\"\n bindLabel=\"displayName\"\n [ngModel]=\"eventToAdd\"\n (ngModelChange)=\"selectedEventChange($event)\"\n [autocomplete]=\"true\"\n [externalAutocompleteService]=\"true\"\n [placeholder]=\"'@hvy.event.parentEvent.placeholder' | i18n\"\n id=\"event\"\n [template]=\"templateOption\"\n class=\"o-hvy-event-detail-add__event\"\n ></pry-select>\n <ng-template #templateOption let-item=\"item\">\n <div class=\"u-display-flex -column\">\n <span [innerHTML]=\"item.html\"></span>\n </div>\n </ng-template>\n </div>\n\n <div class=\"o-hvy-event-detail-add__buttons\">\n <button class=\"a-btn a-btn--primary\" [disabled]=\"!eventToAdd\" (click)=\"add()\">\n {{ '@hvy.action.validate' | i18n }}\n </button>\n <button class=\"a-btn a-btn--secondary\" (click)=\"closeModal()\">{{ '@hvy.action.cancel' | i18n }}</button>\n </div>\n</div>\n" }]
|
|
55
57
|
}], ctorParameters: () => [{ type: i1.PryDialogRef }, { type: undefined, decorators: [{
|
|
56
58
|
type: Inject,
|
|
57
59
|
args: [PRY_DIALOG_DATA]
|
|
58
60
|
}] }, { type: i2.EventService }] });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWV2ZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvaHlwZXJ2aXNvci9zcmMvbGliL2V2ZW50L2RldGFpbC9hZGQtZXZlbnQvYWRkLWV2ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvaHlwZXJ2aXNvci9zcmMvbGliL2V2ZW50L2RldGFpbC9hZGQtZXZlbnQvYWRkLWV2ZW50LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sb0JBQW9CLENBQUM7QUFDbkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLFlBQVksRUFBYyxXQUFXLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUdqRixPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7OztBQU16RCxNQUFNLE9BQU8seUJBQXlCO0lBTXBDLFlBQ1UsTUFBK0MsRUFFaEQsSUFBUSxFQUNQLFlBQTBCO1FBSDFCLFdBQU0sR0FBTixNQUFNLENBQXlDO1FBRWhELFNBQUksR0FBSixJQUFJLENBQUk7UUFDUCxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQVRwQyxtQkFBYyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFDckMscUJBQWdCLEdBQXlDLFNBQVMsQ0FBQztRQVVqRSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDMUUsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNiLE1BQU0sTUFBTSxHQUNWLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixLQUFLLFFBQVEsSUFBSyxJQUFJLENBQUMsZ0JBQTJCLENBQUMsTUFBTSxHQUFHLENBQUM7Z0JBQ3ZGLENBQUMsQ0FBRSxJQUFJLENBQUMsZ0JBQTJCO2dCQUNuQyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQ2hCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ25FLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQ2IsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUNuQixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxNQUFNLEdBQUcsSUFBSSxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ3hELE1BQU0sSUFBSSxHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNyRCxPQUFPO29CQUNMLEdBQUcsS0FBSztvQkFDUixJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxPQUFlLEVBQUUsUUFBZ0IsRUFBRSxFQUFFLENBQUMsTUFBTSxRQUFRLE1BQU0sQ0FBQztvQkFDekYsV0FBVyxFQUFFLElBQUk7aUJBQ2EsQ0FBQztZQUNuQyxDQUFDLENBQUMsQ0FDSCxDQUNGLENBQUM7UUFDSixDQUFDLENBQUMsRUFDRixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQzlDLENBQUMsQ0FBQyxFQUNGLFdBQVcsRUFBRSxDQUNkLENBQUM7SUFDSixDQUFDO0lBRUQsbUJBQW1CLENBQUMsTUFBVztRQUM3QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsTUFBTSxDQUFDO1FBQy9CLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDM0IsSUFBSSxPQUFPLE1BQU0sS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQztRQUMzQixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO1FBQzlCLENBQUM7SUFDSCxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELEdBQUc7UUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQzlELENBQUM7OEdBdkRVLHlCQUF5Qiw4Q0FRMUIsZUFBZTtrR0FSZCx5QkFBeUIscURDYnRDLHN2Q0FnQ0E7OzJGRG5CYSx5QkFBeUI7a0JBSnJDLFNBQVM7K0JBQ0UsZUFBZTs7MEJBV3RCLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBSWV9ESUFMT0dfREFUQSwgUHJ5RGlhbG9nUmVmIH0gZnJvbSAnQHByb3ZvbHkvZGFzaGJvYXJkJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIE9ic2VydmFibGUsIHNoYXJlUmVwbGF5LCBTdWJqZWN0LCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEh5cEV2ZW50RGV0YWlscyB9IGZyb20gJy4uLy4uLy4uL21vZGVsL2V2ZW50L2h5cC1ldmVudC1kZXRhaWwuaW50ZXJmYWNlJztcbmltcG9ydCB7IEh5cEV2ZW50RGV0YWlsc1dpdGhNYXRjaGluZyB9IGZyb20gJy4uL2V2ZW50LWRldGFpbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwLCBzdGFydFdpdGggfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBFdmVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9ldmVudC9ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IHBhZElkIH0gZnJvbSAnLi4vLi4vLi4vZ2VuZXJhbC9wYWQtaWQuZnVuY3Rpb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdodnktYWRkLWV2ZW50JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FkZC1ldmVudC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgSHZ5RXZlbnRBZGRFdmVudENvbXBvbmVudCB7XG4gIG9uRXZlbnRTZWFyY2gkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgZXZlbnRTZWxlY3RWYWx1ZTogc3RyaW5nIHwgSHlwRXZlbnREZXRhaWxzIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICBldmVudHMkOiBPYnNlcnZhYmxlPEh5cEV2ZW50RGV0YWlsc1dpdGhNYXRjaGluZ1tdPjtcbiAgZXZlbnRUb0FkZD86IEh5cEV2ZW50RGV0YWlscztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGRpYWxvZzogUHJ5RGlhbG9nUmVmPEh2eUV2ZW50QWRkRXZlbnRDb21wb25lbnQ+LFxuICAgIEBJbmplY3QoUFJZX0RJQUxPR19EQVRBKVxuICAgIHB1YmxpYyBkYXRhOiB7fSxcbiAgICBwcml2YXRlIGV2ZW50U2VydmljZTogRXZlbnRTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuZXZlbnRzJCA9IHRoaXMub25FdmVudFNlYXJjaCQucGlwZShzdGFydFdpdGgoKSwgZGVib3VuY2VUaW1lKDUwMCkpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4ge1xuICAgICAgICBjb25zdCBzZWFyY2ggPVxuICAgICAgICAgIHR5cGVvZiB0aGlzLmV2ZW50U2VsZWN0VmFsdWUgPT09ICdzdHJpbmcnICYmICh0aGlzLmV2ZW50U2VsZWN0VmFsdWUgYXMgc3RyaW5nKS5sZW5ndGggPiAyXG4gICAgICAgICAgICA/ICh0aGlzLmV2ZW50U2VsZWN0VmFsdWUgYXMgc3RyaW5nKVxuICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgICAgIHJldHVybiB0aGlzLmV2ZW50U2VydmljZS5zZWFyY2goc2VhcmNoLCBbJ25hbWUnLCAnaWQnXSwgWydORVcnXSkucGlwZShcbiAgICAgICAgICBtYXAoKGV2ZW50cykgPT5cbiAgICAgICAgICAgIGV2ZW50cy5tYXAoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHJlZ2V4ID0gUmVnRXhwKGAoJHtzZWFyY2h9KWAgPz8gJygvLS8tLyknLCAnZ2lkJyk7XG4gICAgICAgICAgICAgIGNvbnN0IGh0bWwgPSBgJHtwYWRJZC5mbihldmVudC5pZCl9IC0gJHtldmVudC5uYW1lfWA7XG4gICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4uZXZlbnQsXG4gICAgICAgICAgICAgICAgaHRtbDogaHRtbC5yZXBsYWNlQWxsKHJlZ2V4LCAobWF0Y2hlZDogc3RyaW5nLCBjYXB0dXJlMTogc3RyaW5nKSA9PiBgPGI+JHtjYXB0dXJlMX08L2I+YCksXG4gICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6IGh0bWxcbiAgICAgICAgICAgICAgfSBhcyBIeXBFdmVudERldGFpbHNXaXRoTWF0Y2hpbmc7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICAgIH0pLFxuICAgICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignU2VhcmNoIEVxdWlwbWVudCBwcm9ibGVtJyk7XG4gICAgICB9KSxcbiAgICAgIHNoYXJlUmVwbGF5KClcbiAgICApO1xuICB9XG5cbiAgc2VsZWN0ZWRFdmVudENoYW5nZSgkZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuZXZlbnRTZWxlY3RWYWx1ZSA9ICRldmVudDtcbiAgICB0aGlzLm9uRXZlbnRTZWFyY2gkLm5leHQoKTtcbiAgICBpZiAodHlwZW9mICRldmVudCA9PT0gJ29iamVjdCcpIHtcbiAgICAgIHRoaXMuZXZlbnRUb0FkZCA9ICRldmVudDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5ldmVudFRvQWRkID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxuXG4gIGNsb3NlTW9kYWwoKSB7XG4gICAgdGhpcy5kaWFsb2cuY2xvc2UoeyB2YWx1ZTogJ2NhbmNlbCcgfSk7XG4gIH1cblxuICBhZGQoKSB7XG4gICAgdGhpcy5kaWFsb2cuY2xvc2UoeyB2YWx1ZTogJ2FkZCcsIGV2ZW50OiB0aGlzLmV2ZW50VG9BZGQgfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJvLWh2eS1ldmVudC1kZXRhaWwtYWRkXCI+XG4gIDxoMz57eyAnQGh2eS5ldmVudC5hZGQudGl0bGUnIHwgaTE4biB9fTwvaDM+XG4gIDxwPnt7ICdAaHZ5LmV2ZW50LmFkZC5kZXNjcmlwdGlvbicgfCBpMThuIH19PC9wPlxuXG4gIDxkaXYgY2xhc3M9XCJvLWh2eS1ldmVudC1kZXRhaWwtYWRkX19jb250YWluZXJcIj5cbiAgICA8bGFiZWwgZm9yPVwiZXZlbnRcIj57eyAnQGh2eS5ldmVudC5hZGQuc2VhcmNoJyB8IGkxOG4gfX08c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj4gOjwvbGFiZWw+XG4gICAgPHByeS1zZWxlY3RcbiAgICAgIFtpdGVtc109XCJldmVudHMkIHwgYXN5bmNcIlxuICAgICAgYmluZExhYmVsPVwiZGlzcGxheU5hbWVcIlxuICAgICAgW25nTW9kZWxdPVwiZXZlbnRUb0FkZFwiXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJzZWxlY3RlZEV2ZW50Q2hhbmdlKCRldmVudClcIlxuICAgICAgW2F1dG9jb21wbGV0ZV09XCJ0cnVlXCJcbiAgICAgIFtleHRlcm5hbEF1dG9jb21wbGV0ZVNlcnZpY2VdPVwidHJ1ZVwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiJ0BodnkuZXZlbnQucGFyZW50RXZlbnQucGxhY2Vob2xkZXInIHwgaTE4blwiXG4gICAgICBpZD1cImV2ZW50XCJcbiAgICAgIFt0ZW1wbGF0ZV09XCJ0ZW1wbGF0ZU9wdGlvblwiXG4gICAgICBjbGFzcz1cIm8taHZ5LWV2ZW50LWRldGFpbC1hZGRfX2V2ZW50XCJcbiAgICA+PC9wcnktc2VsZWN0PlxuICAgIDxuZy10ZW1wbGF0ZSAjdGVtcGxhdGVPcHRpb24gbGV0LWl0ZW09XCJpdGVtXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwidS1kaXNwbGF5LWZsZXggLWNvbHVtblwiPlxuICAgICAgICA8c3BhbiBbaW5uZXJIVE1MXT1cIml0ZW0uaHRtbFwiPjwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJvLWh2eS1ldmVudC1kZXRhaWwtYWRkX19idXR0b25zXCI+XG4gICAgPGJ1dHRvbiBjbGFzcz1cImEtYnRuIGEtYnRuLS1wcmltYXJ5XCIgW2Rpc2FibGVkXT1cIiFldmVudFRvQWRkXCIgKGNsaWNrKT1cImFkZCgpXCI+XG4gICAgICB7eyAnQGh2eS5hY3Rpb24udmFsaWRhdGUnIHwgaTE4biB9fVxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b24gY2xhc3M9XCJhLWJ0biBhLWJ0bi0tc2Vjb25kYXJ5XCIgKGNsaWNrKT1cImNsb3NlTW9kYWwoKVwiPnt7ICdAaHZ5LmFjdGlvbi5jYW5jZWwnIHwgaTE4biB9fTwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|