tango-app-ui-analyse-trax 3.3.1-alpha.3 → 3.3.1-alpha.30
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/lib/components/action-centre/action-centre.component.mjs +38 -0
- package/esm2022/lib/components/add-checklist/add-checklist.component.mjs +175 -162
- package/esm2022/lib/components/checklist/checklist.component.mjs +38 -22
- package/esm2022/lib/components/checklist-configure/checklist-configure.component.mjs +148 -81
- package/esm2022/lib/components/checklistlayout/checklistlayout.component.mjs +12 -0
- package/esm2022/lib/components/custom-select/custom-select.component.mjs +155 -0
- package/esm2022/lib/components/dashboard/dashboard.component.mjs +41 -35
- package/esm2022/lib/components/dashboard-info/dashboard-info.component.mjs +175 -60
- package/esm2022/lib/components/dashboard-info/monthlyperformance-datepicker/monthlyperformance-datepicker.component.mjs +20 -11
- package/esm2022/lib/components/dashboard-layout/dashboard-layout.component.mjs +12 -0
- package/esm2022/lib/components/flag-layout/flag-layout.component.mjs +12 -0
- package/esm2022/lib/components/flags/flags.component.mjs +87 -18
- package/esm2022/lib/components/flags/flags.interface.mjs +1 -1
- package/esm2022/lib/components/flags-info/flags-info.component.mjs +120 -23
- package/esm2022/lib/components/flags-info/flags-info.interface.mjs +1 -1
- package/esm2022/lib/components/gallery/gallery.component.mjs +481 -62
- package/esm2022/lib/components/managechecklist/managechecklist.component.mjs +151 -8
- package/esm2022/lib/components/multi-date-datepicker/multi-date-datepicker.component.mjs +4 -3
- package/esm2022/lib/components/orders/orders.component.mjs +171 -0
- package/esm2022/lib/components/reactive-select/reactive-select.component.mjs +8 -4
- package/esm2022/lib/components/reports/reports.component.mjs +60 -20
- package/esm2022/lib/components/reports/reports.interface.mjs +1 -1
- package/esm2022/lib/components/traxpopup/traxpopup.component.mjs +6 -3
- package/esm2022/lib/services/trax.service.mjs +77 -12
- package/esm2022/lib/tango-analyse-trax-routing.module.mjs +49 -14
- package/esm2022/lib/tango-analyse-trax.module.mjs +32 -7
- package/fesm2022/tango-app-ui-analyse-trax.mjs +2035 -559
- package/fesm2022/tango-app-ui-analyse-trax.mjs.map +1 -1
- package/lib/components/action-centre/action-centre.component.d.ts +17 -0
- package/lib/components/add-checklist/add-checklist.component.d.ts +7 -4
- package/lib/components/checklist/checklist.component.d.ts +2 -2
- package/lib/components/checklist-configure/checklist-configure.component.d.ts +5 -3
- package/lib/components/checklistlayout/checklistlayout.component.d.ts +5 -0
- package/lib/components/custom-select/custom-select.component.d.ts +33 -0
- package/lib/components/dashboard/dashboard.component.d.ts +3 -1
- package/lib/components/dashboard-info/dashboard-info.component.d.ts +14 -4
- package/lib/components/dashboard-info/monthlyperformance-datepicker/monthlyperformance-datepicker.component.d.ts +3 -2
- package/lib/components/dashboard-layout/dashboard-layout.component.d.ts +5 -0
- package/lib/components/flag-layout/flag-layout.component.d.ts +5 -0
- package/lib/components/flags/flags.component.d.ts +14 -3
- package/lib/components/flags/flags.interface.d.ts +2 -0
- package/lib/components/flags-info/flags-info.component.d.ts +10 -3
- package/lib/components/flags-info/flags-info.interface.d.ts +7 -2
- package/lib/components/gallery/gallery.component.d.ts +38 -8
- package/lib/components/managechecklist/managechecklist.component.d.ts +23 -2
- package/lib/components/multi-date-datepicker/multi-date-datepicker.component.d.ts +2 -2
- package/lib/components/orders/orders.component.d.ts +38 -0
- package/lib/components/reactive-select/reactive-select.component.d.ts +3 -2
- package/lib/components/reports/reports.component.d.ts +9 -3
- package/lib/components/reports/reports.interface.d.ts +1 -0
- package/lib/components/traxpopup/traxpopup.component.d.ts +1 -0
- package/lib/services/trax.service.d.ts +21 -2
- package/lib/tango-analyse-trax.module.d.ts +14 -7
- package/package.json +1 -1
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { FormControl } from '@angular/forms';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/forms";
|
|
5
|
+
import * as i2 from "../reactive-select/reactive-select.component";
|
|
6
|
+
export class ActionCentreComponent {
|
|
7
|
+
fb;
|
|
8
|
+
form;
|
|
9
|
+
checklistselectControl;
|
|
10
|
+
checklistDropdown = [
|
|
11
|
+
{ _id: '1', checkListName: 'Checklist 1' },
|
|
12
|
+
{ _id: '2', checkListName: 'Checklist 2' },
|
|
13
|
+
{ _id: '3', checkListName: 'Checklist 3' },
|
|
14
|
+
{ _id: '4', checkListName: 'Checklist 4' }
|
|
15
|
+
// Add more static checklist items as needed
|
|
16
|
+
];
|
|
17
|
+
constructor(fb) {
|
|
18
|
+
this.fb = fb;
|
|
19
|
+
this.checklistselectControl = new FormControl(null);
|
|
20
|
+
this.form = this.fb.group({
|
|
21
|
+
checklistselectControl: this.checklistselectControl
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
ngOnInit() {
|
|
25
|
+
// Any additional initialization logic can go here
|
|
26
|
+
}
|
|
27
|
+
onValueChangeChecklist(event) {
|
|
28
|
+
// Handle the value change event as needed
|
|
29
|
+
console.log('Selected checklist:', event);
|
|
30
|
+
}
|
|
31
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ActionCentreComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
|
|
32
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ActionCentreComponent, selector: "lib-action-centre", ngImport: i0, template: "<div class=\"col-md-12\">\r\n <div class=\"row\">\r\n <div class=\"col-6\">\r\n <div class=\"card\">\r\n <div class=\"actioncard my-3 mx-3\">\r\n <div class=\"d-flex\">\r\n <span class=\"actioncount\">50</span> <span class=\"actiontext mx-5 mt-3\">Checklist waiting for approval</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"card\">\r\n <div class=\"actioncard my-3 mx-3\">\r\n <div class=\"d-flex\">\r\n <span class=\"actioncount\">50</span> <span class=\"actiontext mx-5 mt-3\">Task waiting for approval</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row m-0 my-3\">\r\n <div class=\"card\">\r\n <div class=\"card-header border-0 pt-3\">\r\n <h3 class=\"card-title align-items-start flex-column\">\r\n <span class=\"card-label mb-2\">Approval</span>\r\n <span class=\"text-sub mb-2\">An Summary of all the checklists awaiting approval\r\n </span>\r\n </h3>\r\n <div class=\"card-toolbar\">\r\n <div class=\"d-flex\">\r\n <div class=\"d-flex align-items-center position-relative my-1\">\r\n <form class=\"mt-1 me-3 borderless-select\" [formGroup]=\"form\">\r\n <lib-reactive-select [formControl]=\"checklistselectControl\" [idField]=\"'_id'\"\r\n [nameField]=\"'checkListName'\" [data]=\"checklistDropdown\" class=\"w-100 \"\r\n style=\"border: none !important; box-shadow: none !important;\"\r\n (valueChange)=\"onValueChangeChecklist($event)\">\r\n <ng-template let-item>\r\n <div class=\"d-flex justify-content-between align-items-center no-border-custom-select\">\r\n <span>{{ item.checkListName }}</span>\r\n <span class=\"d-flex align-items-center\">\r\n <!-- <span class=\"status-text\">Status</span> -->\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path d=\"M4 6L8 10L12 6\" stroke=\"#101828\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </ng-template>\r\n </lib-reactive-select>\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n </div> \r\n </div>\r\n </div>\r\n</div>", styles: [".actioncard{display:flex;padding:8px 16px;align-items:center;gap:16px;align-self:stretch;border-radius:6px;border-bottom:2px solid var(--Gray-200, #EAECF0);background:radial-gradient(206.89% 107.47% at 16.16% 32.77%,#fff6,#45bbfe33),#f2f4f7;box-shadow:0 4px 10px #0000000d}.actioncount{color:var(--Black, #101828);font-size:30px;font-style:normal;font-weight:600;line-height:38px}.actiontext{color:var(--Gray-700, #344054);font-size:14px;font-style:normal;font-weight:500;line-height:20px}\n"], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i2.ReactiveSelectComponent, selector: "lib-reactive-select", inputs: ["idField", "nameField", "label", "data"], outputs: ["itemChange"] }] });
|
|
33
|
+
}
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ActionCentreComponent, decorators: [{
|
|
35
|
+
type: Component,
|
|
36
|
+
args: [{ selector: 'lib-action-centre', template: "<div class=\"col-md-12\">\r\n <div class=\"row\">\r\n <div class=\"col-6\">\r\n <div class=\"card\">\r\n <div class=\"actioncard my-3 mx-3\">\r\n <div class=\"d-flex\">\r\n <span class=\"actioncount\">50</span> <span class=\"actiontext mx-5 mt-3\">Checklist waiting for approval</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"card\">\r\n <div class=\"actioncard my-3 mx-3\">\r\n <div class=\"d-flex\">\r\n <span class=\"actioncount\">50</span> <span class=\"actiontext mx-5 mt-3\">Task waiting for approval</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row m-0 my-3\">\r\n <div class=\"card\">\r\n <div class=\"card-header border-0 pt-3\">\r\n <h3 class=\"card-title align-items-start flex-column\">\r\n <span class=\"card-label mb-2\">Approval</span>\r\n <span class=\"text-sub mb-2\">An Summary of all the checklists awaiting approval\r\n </span>\r\n </h3>\r\n <div class=\"card-toolbar\">\r\n <div class=\"d-flex\">\r\n <div class=\"d-flex align-items-center position-relative my-1\">\r\n <form class=\"mt-1 me-3 borderless-select\" [formGroup]=\"form\">\r\n <lib-reactive-select [formControl]=\"checklistselectControl\" [idField]=\"'_id'\"\r\n [nameField]=\"'checkListName'\" [data]=\"checklistDropdown\" class=\"w-100 \"\r\n style=\"border: none !important; box-shadow: none !important;\"\r\n (valueChange)=\"onValueChangeChecklist($event)\">\r\n <ng-template let-item>\r\n <div class=\"d-flex justify-content-between align-items-center no-border-custom-select\">\r\n <span>{{ item.checkListName }}</span>\r\n <span class=\"d-flex align-items-center\">\r\n <!-- <span class=\"status-text\">Status</span> -->\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path d=\"M4 6L8 10L12 6\" stroke=\"#101828\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </ng-template>\r\n </lib-reactive-select>\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n </div> \r\n </div>\r\n </div>\r\n</div>", styles: [".actioncard{display:flex;padding:8px 16px;align-items:center;gap:16px;align-self:stretch;border-radius:6px;border-bottom:2px solid var(--Gray-200, #EAECF0);background:radial-gradient(206.89% 107.47% at 16.16% 32.77%,#fff6,#45bbfe33),#f2f4f7;box-shadow:0 4px 10px #0000000d}.actioncount{color:var(--Black, #101828);font-size:30px;font-style:normal;font-weight:600;line-height:38px}.actiontext{color:var(--Gray-700, #344054);font-size:14px;font-style:normal;font-weight:500;line-height:20px}\n"] }]
|
|
37
|
+
}], ctorParameters: () => [{ type: i1.FormBuilder }] });
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWNlbnRyZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1hbmFseXNlLXRyYXgvc3JjL2xpYi9jb21wb25lbnRzL2FjdGlvbi1jZW50cmUvYWN0aW9uLWNlbnRyZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1hbmFseXNlLXRyYXgvc3JjL2xpYi9jb21wb25lbnRzL2FjdGlvbi1jZW50cmUvYWN0aW9uLWNlbnRyZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBZSxXQUFXLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQU9yRSxNQUFNLE9BQU8scUJBQXFCO0lBV1o7SUFWcEIsSUFBSSxDQUFZO0lBQ2hCLHNCQUFzQixDQUFjO0lBQ3BDLGlCQUFpQixHQUFHO1FBQ2xCLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFO1FBQzFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFO1FBQzFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFO1FBQzFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFO1FBQzFDLDRDQUE0QztLQUM3QyxDQUFDO0lBRUYsWUFBb0IsRUFBZTtRQUFmLE9BQUUsR0FBRixFQUFFLENBQWE7UUFDakMsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDeEIsc0JBQXNCLEVBQUUsSUFBSSxDQUFDLHNCQUFzQjtTQUNwRCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUTtRQUNOLGtEQUFrRDtJQUNwRCxDQUFDO0lBRUQsc0JBQXNCLENBQUMsS0FBVTtRQUMvQiwwQ0FBMEM7UUFDMUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM1QyxDQUFDO3dHQXpCVSxxQkFBcUI7NEZBQXJCLHFCQUFxQix5RENSbEMsaXNHQTJETTs7NEZEbkRPLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWFjdGlvbi1jZW50cmUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hY3Rpb24tY2VudHJlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vYWN0aW9uLWNlbnRyZS5jb21wb25lbnQuc2NzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIEFjdGlvbkNlbnRyZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgZm9ybTogRm9ybUdyb3VwO1xyXG4gIGNoZWNrbGlzdHNlbGVjdENvbnRyb2w6IEZvcm1Db250cm9sO1xyXG4gIGNoZWNrbGlzdERyb3Bkb3duID0gW1xyXG4gICAgeyBfaWQ6ICcxJywgY2hlY2tMaXN0TmFtZTogJ0NoZWNrbGlzdCAxJyB9LFxyXG4gICAgeyBfaWQ6ICcyJywgY2hlY2tMaXN0TmFtZTogJ0NoZWNrbGlzdCAyJyB9LFxyXG4gICAgeyBfaWQ6ICczJywgY2hlY2tMaXN0TmFtZTogJ0NoZWNrbGlzdCAzJyB9LFxyXG4gICAgeyBfaWQ6ICc0JywgY2hlY2tMaXN0TmFtZTogJ0NoZWNrbGlzdCA0JyB9XHJcbiAgICAvLyBBZGQgbW9yZSBzdGF0aWMgY2hlY2tsaXN0IGl0ZW1zIGFzIG5lZWRlZFxyXG4gIF07XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyKSB7XHJcbiAgICB0aGlzLmNoZWNrbGlzdHNlbGVjdENvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2wobnVsbCk7XHJcbiAgICB0aGlzLmZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgY2hlY2tsaXN0c2VsZWN0Q29udHJvbDogdGhpcy5jaGVja2xpc3RzZWxlY3RDb250cm9sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgLy8gQW55IGFkZGl0aW9uYWwgaW5pdGlhbGl6YXRpb24gbG9naWMgY2FuIGdvIGhlcmVcclxuICB9XHJcblxyXG4gIG9uVmFsdWVDaGFuZ2VDaGVja2xpc3QoZXZlbnQ6IGFueSkge1xyXG4gICAgLy8gSGFuZGxlIHRoZSB2YWx1ZSBjaGFuZ2UgZXZlbnQgYXMgbmVlZGVkXHJcbiAgICBjb25zb2xlLmxvZygnU2VsZWN0ZWQgY2hlY2tsaXN0OicsIGV2ZW50KTtcclxuICB9XHJcbn0iLCI8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC02XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uY2FyZCBteS0zIG14LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhY3Rpb25jb3VudFwiPjUwPC9zcGFuPiA8c3BhbiBjbGFzcz1cImFjdGlvbnRleHQgbXgtNSBtdC0zXCI+Q2hlY2tsaXN0IHdhaXRpbmcgZm9yIGFwcHJvdmFsPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtNlwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbmNhcmQgbXktMyBteC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWN0aW9uY291bnRcIj41MDwvc3Bhbj4gPHNwYW4gY2xhc3M9XCJhY3Rpb250ZXh0IG14LTUgbXQtM1wiPlRhc2sgd2FpdGluZyBmb3IgYXBwcm92YWw8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwicm93IG0tMCBteS0zXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgYm9yZGVyLTAgcHQtM1wiPlxyXG4gICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcmQtbGFiZWwgbWItMlwiPkFwcHJvdmFsPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXN1YiBtYi0yXCI+QW4gU3VtbWFyeSBvZiBhbGwgdGhlIGNoZWNrbGlzdHMgYXdhaXRpbmcgYXBwcm92YWxcclxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPC9oMz5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdG9vbGJhclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyICBwb3NpdGlvbi1yZWxhdGl2ZSBteS0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxmb3JtIGNsYXNzPVwibXQtMSBtZS0zIGJvcmRlcmxlc3Mtc2VsZWN0XCIgW2Zvcm1Hcm91cF09XCJmb3JtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGliLXJlYWN0aXZlLXNlbGVjdCBbZm9ybUNvbnRyb2xdPVwiY2hlY2tsaXN0c2VsZWN0Q29udHJvbFwiIFtpZEZpZWxkXT1cIidfaWQnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmFtZUZpZWxkXT1cIidjaGVja0xpc3ROYW1lJ1wiIFtkYXRhXT1cImNoZWNrbGlzdERyb3Bkb3duXCIgY2xhc3M9XCJ3LTEwMCBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7IGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJvblZhbHVlQ2hhbmdlQ2hlY2tsaXN0KCRldmVudClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgbGV0LWl0ZW0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyIG5vLWJvcmRlci1jdXN0b20tc2VsZWN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj57eyBpdGVtLmNoZWNrTGlzdE5hbWUgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxzcGFuIGNsYXNzPVwic3RhdHVzLXRleHRcIj5TdGF0dXM8L3NwYW4+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTQgNkw4IDEwTDEyIDZcIiBzdHJva2U9XCIjMTAxODI4XCIgc3Ryb2tlLXdpZHRoPVwiMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saWItcmVhY3RpdmUtc2VsZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Zvcm0+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+ICBcclxuICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|