@flower-city-online/itinerary-lib 0.0.51 → 0.0.52
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/itinerary-app/_services/bottom-navigation.service.mjs +8 -8
- package/esm2022/lib/itinerary-app/_services/navigation-helper.service.mjs +128 -0
- package/esm2022/lib/itinerary-app/modules/archives/pages/main-archives/main-archives.component.mjs +20 -17
- package/esm2022/lib/itinerary-app/modules/itineraries/itineraries.component.mjs +18 -15
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/branched-itineraries/branched-itineraries.component.mjs +23 -45
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/builder/builder.component.mjs +23 -23
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/builder/pages/create-itinerary/create-itinerary.component.mjs +21 -20
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/builder/pages/create-itinerary-draw-mode/create-itinerary-draw-mode.component.mjs +23 -26
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/builder/pages/created-itinerary/created-itinerary.component.mjs +17 -15
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/builder/pages/created-itinerary-preview/created-itinerary-preview.component.mjs +12 -9
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/builder/pages/location-picker/location-picker.component.mjs +19 -18
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/builder/pages/select-itinerary-event/select-itinerary-event.component.mjs +16 -14
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/builder/pages/suggested-events-location/suggested-events-location.component.mjs +17 -15
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/builder/pages/suggested-events-route-radius/suggested-events-route-radius.component.mjs +13 -13
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/builder/pages/suggested-events-route-type/suggested-events-route-type.component.mjs +16 -14
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/comments/comment-comparison/comment-comparison.component.mjs +13 -10
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/comments/comment-search/comment-search.component.mjs +13 -10
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/comments/comments-page.component.mjs +15 -12
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/explore/explore.component.mjs +28 -43
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/itinerary-detail/components/details/details.component.mjs +28 -36
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/itinerary-detail/components/summary/summary.component.mjs +27 -31
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/itinerary-detail/itinerary-detail.component.mjs +20 -16
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/itinerary-members/user-list/user-list.component.mjs +16 -16
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/itinerary-upvote-users/itinerary-upvote-users.component.mjs +17 -14
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/itinerary-users/itinerary-users.component.mjs +14 -9
- package/esm2022/lib/itinerary-app/modules/itineraries/pages/itinerary-watching-users/itinerary-watching-users.component.mjs +14 -9
- package/esm2022/lib/itinerary-app/shared/comment/comment.component.mjs +17 -17
- package/esm2022/lib/itinerary-app/shared/custom-story-card/custom-story-card.component.mjs +16 -11
- package/fesm2022/flower-city-online-itinerary-lib.mjs +627 -530
- package/fesm2022/flower-city-online-itinerary-lib.mjs.map +1 -1
- package/lib/itinerary-app/_services/bottom-navigation.service.d.ts +3 -3
- package/lib/itinerary-app/_services/navigation-helper.service.d.ts +19 -0
- package/lib/itinerary-app/modules/archives/pages/main-archives/main-archives.component.d.ts +5 -3
- package/lib/itinerary-app/modules/itineraries/itineraries.component.d.ts +3 -1
- package/lib/itinerary-app/modules/itineraries/pages/branched-itineraries/branched-itineraries.component.d.ts +4 -3
- package/lib/itinerary-app/modules/itineraries/pages/builder/builder.component.d.ts +5 -3
- package/lib/itinerary-app/modules/itineraries/pages/builder/pages/create-itinerary/create-itinerary.component.d.ts +5 -3
- package/lib/itinerary-app/modules/itineraries/pages/builder/pages/create-itinerary-draw-mode/create-itinerary-draw-mode.component.d.ts +4 -3
- package/lib/itinerary-app/modules/itineraries/pages/builder/pages/created-itinerary/created-itinerary.component.d.ts +4 -3
- package/lib/itinerary-app/modules/itineraries/pages/builder/pages/created-itinerary-preview/created-itinerary-preview.component.d.ts +3 -1
- package/lib/itinerary-app/modules/itineraries/pages/builder/pages/location-picker/location-picker.component.d.ts +4 -3
- package/lib/itinerary-app/modules/itineraries/pages/builder/pages/select-itinerary-event/select-itinerary-event.component.d.ts +4 -3
- package/lib/itinerary-app/modules/itineraries/pages/builder/pages/suggested-events-location/suggested-events-location.component.d.ts +4 -3
- package/lib/itinerary-app/modules/itineraries/pages/builder/pages/suggested-events-route-radius/suggested-events-route-radius.component.d.ts +4 -3
- package/lib/itinerary-app/modules/itineraries/pages/builder/pages/suggested-events-route-type/suggested-events-route-type.component.d.ts +4 -3
- package/lib/itinerary-app/modules/itineraries/pages/comments/comment-comparison/comment-comparison.component.d.ts +5 -3
- package/lib/itinerary-app/modules/itineraries/pages/comments/comment-search/comment-search.component.d.ts +5 -3
- package/lib/itinerary-app/modules/itineraries/pages/comments/comments-page.component.d.ts +3 -1
- package/lib/itinerary-app/modules/itineraries/pages/explore/explore.component.d.ts +5 -3
- package/lib/itinerary-app/modules/itineraries/pages/itinerary-detail/components/details/details.component.d.ts +6 -4
- package/lib/itinerary-app/modules/itineraries/pages/itinerary-detail/components/summary/summary.component.d.ts +5 -3
- package/lib/itinerary-app/modules/itineraries/pages/itinerary-detail/itinerary-detail.component.d.ts +5 -2
- package/lib/itinerary-app/modules/itineraries/pages/itinerary-members/user-list/user-list.component.d.ts +5 -3
- package/lib/itinerary-app/modules/itineraries/pages/itinerary-upvote-users/itinerary-upvote-users.component.d.ts +5 -3
- package/lib/itinerary-app/modules/itineraries/pages/itinerary-users/itinerary-users.component.d.ts +5 -2
- package/lib/itinerary-app/modules/itineraries/pages/itinerary-watching-users/itinerary-watching-users.component.d.ts +5 -2
- package/lib/itinerary-app/shared/comment/comment.component.d.ts +5 -3
- package/lib/itinerary-app/shared/custom-story-card/custom-story-card.component.d.ts +5 -3
- package/package.json +1 -1
|
@@ -5,14 +5,17 @@ import * as i0 from "@angular/core";
|
|
|
5
5
|
import * as i1 from "@angular/router";
|
|
6
6
|
import * as i2 from "../../../../_services/assets.service";
|
|
7
7
|
import * as i3 from "@angular/common";
|
|
8
|
-
import * as i4 from "../../../../
|
|
9
|
-
import * as i5 from "
|
|
10
|
-
import * as i6 from "
|
|
8
|
+
import * as i4 from "../../../../_services/navigation-helper.service";
|
|
9
|
+
import * as i5 from "../../../../shared/header/header.component";
|
|
10
|
+
import * as i6 from "@naniteninja/ionic-lib";
|
|
11
|
+
import * as i7 from "../itinerary-members/user-list/user-list.component";
|
|
11
12
|
export class ItineraryUsersComponent {
|
|
12
13
|
router;
|
|
13
14
|
assetService;
|
|
14
15
|
cdr;
|
|
15
16
|
location;
|
|
17
|
+
route;
|
|
18
|
+
navHelper;
|
|
16
19
|
ICONS = ICONS;
|
|
17
20
|
members;
|
|
18
21
|
loading = false;
|
|
@@ -25,11 +28,13 @@ export class ItineraryUsersComponent {
|
|
|
25
28
|
selected: true,
|
|
26
29
|
},
|
|
27
30
|
];
|
|
28
|
-
constructor(router, assetService, cdr, location) {
|
|
31
|
+
constructor(router, assetService, cdr, location, route, navHelper) {
|
|
29
32
|
this.router = router;
|
|
30
33
|
this.assetService = assetService;
|
|
31
34
|
this.cdr = cdr;
|
|
32
35
|
this.location = location;
|
|
36
|
+
this.route = route;
|
|
37
|
+
this.navHelper = navHelper;
|
|
33
38
|
}
|
|
34
39
|
ngOnInit() {
|
|
35
40
|
this.subscription = this.assetService.getMembers().subscribe((data) => {
|
|
@@ -42,13 +47,13 @@ export class ItineraryUsersComponent {
|
|
|
42
47
|
this.location.back();
|
|
43
48
|
}
|
|
44
49
|
searchButtonClick() {
|
|
45
|
-
this.
|
|
50
|
+
this.navHelper.navigate([ItinerariesRoutesEnum.SEARCH], this.route);
|
|
46
51
|
}
|
|
47
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ItineraryUsersComponent, deps: [{ token: i1.Router }, { token: i2.AssetsService }, { token: i0.ChangeDetectorRef }, { token: i3.Location }], target: i0.ɵɵFactoryTarget.Component });
|
|
48
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ItineraryUsersComponent, selector: "app-itinerary-users", ngImport: i0, template: "<div>\r\n <div class=\"px-4\">\r\n <ng-template #search>\r\n <img [src]=\"ICONS['search']\" alt=\"right-icon\" (click)=\"searchButtonClick()\" />\r\n </ng-template>\r\n <app-header class=\"mb-4\" [heading]=\"'Total Members( ' + members?.length + ' )'\" (firstButton)=\"backButton()\" [headerSuffixTemplate]=\"search\"></app-header>\r\n </div>\r\n <div class=\"mt-4 ps-4 pe-2\">\r\n <span class=\"normal-text-md normal-text-gray\">\r\n Total users of this itinerary<span class=\"text-pink-600 ml-1\" >Adventure Tour</span>\r\n </span>\r\n </div>\r\n <div class=\"mt-4 ps-[28px] pe-[18px]\">\r\n <app-user-list [usersList]=\"members\"></app-user-list>\r\n </div>\r\n</div>\r\n", styles: [".light-grey{color:#bdb2b2}\n"], dependencies: [{ kind: "component", type:
|
|
52
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ItineraryUsersComponent, deps: [{ token: i1.Router }, { token: i2.AssetsService }, { token: i0.ChangeDetectorRef }, { token: i3.Location }, { token: i1.ActivatedRoute }, { token: i4.NavigationHelperService }], target: i0.ɵɵFactoryTarget.Component });
|
|
53
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ItineraryUsersComponent, selector: "app-itinerary-users", ngImport: i0, template: "<div>\r\n <div class=\"px-4\">\r\n <ng-template #search>\r\n <img [src]=\"ICONS['search']\" alt=\"right-icon\" (click)=\"searchButtonClick()\" />\r\n </ng-template>\r\n <app-header class=\"mb-4\" [heading]=\"'Total Members( ' + members?.length + ' )'\" (firstButton)=\"backButton()\" [headerSuffixTemplate]=\"search\"></app-header>\r\n </div>\r\n <div class=\"mt-4 ps-4 pe-2\">\r\n <span class=\"normal-text-md normal-text-gray\">\r\n Total users of this itinerary<span class=\"text-pink-600 ml-1\" >Adventure Tour</span>\r\n </span>\r\n </div>\r\n <div class=\"mt-4 ps-[28px] pe-[18px]\">\r\n <app-user-list [usersList]=\"members\"></app-user-list>\r\n </div>\r\n</div>\r\n", styles: [".light-grey{color:#bdb2b2}\n"], dependencies: [{ kind: "component", type: i5.HeaderComponent, selector: "app-header", inputs: ["heading", "headerRightIcon", "titleIcon", "cssClass", "headerSuffixTemplate"], outputs: ["firstButton", "titleIconClick"] }, { kind: "directive", type: i6.LazyImageDirective, selector: "img" }, { kind: "component", type: i7.UserList, selector: "app-user-list", inputs: ["usersList", "class"] }] });
|
|
49
54
|
}
|
|
50
55
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ItineraryUsersComponent, decorators: [{
|
|
51
56
|
type: Component,
|
|
52
57
|
args: [{ selector: 'app-itinerary-users', standalone: false, template: "<div>\r\n <div class=\"px-4\">\r\n <ng-template #search>\r\n <img [src]=\"ICONS['search']\" alt=\"right-icon\" (click)=\"searchButtonClick()\" />\r\n </ng-template>\r\n <app-header class=\"mb-4\" [heading]=\"'Total Members( ' + members?.length + ' )'\" (firstButton)=\"backButton()\" [headerSuffixTemplate]=\"search\"></app-header>\r\n </div>\r\n <div class=\"mt-4 ps-4 pe-2\">\r\n <span class=\"normal-text-md normal-text-gray\">\r\n Total users of this itinerary<span class=\"text-pink-600 ml-1\" >Adventure Tour</span>\r\n </span>\r\n </div>\r\n <div class=\"mt-4 ps-[28px] pe-[18px]\">\r\n <app-user-list [usersList]=\"members\"></app-user-list>\r\n </div>\r\n</div>\r\n", styles: [".light-grey{color:#bdb2b2}\n"] }]
|
|
53
|
-
}], ctorParameters: () => [{ type: i1.Router }, { type: i2.AssetsService }, { type: i0.ChangeDetectorRef }, { type: i3.Location }] });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
}], ctorParameters: () => [{ type: i1.Router }, { type: i2.AssetsService }, { type: i0.ChangeDetectorRef }, { type: i3.Location }, { type: i1.ActivatedRoute }, { type: i4.NavigationHelperService }] });
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRpbmVyYXJ5LXVzZXJzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2l0aW5lcmFyeS1saWIvc3JjL2xpYi9pdGluZXJhcnktYXBwL21vZHVsZXMvaXRpbmVyYXJpZXMvcGFnZXMvaXRpbmVyYXJ5LXVzZXJzL2l0aW5lcmFyeS11c2Vycy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pdGluZXJhcnktbGliL3NyYy9saWIvaXRpbmVyYXJ5LWFwcC9tb2R1bGVzL2l0aW5lcmFyaWVzL3BhZ2VzL2l0aW5lcmFyeS11c2Vycy9pdGluZXJhcnktdXNlcnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHN0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFFaEYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7Ozs7QUFhekQsTUFBTSxPQUFPLHVCQUF1QjtJQWV6QjtJQUNDO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFuQlYsS0FBSyxHQUFVLEtBQUssQ0FBQztJQUNyQixPQUFPLENBQWlDO0lBQ3hDLE9BQU8sR0FBWSxLQUFLLENBQUM7SUFDekIsWUFBWSxDQUFnQjtJQUM1QixPQUFPLEdBQTJCO1FBQ2hDO1lBQ0UsS0FBSyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDcEIsS0FBSyxFQUFFLFNBQVM7WUFDaEIsS0FBSyxFQUFFLFNBQVM7WUFDaEIsUUFBUSxFQUFFLElBQUk7U0FDZjtLQUNGLENBQUM7SUFFRixZQUNTLE1BQWMsRUFDYixZQUEyQixFQUMzQixHQUFzQixFQUN0QixRQUFrQixFQUNsQixLQUFxQixFQUNyQixTQUFrQztRQUxuQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2IsaUJBQVksR0FBWixZQUFZLENBQWU7UUFDM0IsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixjQUFTLEdBQVQsU0FBUyxDQUF5QjtJQUN4QyxDQUFDO0lBRUwsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNwRSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztZQUNwQixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNyQixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFDRCxpQkFBaUI7UUFDZixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0RSxDQUFDO3dHQXBDVSx1QkFBdUI7NEZBQXZCLHVCQUF1QiwyRENsQnBDLHdzQkFnQkE7OzRGREVhLHVCQUF1QjtrQkFObkMsU0FBUzsrQkFDSSxxQkFBcUIsY0FHbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IEFzc2V0c1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9fc2VydmljZXMvYXNzZXRzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJdGluZXJhcmllc1JvdXRlc0VudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9fZW51bXMvSXRlbmFyaWVzUm91dGVzLmVudW0nO1xyXG5pbXBvcnQgeyBJaWNvbiB9IGZyb20gJy4uLy4uLy4uLy4uL19pbnRlcmZhY2UvaWNvbic7XHJcbmltcG9ydCB7IElDT05TIH0gZnJvbSAnLi4vLi4vLi4vLi4vX2NvbnN0YW50cy9jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBJSXRpbmVyYXJ5TWVtYmVyIH0gZnJvbSAnLi4vLi4vLi4vLi4vX21vZGVscy9pdGluZXJhcnlNZW1iZXInO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzL2ludGVybmFsL1N1YnNjcmlwdGlvbic7XHJcbmltcG9ydCB7IExvY2F0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgU2VsZWN0T3B0aW9uIH0gZnJvbSAnQG5hbml0ZW5pbmphL2lvbmljLWxpYic7XHJcbmltcG9ydCB7IE5hdmlnYXRpb25IZWxwZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vX3NlcnZpY2VzL25hdmlnYXRpb24taGVscGVyLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2FwcC1pdGluZXJhcnktdXNlcnMnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2l0aW5lcmFyeS11c2Vycy5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybDogJy4vaXRpbmVyYXJ5LXVzZXJzLmNvbXBvbmVudC5jc3MnLFxyXG4gICAgc3RhbmRhbG9uZTogZmFsc2VcclxufSlcclxuZXhwb3J0IGNsYXNzIEl0aW5lcmFyeVVzZXJzQ29tcG9uZW50IHtcclxuICBJQ09OUzogSWljb24gPSBJQ09OUztcclxuICBtZW1iZXJzOiBJSXRpbmVyYXJ5TWVtYmVyW10gfCB1bmRlZmluZWQ7XHJcbiAgbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcclxuICBvcHRpb25zOiBTZWxlY3RPcHRpb248c3RyaW5nPltdID0gW1xyXG4gICAge1xyXG4gICAgICBpbWFnZTogSUNPTlNbJ2Zvb2QnXSxcclxuICAgICAgbGFiZWw6ICdWaXluYXNhJyxcclxuICAgICAgdmFsdWU6ICdWaXluYXNhJyxcclxuICAgICAgc2VsZWN0ZWQ6IHRydWUsXHJcbiAgICB9LFxyXG4gIF07XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHJpdmF0ZSBhc3NldFNlcnZpY2U6IEFzc2V0c1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIGxvY2F0aW9uOiBMb2NhdGlvbixcclxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxyXG4gICAgcHJpdmF0ZSBuYXZIZWxwZXI6IE5hdmlnYXRpb25IZWxwZXJTZXJ2aWNlXHJcbiAgKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMuYXNzZXRTZXJ2aWNlLmdldE1lbWJlcnMoKS5zdWJzY3JpYmUoKGRhdGEpID0+IHtcclxuICAgICAgdGhpcy5tZW1iZXJzID0gZGF0YTtcclxuICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgYmFja0J1dHRvbigpIHtcclxuICAgIHRoaXMubG9jYXRpb24uYmFjaygpO1xyXG4gIH1cclxuICBzZWFyY2hCdXR0b25DbGljaygpOiB2b2lkIHtcclxuICAgIHRoaXMubmF2SGVscGVyLm5hdmlnYXRlKFtJdGluZXJhcmllc1JvdXRlc0VudW0uU0VBUkNIXSwgdGhpcy5yb3V0ZSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXY+XHJcbiAgPGRpdiBjbGFzcz1cInB4LTRcIj5cclxuICAgIDxuZy10ZW1wbGF0ZSAjc2VhcmNoPlxyXG4gICAgICA8aW1nIFtzcmNdPVwiSUNPTlNbJ3NlYXJjaCddXCIgYWx0PVwicmlnaHQtaWNvblwiIChjbGljayk9XCJzZWFyY2hCdXR0b25DbGljaygpXCIgLz5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8YXBwLWhlYWRlciBjbGFzcz1cIm1iLTRcIiBbaGVhZGluZ109XCInVG90YWwgTWVtYmVycyggJyArIG1lbWJlcnM/Lmxlbmd0aCArICcgKSdcIiAoZmlyc3RCdXR0b24pPVwiYmFja0J1dHRvbigpXCIgW2hlYWRlclN1ZmZpeFRlbXBsYXRlXT1cInNlYXJjaFwiPjwvYXBwLWhlYWRlcj5cclxuICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJtdC00IHBzLTQgcGUtMlwiPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJub3JtYWwtdGV4dC1tZCBub3JtYWwtdGV4dC1ncmF5XCI+XHJcbiAgICAgIFRvdGFsIHVzZXJzIG9mIHRoaXMgaXRpbmVyYXJ5PHNwYW4gY2xhc3M9XCJ0ZXh0LXBpbmstNjAwIG1sLTFcIiA+QWR2ZW50dXJlIFRvdXI8L3NwYW4+XHJcbiAgICA8L3NwYW4+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cIm10LTQgcHMtWzI4cHhdIHBlLVsxOHB4XVwiPlxyXG4gICAgPGFwcC11c2VyLWxpc3QgW3VzZXJzTGlzdF09XCJtZW1iZXJzXCI+PC9hcHAtdXNlci1saXN0PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -5,14 +5,17 @@ import * as i0 from "@angular/core";
|
|
|
5
5
|
import * as i1 from "@angular/router";
|
|
6
6
|
import * as i2 from "../../../../_services/assets.service";
|
|
7
7
|
import * as i3 from "@angular/common";
|
|
8
|
-
import * as i4 from "../../../../
|
|
9
|
-
import * as i5 from "
|
|
10
|
-
import * as i6 from "
|
|
8
|
+
import * as i4 from "../../../../_services/navigation-helper.service";
|
|
9
|
+
import * as i5 from "../../../../shared/header/header.component";
|
|
10
|
+
import * as i6 from "@naniteninja/ionic-lib";
|
|
11
|
+
import * as i7 from "../itinerary-members/user-list/user-list.component";
|
|
11
12
|
export class ItineraryWatchingUsersComponent {
|
|
12
13
|
router;
|
|
13
14
|
assetService;
|
|
14
15
|
cdr;
|
|
15
16
|
location;
|
|
17
|
+
route;
|
|
18
|
+
navHelper;
|
|
16
19
|
ICONS = ICONS;
|
|
17
20
|
watchingMembers;
|
|
18
21
|
loading = false;
|
|
@@ -25,11 +28,13 @@ export class ItineraryWatchingUsersComponent {
|
|
|
25
28
|
selected: true,
|
|
26
29
|
},
|
|
27
30
|
];
|
|
28
|
-
constructor(router, assetService, cdr, location) {
|
|
31
|
+
constructor(router, assetService, cdr, location, route, navHelper) {
|
|
29
32
|
this.router = router;
|
|
30
33
|
this.assetService = assetService;
|
|
31
34
|
this.cdr = cdr;
|
|
32
35
|
this.location = location;
|
|
36
|
+
this.route = route;
|
|
37
|
+
this.navHelper = navHelper;
|
|
33
38
|
}
|
|
34
39
|
ngOnInit() {
|
|
35
40
|
this.loading = true;
|
|
@@ -40,16 +45,16 @@ export class ItineraryWatchingUsersComponent {
|
|
|
40
45
|
});
|
|
41
46
|
}
|
|
42
47
|
searchButtonClick() {
|
|
43
|
-
this.
|
|
48
|
+
this.navHelper.navigate([ItinerariesRoutesEnum.SEARCH], this.route);
|
|
44
49
|
}
|
|
45
50
|
backButton() {
|
|
46
51
|
this.location.back();
|
|
47
52
|
}
|
|
48
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ItineraryWatchingUsersComponent, deps: [{ token: i1.Router }, { token: i2.AssetsService }, { token: i0.ChangeDetectorRef }, { token: i3.Location }], target: i0.ɵɵFactoryTarget.Component });
|
|
49
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ItineraryWatchingUsersComponent, selector: "app-itinerary-watching-users", ngImport: i0, template: "<div>\r\n <div class=\"px-4\">\r\n <ng-template #search>\r\n <img [src]=\"ICONS['search']\" alt=\"right-icon\" (click)=\"searchButtonClick()\" />\r\n </ng-template>\r\n <app-header [heading]=\"'Watching(' + (watchingMembers?.length ?? 0) + ')'\" (firstButton)=\"backButton()\" [headerSuffixTemplate]=\"search\"></app-header>\r\n </div>\r\n <div class=\"mt-4 ps-4 pe-2\">\r\n <span class=\"normal-text-md normal-text-gray\">\r\n See who liked this itinerary<span class=\"text-pink-600 ml-1\" >Adventure Tour</span>\r\n </span>\r\n </div>\r\n <div class=\"mt-4 ps-[28px] pe-[18px]\">\r\n <app-user-list [usersList]=\"watchingMembers\"></app-user-list>\r\n </div>\r\n</div>\r\n", styles: [".light-grey{color:#bdb2b2}\n"], dependencies: [{ kind: "component", type:
|
|
53
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ItineraryWatchingUsersComponent, deps: [{ token: i1.Router }, { token: i2.AssetsService }, { token: i0.ChangeDetectorRef }, { token: i3.Location }, { token: i1.ActivatedRoute }, { token: i4.NavigationHelperService }], target: i0.ɵɵFactoryTarget.Component });
|
|
54
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ItineraryWatchingUsersComponent, selector: "app-itinerary-watching-users", ngImport: i0, template: "<div>\r\n <div class=\"px-4\">\r\n <ng-template #search>\r\n <img [src]=\"ICONS['search']\" alt=\"right-icon\" (click)=\"searchButtonClick()\" />\r\n </ng-template>\r\n <app-header [heading]=\"'Watching(' + (watchingMembers?.length ?? 0) + ')'\" (firstButton)=\"backButton()\" [headerSuffixTemplate]=\"search\"></app-header>\r\n </div>\r\n <div class=\"mt-4 ps-4 pe-2\">\r\n <span class=\"normal-text-md normal-text-gray\">\r\n See who liked this itinerary<span class=\"text-pink-600 ml-1\" >Adventure Tour</span>\r\n </span>\r\n </div>\r\n <div class=\"mt-4 ps-[28px] pe-[18px]\">\r\n <app-user-list [usersList]=\"watchingMembers\"></app-user-list>\r\n </div>\r\n</div>\r\n", styles: [".light-grey{color:#bdb2b2}\n"], dependencies: [{ kind: "component", type: i5.HeaderComponent, selector: "app-header", inputs: ["heading", "headerRightIcon", "titleIcon", "cssClass", "headerSuffixTemplate"], outputs: ["firstButton", "titleIconClick"] }, { kind: "directive", type: i6.LazyImageDirective, selector: "img" }, { kind: "component", type: i7.UserList, selector: "app-user-list", inputs: ["usersList", "class"] }] });
|
|
50
55
|
}
|
|
51
56
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ItineraryWatchingUsersComponent, decorators: [{
|
|
52
57
|
type: Component,
|
|
53
58
|
args: [{ selector: 'app-itinerary-watching-users', standalone: false, template: "<div>\r\n <div class=\"px-4\">\r\n <ng-template #search>\r\n <img [src]=\"ICONS['search']\" alt=\"right-icon\" (click)=\"searchButtonClick()\" />\r\n </ng-template>\r\n <app-header [heading]=\"'Watching(' + (watchingMembers?.length ?? 0) + ')'\" (firstButton)=\"backButton()\" [headerSuffixTemplate]=\"search\"></app-header>\r\n </div>\r\n <div class=\"mt-4 ps-4 pe-2\">\r\n <span class=\"normal-text-md normal-text-gray\">\r\n See who liked this itinerary<span class=\"text-pink-600 ml-1\" >Adventure Tour</span>\r\n </span>\r\n </div>\r\n <div class=\"mt-4 ps-[28px] pe-[18px]\">\r\n <app-user-list [usersList]=\"watchingMembers\"></app-user-list>\r\n </div>\r\n</div>\r\n", styles: [".light-grey{color:#bdb2b2}\n"] }]
|
|
54
|
-
}], ctorParameters: () => [{ type: i1.Router }, { type: i2.AssetsService }, { type: i0.ChangeDetectorRef }, { type: i3.Location }] });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
}], ctorParameters: () => [{ type: i1.Router }, { type: i2.AssetsService }, { type: i0.ChangeDetectorRef }, { type: i3.Location }, { type: i1.ActivatedRoute }, { type: i4.NavigationHelperService }] });
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRpbmVyYXJ5LXdhdGNoaW5nLXVzZXJzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2l0aW5lcmFyeS1saWIvc3JjL2xpYi9pdGluZXJhcnktYXBwL21vZHVsZXMvaXRpbmVyYXJpZXMvcGFnZXMvaXRpbmVyYXJ5LXdhdGNoaW5nLXVzZXJzL2l0aW5lcmFyeS13YXRjaGluZy11c2Vycy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pdGluZXJhcnktbGliL3NyYy9saWIvaXRpbmVyYXJ5LWFwcC9tb2R1bGVzL2l0aW5lcmFyaWVzL3BhZ2VzL2l0aW5lcmFyeS13YXRjaGluZy11c2Vycy9pdGluZXJhcnktd2F0Y2hpbmctdXNlcnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBUXpELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDOzs7Ozs7Ozs7QUFTaEYsTUFBTSxPQUFPLCtCQUErQjtJQWVqQztJQUNDO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFuQlYsS0FBSyxHQUFVLEtBQUssQ0FBQztJQUNyQixlQUFlLENBQWlDO0lBQ2hELE9BQU8sR0FBWSxLQUFLLENBQUM7SUFDekIsWUFBWSxDQUFnQjtJQUM1QixPQUFPLEdBQTJCO1FBQ2hDO1lBQ0UsS0FBSyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDcEIsS0FBSyxFQUFFLFNBQVM7WUFDaEIsS0FBSyxFQUFFLFNBQVM7WUFDaEIsUUFBUSxFQUFFLElBQUk7U0FDZjtLQUNGLENBQUM7SUFFRixZQUNTLE1BQWMsRUFDYixZQUEyQixFQUMzQixHQUFzQixFQUN0QixRQUFrQixFQUNsQixLQUFxQixFQUNyQixTQUFrQztRQUxuQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2IsaUJBQVksR0FBWixZQUFZLENBQWU7UUFDM0IsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixjQUFTLEdBQVQsU0FBUyxDQUF5QjtJQUN4QyxDQUFDO0lBRUwsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQzVFLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQzVCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ3JCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7d0dBdENVLCtCQUErQjs0RkFBL0IsK0JBQStCLG9FQ2xCNUMsd3NCQWdCQTs7NEZERWEsK0JBQStCO2tCQU4zQyxTQUFTOytCQUNJLDhCQUE4QixjQUc1QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IElDT05TIH0gZnJvbSAnLi4vLi4vLi4vLi4vX2NvbnN0YW50cy9jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBJaWNvbiB9IGZyb20gJy4uLy4uLy4uLy4uL19pbnRlcmZhY2UvaWNvbic7XHJcbmltcG9ydCB7IElJdGluZXJhcnlNZW1iZXIgfSBmcm9tICcuLi8uLi8uLi8uLi9fbW9kZWxzL2l0aW5lcmFyeU1lbWJlcic7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMvaW50ZXJuYWwvU3Vic2NyaXB0aW9uJztcclxuaW1wb3J0IHsgU2VsZWN0T3B0aW9uIH0gZnJvbSAnQG5hbml0ZW5pbmphL2lvbmljLWxpYic7XHJcbmltcG9ydCB7IEFzc2V0c1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9fc2VydmljZXMvYXNzZXRzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBJdGluZXJhcmllc1JvdXRlc0VudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9fZW51bXMvSXRlbmFyaWVzUm91dGVzLmVudW0nO1xyXG5pbXBvcnQgeyBOYXZpZ2F0aW9uSGVscGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL19zZXJ2aWNlcy9uYXZpZ2F0aW9uLWhlbHBlci5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdhcHAtaXRpbmVyYXJ5LXdhdGNoaW5nLXVzZXJzJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9pdGluZXJhcnktd2F0Y2hpbmctdXNlcnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmw6ICcuL2l0aW5lcmFyeS13YXRjaGluZy11c2Vycy5jb21wb25lbnQuY3NzJyxcclxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJdGluZXJhcnlXYXRjaGluZ1VzZXJzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBJQ09OUzogSWljb24gPSBJQ09OUztcclxuICB3YXRjaGluZ01lbWJlcnM6IElJdGluZXJhcnlNZW1iZXJbXSB8IHVuZGVmaW5lZDtcclxuICBsb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgc3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xyXG4gIG9wdGlvbnM6IFNlbGVjdE9wdGlvbjxzdHJpbmc+W10gPSBbXHJcbiAgICB7XHJcbiAgICAgIGltYWdlOiBJQ09OU1snZm9vZCddLFxyXG4gICAgICBsYWJlbDogJ1ZpeW5hc2EnLFxyXG4gICAgICB2YWx1ZTogJ1ZpeW5hc2EnLFxyXG4gICAgICBzZWxlY3RlZDogdHJ1ZSxcclxuICAgIH0sXHJcbiAgXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIGFzc2V0U2VydmljZTogQXNzZXRzU2VydmljZSxcclxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgbG9jYXRpb246IExvY2F0aW9uLFxyXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICBwcml2YXRlIG5hdkhlbHBlcjogTmF2aWdhdGlvbkhlbHBlclNlcnZpY2VcclxuICApIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMuYXNzZXRTZXJ2aWNlLmdldFdhdGNoaW5nTWVtYmVycygpLnN1YnNjcmliZSgoZGF0YSkgPT4ge1xyXG4gICAgICB0aGlzLndhdGNoaW5nTWVtYmVycyA9IGRhdGE7XHJcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHNlYXJjaEJ1dHRvbkNsaWNrKCk6IHZvaWQge1xyXG4gICAgdGhpcy5uYXZIZWxwZXIubmF2aWdhdGUoW0l0aW5lcmFyaWVzUm91dGVzRW51bS5TRUFSQ0hdLCB0aGlzLnJvdXRlKTtcclxuICB9XHJcblxyXG4gIGJhY2tCdXR0b24oKSB7XHJcbiAgICB0aGlzLmxvY2F0aW9uLmJhY2soKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdj5cclxuICA8ZGl2IGNsYXNzPVwicHgtNFwiPlxyXG4gICAgPG5nLXRlbXBsYXRlICNzZWFyY2g+XHJcbiAgICAgIDxpbWcgW3NyY109XCJJQ09OU1snc2VhcmNoJ11cIiBhbHQ9XCJyaWdodC1pY29uXCIgKGNsaWNrKT1cInNlYXJjaEJ1dHRvbkNsaWNrKClcIiAvPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDxhcHAtaGVhZGVyIFtoZWFkaW5nXT1cIidXYXRjaGluZygnICsgKHdhdGNoaW5nTWVtYmVycz8ubGVuZ3RoID8/IDApICsgJyknXCIgKGZpcnN0QnV0dG9uKT1cImJhY2tCdXR0b24oKVwiIFtoZWFkZXJTdWZmaXhUZW1wbGF0ZV09XCJzZWFyY2hcIj48L2FwcC1oZWFkZXI+XHJcbiAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwibXQtNCBwcy00IHBlLTJcIj5cclxuICAgIDxzcGFuIGNsYXNzPVwibm9ybWFsLXRleHQtbWQgbm9ybWFsLXRleHQtZ3JheVwiPlxyXG4gICAgICBTZWUgd2hvIGxpa2VkIHRoaXMgaXRpbmVyYXJ5PHNwYW4gY2xhc3M9XCJ0ZXh0LXBpbmstNjAwIG1sLTFcIiA+QWR2ZW50dXJlIFRvdXI8L3NwYW4+XHJcbiAgICA8L3NwYW4+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cIm10LTQgcHMtWzI4cHhdIHBlLVsxOHB4XVwiPlxyXG4gICAgPGFwcC11c2VyLWxpc3QgW3VzZXJzTGlzdF09XCJ3YXRjaGluZ01lbWJlcnNcIj48L2FwcC11c2VyLWxpc3Q+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -3,15 +3,17 @@ import { CommentImagesComponent } from './comment-images/comment-images.componen
|
|
|
3
3
|
import { ICONS } from '../../_constants/constants';
|
|
4
4
|
import { ItinerariesRoutesEnum } from '../../_enums/ItenariesRoutes.enum';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "
|
|
7
|
-
import * as i2 from "
|
|
8
|
-
import * as i3 from "
|
|
9
|
-
import * as i4 from "@
|
|
10
|
-
import * as i5 from "
|
|
6
|
+
import * as i1 from "../../_services/comment-image.service";
|
|
7
|
+
import * as i2 from "@angular/router";
|
|
8
|
+
import * as i3 from "../../_services/navigation-helper.service";
|
|
9
|
+
import * as i4 from "@angular/common";
|
|
10
|
+
import * as i5 from "@naniteninja/ionic-lib";
|
|
11
|
+
import * as i6 from "../../_pipes/votes.pipe";
|
|
11
12
|
export class CommentComponent {
|
|
12
|
-
router;
|
|
13
13
|
cdr;
|
|
14
14
|
commentImageService;
|
|
15
|
+
route;
|
|
16
|
+
navHelper;
|
|
15
17
|
libMenuItem;
|
|
16
18
|
commentsData;
|
|
17
19
|
ICONS = ICONS;
|
|
@@ -19,10 +21,11 @@ export class CommentComponent {
|
|
|
19
21
|
isOpen = false;
|
|
20
22
|
imageComponent = CommentImagesComponent;
|
|
21
23
|
//LIFE CYCLES
|
|
22
|
-
constructor(
|
|
23
|
-
this.router = router;
|
|
24
|
+
constructor(cdr, commentImageService, route, navHelper) {
|
|
24
25
|
this.cdr = cdr;
|
|
25
26
|
this.commentImageService = commentImageService;
|
|
27
|
+
this.route = route;
|
|
28
|
+
this.navHelper = navHelper;
|
|
26
29
|
}
|
|
27
30
|
ngOnInit() {
|
|
28
31
|
for (let i = 0; i < this.libMenuItem.length; i++) {
|
|
@@ -54,7 +57,7 @@ export class CommentComponent {
|
|
|
54
57
|
//NAVGIATIONS
|
|
55
58
|
handleUpdateComment() {
|
|
56
59
|
const id = this.commentsData[this.index].id;
|
|
57
|
-
this.
|
|
60
|
+
this.navHelper.navigate([ItinerariesRoutesEnum.COMMENTS_ROUTE, id], this.route);
|
|
58
61
|
}
|
|
59
62
|
upvote(index) {
|
|
60
63
|
this.commentsData[index].upVotes += 1;
|
|
@@ -63,20 +66,17 @@ export class CommentComponent {
|
|
|
63
66
|
this.commentsData[index].downVotes += 1;
|
|
64
67
|
}
|
|
65
68
|
RedirectToReplies() {
|
|
66
|
-
this.
|
|
67
|
-
ItinerariesRoutesEnum.ITINERARY,
|
|
68
|
-
ItinerariesRoutesEnum.COMMENT_REPLIES,
|
|
69
|
-
]);
|
|
69
|
+
this.navHelper.navigate([ItinerariesRoutesEnum.COMMENT_REPLIES], this.route);
|
|
70
70
|
}
|
|
71
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CommentComponent, deps: [{ token:
|
|
72
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: CommentComponent, selector: "app-comment", inputs: { libMenuItem: "libMenuItem", commentsData: "commentsData" }, ngImport: i0, template: "<ng-container *ngFor=\"let data of commentsData; let i = index\">\r\n <div class=\"comment-card text-white px-4 mb-4 rounded-xl w-full\">\r\n <div class=\"flex items-start justify-between\">\r\n <div class=\"flex space-x-3 mr-1\">\r\n <div>\r\n <img\r\n [src]=\"ICONS['user']\"\r\n loading=\"lazy\"\r\n alt=\"User\"\r\n class=\"comment-user rounded-full\"\r\n />\r\n <div class=\"flex flex-col items-center text-pink-500 mt-4\">\r\n <img\r\n [src]=\"ICONS['upvote']\"\r\n alt=\"Upvote\"\r\n class=\"cursor-pointer\"\r\n (click)=\"upvote(i)\"\r\n />\r\n <span class=\"normal-text-xs font-semibold text-pink-500\">{{\r\n data!.upVotes - data!.downVotes | votes\r\n }}</span>\r\n <img\r\n [src]=\"ICONS['downvote']\"\r\n alt=\"Downvote\"\r\n class=\"cursor-pointer\"\r\n (click)=\"downvote(i)\"\r\n />\r\n </div>\r\n </div>\r\n\r\n <div class=\"flex gap-[18px]\">\r\n <div class=\"flex flex-col\">\r\n <div>\r\n <p class=\"normal-text-sm normal-text\">\r\n {{ data?.userName }} - {{ data?.timeAgo }}\r\n {{ data.isEditted == true ? \"(Edited)\" : \"\" }}\r\n </p>\r\n <p class=\"normal-text-md text-white\">{{ data?.commentText }}</p>\r\n </div>\r\n <div\r\n *ngIf=\"data.hasAttachments === true\"\r\n class=\"grid grid-cols-2 gap-[3.5px] mt-3 mb-2\"\r\n >\r\n <ng-container *ngFor=\"let image of data?.attachments; let i = index\">\r\n <div class=\"relative\" *ngIf=\"i < 4\">\r\n <img\r\n [src]=\"image\"\r\n loading=\"lazy\"\r\n alt=\"Attachment\"\r\n (click)=\"showImage(data?.attachments!, i)\"\r\n class=\"w-full object-cover\"\r\n />\r\n <div\r\n *ngIf=\"i === 3 && data?.attachments\"\r\n class=\"absolute inset-0 bg-black bg-opacity-50 flex items-center justify-center text-white text-xl font-bold\"\r\n >\r\n +{{ i }}\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"flex items-center justify-between mt-3\">\r\n <div class=\"flex gap-8 text-gray-400 text-sm\">\r\n <button\r\n class=\"flex items-center space-x-1 hover:text-white normal-text-sm\"\r\n (click)=\"RedirectToReplies()\"\r\n >\r\n <img [src]=\"ICONS['comment2']\" alt=\"Reply\" />\r\n <p class=\"normal-text-sm\">Reply</p>\r\n </button>\r\n <button class=\"flex items-center space-x-1 hover:text-white normal-text-sm\">\r\n <img\r\n style=\"height: 10px; width: 10px\"\r\n [src]=\"ICONS['featured']\"\r\n alt=\"Feature\"\r\n />\r\n <p class=\"normal-text-sm\">Featured</p>\r\n </button>\r\n </div>\r\n </div>\r\n <p\r\n class=\"custom-pink mt-4 font-bold normal-text-sm cursor-pointer\"\r\n (click)=\"RedirectToReplies()\"\r\n >\r\n View Replies\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <lib-menu-btn\r\n (select)=\"handleMenueItemSelect()\"\r\n (click)=\"handleMenuClick(i)\"\r\n (change)=\"handleMenuItemChange()\"\r\n class=\"lib-menu-custom-class lib-menu-bg-none\"\r\n [disableTextShadow]=\"true\"\r\n [menuItems]=\"libMenuItem\"\r\n >\r\n <img [src]=\"ICONS['horizontalWhite']\" alt=\"\" />\r\n </lib-menu-btn>\r\n </div>\r\n\r\n\r\n\r\n <div class=\"border-t border-gray-700 mt-2\"></div>\r\n </div>\r\n</ng-container>\r\n\r\n<lib-popup\r\n [isOpen]=\"isOpen\"\r\n [modalComponent]=\"imageComponent\"\r\n [backdropDismiss]=\"true\"\r\n (afterCloseEvent)=\"close()\"\r\n>\r\n</lib-popup>\r\n", styles: [".comment-card .text-md{font-size:14px}.comment-card .text-sm{font-size:12px}.comment-card .text-xs{font-size:10px}.comment-card img{transition:opacity .2s}.comment-card img:hover{opacity:.8}.comment-card .custom-pink{margin-left:0;font-weight:700;color:#fe3c72}.comment-user{height:20px;width:20px}.grid img.object-cover{width:118.15;height:72.2}\n"], dependencies: [{ kind: "directive", type:
|
|
71
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CommentComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.CommentImageService }, { token: i2.ActivatedRoute }, { token: i3.NavigationHelperService }], target: i0.ɵɵFactoryTarget.Component });
|
|
72
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: CommentComponent, selector: "app-comment", inputs: { libMenuItem: "libMenuItem", commentsData: "commentsData" }, ngImport: i0, template: "<ng-container *ngFor=\"let data of commentsData; let i = index\">\r\n <div class=\"comment-card text-white px-4 mb-4 rounded-xl w-full\">\r\n <div class=\"flex items-start justify-between\">\r\n <div class=\"flex space-x-3 mr-1\">\r\n <div>\r\n <img\r\n [src]=\"ICONS['user']\"\r\n loading=\"lazy\"\r\n alt=\"User\"\r\n class=\"comment-user rounded-full\"\r\n />\r\n <div class=\"flex flex-col items-center text-pink-500 mt-4\">\r\n <img\r\n [src]=\"ICONS['upvote']\"\r\n alt=\"Upvote\"\r\n class=\"cursor-pointer\"\r\n (click)=\"upvote(i)\"\r\n />\r\n <span class=\"normal-text-xs font-semibold text-pink-500\">{{\r\n data!.upVotes - data!.downVotes | votes\r\n }}</span>\r\n <img\r\n [src]=\"ICONS['downvote']\"\r\n alt=\"Downvote\"\r\n class=\"cursor-pointer\"\r\n (click)=\"downvote(i)\"\r\n />\r\n </div>\r\n </div>\r\n\r\n <div class=\"flex gap-[18px]\">\r\n <div class=\"flex flex-col\">\r\n <div>\r\n <p class=\"normal-text-sm normal-text\">\r\n {{ data?.userName }} - {{ data?.timeAgo }}\r\n {{ data.isEditted == true ? \"(Edited)\" : \"\" }}\r\n </p>\r\n <p class=\"normal-text-md text-white\">{{ data?.commentText }}</p>\r\n </div>\r\n <div\r\n *ngIf=\"data.hasAttachments === true\"\r\n class=\"grid grid-cols-2 gap-[3.5px] mt-3 mb-2\"\r\n >\r\n <ng-container *ngFor=\"let image of data?.attachments; let i = index\">\r\n <div class=\"relative\" *ngIf=\"i < 4\">\r\n <img\r\n [src]=\"image\"\r\n loading=\"lazy\"\r\n alt=\"Attachment\"\r\n (click)=\"showImage(data?.attachments!, i)\"\r\n class=\"w-full object-cover\"\r\n />\r\n <div\r\n *ngIf=\"i === 3 && data?.attachments\"\r\n class=\"absolute inset-0 bg-black bg-opacity-50 flex items-center justify-center text-white text-xl font-bold\"\r\n >\r\n +{{ i }}\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"flex items-center justify-between mt-3\">\r\n <div class=\"flex gap-8 text-gray-400 text-sm\">\r\n <button\r\n class=\"flex items-center space-x-1 hover:text-white normal-text-sm\"\r\n (click)=\"RedirectToReplies()\"\r\n >\r\n <img [src]=\"ICONS['comment2']\" alt=\"Reply\" />\r\n <p class=\"normal-text-sm\">Reply</p>\r\n </button>\r\n <button class=\"flex items-center space-x-1 hover:text-white normal-text-sm\">\r\n <img\r\n style=\"height: 10px; width: 10px\"\r\n [src]=\"ICONS['featured']\"\r\n alt=\"Feature\"\r\n />\r\n <p class=\"normal-text-sm\">Featured</p>\r\n </button>\r\n </div>\r\n </div>\r\n <p\r\n class=\"custom-pink mt-4 font-bold normal-text-sm cursor-pointer\"\r\n (click)=\"RedirectToReplies()\"\r\n >\r\n View Replies\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <lib-menu-btn\r\n (select)=\"handleMenueItemSelect()\"\r\n (click)=\"handleMenuClick(i)\"\r\n (change)=\"handleMenuItemChange()\"\r\n class=\"lib-menu-custom-class lib-menu-bg-none\"\r\n [disableTextShadow]=\"true\"\r\n [menuItems]=\"libMenuItem\"\r\n >\r\n <img [src]=\"ICONS['horizontalWhite']\" alt=\"\" />\r\n </lib-menu-btn>\r\n </div>\r\n\r\n\r\n\r\n <div class=\"border-t border-gray-700 mt-2\"></div>\r\n </div>\r\n</ng-container>\r\n\r\n<lib-popup\r\n [isOpen]=\"isOpen\"\r\n [modalComponent]=\"imageComponent\"\r\n [backdropDismiss]=\"true\"\r\n (afterCloseEvent)=\"close()\"\r\n>\r\n</lib-popup>\r\n", styles: [".comment-card .text-md{font-size:14px}.comment-card .text-sm{font-size:12px}.comment-card .text-xs{font-size:10px}.comment-card img{transition:opacity .2s}.comment-card img:hover{opacity:.8}.comment-card .custom-pink{margin-left:0;font-weight:700;color:#fe3c72}.comment-user{height:20px;width:20px}.grid img.object-cover{width:118.15;height:72.2}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.MenuBtnComponent, selector: "lib-menu-btn", inputs: ["menuBtnIcon", "menuBtnTooltip", "menuBtnTooltipPosition", "menuBtnIconName", "menuBtnImgUrl", "menuBtnNotificationIconUrl", "menuDirection", "hasNotification", "menuItems", "disableTranslation", "listItem", "listItemIndex", "selectable", "overlayClass", "isUserMenu", "onlyCloseOnClickOutside", "hoverOutline", "disabled", "type", "form", "label", "showArrowIcon", "disableTextShadow", "loading$"] }, { kind: "component", type: i5.LibModalComponent, selector: "lib-popup", inputs: ["isOpen", "icon", "title", "message", "extendedMessage", "cancelButton", "confirmButton", "checkboxText", "progBarCurrentStep", "progBarTotalSteps", "customClass", "backdropDismiss", "modalComponent", "modalComponentData"], outputs: ["modalConfirm", "modalDismiss", "afterCloseEvent"] }, { kind: "pipe", type: i6.VotesPipe, name: "votes" }] });
|
|
73
73
|
}
|
|
74
74
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CommentComponent, decorators: [{
|
|
75
75
|
type: Component,
|
|
76
76
|
args: [{ selector: 'app-comment', standalone: false, template: "<ng-container *ngFor=\"let data of commentsData; let i = index\">\r\n <div class=\"comment-card text-white px-4 mb-4 rounded-xl w-full\">\r\n <div class=\"flex items-start justify-between\">\r\n <div class=\"flex space-x-3 mr-1\">\r\n <div>\r\n <img\r\n [src]=\"ICONS['user']\"\r\n loading=\"lazy\"\r\n alt=\"User\"\r\n class=\"comment-user rounded-full\"\r\n />\r\n <div class=\"flex flex-col items-center text-pink-500 mt-4\">\r\n <img\r\n [src]=\"ICONS['upvote']\"\r\n alt=\"Upvote\"\r\n class=\"cursor-pointer\"\r\n (click)=\"upvote(i)\"\r\n />\r\n <span class=\"normal-text-xs font-semibold text-pink-500\">{{\r\n data!.upVotes - data!.downVotes | votes\r\n }}</span>\r\n <img\r\n [src]=\"ICONS['downvote']\"\r\n alt=\"Downvote\"\r\n class=\"cursor-pointer\"\r\n (click)=\"downvote(i)\"\r\n />\r\n </div>\r\n </div>\r\n\r\n <div class=\"flex gap-[18px]\">\r\n <div class=\"flex flex-col\">\r\n <div>\r\n <p class=\"normal-text-sm normal-text\">\r\n {{ data?.userName }} - {{ data?.timeAgo }}\r\n {{ data.isEditted == true ? \"(Edited)\" : \"\" }}\r\n </p>\r\n <p class=\"normal-text-md text-white\">{{ data?.commentText }}</p>\r\n </div>\r\n <div\r\n *ngIf=\"data.hasAttachments === true\"\r\n class=\"grid grid-cols-2 gap-[3.5px] mt-3 mb-2\"\r\n >\r\n <ng-container *ngFor=\"let image of data?.attachments; let i = index\">\r\n <div class=\"relative\" *ngIf=\"i < 4\">\r\n <img\r\n [src]=\"image\"\r\n loading=\"lazy\"\r\n alt=\"Attachment\"\r\n (click)=\"showImage(data?.attachments!, i)\"\r\n class=\"w-full object-cover\"\r\n />\r\n <div\r\n *ngIf=\"i === 3 && data?.attachments\"\r\n class=\"absolute inset-0 bg-black bg-opacity-50 flex items-center justify-center text-white text-xl font-bold\"\r\n >\r\n +{{ i }}\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"flex items-center justify-between mt-3\">\r\n <div class=\"flex gap-8 text-gray-400 text-sm\">\r\n <button\r\n class=\"flex items-center space-x-1 hover:text-white normal-text-sm\"\r\n (click)=\"RedirectToReplies()\"\r\n >\r\n <img [src]=\"ICONS['comment2']\" alt=\"Reply\" />\r\n <p class=\"normal-text-sm\">Reply</p>\r\n </button>\r\n <button class=\"flex items-center space-x-1 hover:text-white normal-text-sm\">\r\n <img\r\n style=\"height: 10px; width: 10px\"\r\n [src]=\"ICONS['featured']\"\r\n alt=\"Feature\"\r\n />\r\n <p class=\"normal-text-sm\">Featured</p>\r\n </button>\r\n </div>\r\n </div>\r\n <p\r\n class=\"custom-pink mt-4 font-bold normal-text-sm cursor-pointer\"\r\n (click)=\"RedirectToReplies()\"\r\n >\r\n View Replies\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <lib-menu-btn\r\n (select)=\"handleMenueItemSelect()\"\r\n (click)=\"handleMenuClick(i)\"\r\n (change)=\"handleMenuItemChange()\"\r\n class=\"lib-menu-custom-class lib-menu-bg-none\"\r\n [disableTextShadow]=\"true\"\r\n [menuItems]=\"libMenuItem\"\r\n >\r\n <img [src]=\"ICONS['horizontalWhite']\" alt=\"\" />\r\n </lib-menu-btn>\r\n </div>\r\n\r\n\r\n\r\n <div class=\"border-t border-gray-700 mt-2\"></div>\r\n </div>\r\n</ng-container>\r\n\r\n<lib-popup\r\n [isOpen]=\"isOpen\"\r\n [modalComponent]=\"imageComponent\"\r\n [backdropDismiss]=\"true\"\r\n (afterCloseEvent)=\"close()\"\r\n>\r\n</lib-popup>\r\n", styles: [".comment-card .text-md{font-size:14px}.comment-card .text-sm{font-size:12px}.comment-card .text-xs{font-size:10px}.comment-card img{transition:opacity .2s}.comment-card img:hover{opacity:.8}.comment-card .custom-pink{margin-left:0;font-weight:700;color:#fe3c72}.comment-user{height:20px;width:20px}.grid img.object-cover{width:118.15;height:72.2}\n"] }]
|
|
77
|
-
}], ctorParameters: () => [{ type:
|
|
77
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.CommentImageService }, { type: i2.ActivatedRoute }, { type: i3.NavigationHelperService }], propDecorators: { libMenuItem: [{
|
|
78
78
|
type: Input
|
|
79
79
|
}], commentsData: [{
|
|
80
80
|
type: Input
|
|
81
81
|
}] } });
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pdGluZXJhcnktbGliL3NyYy9saWIvaXRpbmVyYXJ5LWFwcC9zaGFyZWQvY29tbWVudC9jb21tZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2l0aW5lcmFyeS1saWIvc3JjL2xpYi9pdGluZXJhcnktYXBwL3NoYXJlZC9jb21tZW50L2NvbW1lbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxLQUFLLEdBR04sTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFFbkYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7O0FBVzFFLE1BQU0sT0FBTyxnQkFBZ0I7SUFVakI7SUFDQTtJQUNBO0lBWEQsV0FBVyxDQUFpQjtJQUM1QixZQUFZLENBQThCO0lBQ25ELEtBQUssR0FBVSxLQUFLLENBQUM7SUFDckIsS0FBSyxHQUFXLENBQUMsQ0FBQztJQUNsQixNQUFNLEdBQVksS0FBSyxDQUFDO0lBQ3hCLGNBQWMsR0FBaUMsc0JBQXNCLENBQUM7SUFFdEUsYUFBYTtJQUNiLFlBQ1UsTUFBYyxFQUNkLEdBQXNCLEVBQ3RCLG1CQUF3QztRQUZ4QyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtJQUMvQyxDQUFDO0lBQ0osUUFBUTtRQUNOLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNoRCxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sR0FBRyxHQUFHLEVBQUU7Z0JBQ2pDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBQzdCLENBQUMsQ0FBQztTQUNIO0lBQ0gsQ0FBQztJQUVELFVBQVU7SUFDVixxQkFBcUIsS0FBVSxDQUFDO0lBQ2hDLG9CQUFvQixLQUFVLENBQUM7SUFDL0IsZUFBZSxDQUFDLENBQVM7UUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDakIsQ0FBQztJQUVELEtBQUssR0FBRyxHQUFTLEVBQUU7UUFDakIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDdEIsQ0FBQyxDQUFDO0lBRUYsU0FBUyxDQUFDLE1BQWdCLEVBQUUsWUFBb0I7UUFDOUMsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2YsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ2Q7UUFFRCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7WUFDbkIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7WUFDeEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssR0FBRyxZQUFZLENBQUM7WUFDOUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMzQixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDUixDQUFDO0lBRUQsYUFBYTtJQUNiLG1CQUFtQjtRQUNqQixNQUFNLEVBQUUsR0FBVyxJQUFJLENBQUMsWUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDckQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWE7UUFDbEIsSUFBSSxDQUFDLFlBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBYTtRQUNwQixJQUFJLENBQUMsWUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsSUFBSSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELGlCQUFpQjtRQUNmLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO1lBQ25CLHFCQUFxQixDQUFDLFNBQVM7WUFDL0IscUJBQXFCLENBQUMsZUFBZTtTQUN0QyxDQUFDLENBQUM7SUFDTCxDQUFDO3dHQWpFVSxnQkFBZ0I7NEZBQWhCLGdCQUFnQix5SEN0QjdCLDJ6SUFtSEE7OzRGRDdGYSxnQkFBZ0I7a0JBTjVCLFNBQVM7K0JBQ0ksYUFBYSxjQUdYLEtBQUs7NklBR1YsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG4gIFR5cGUsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7IFxyXG5pbXBvcnQgeyBDb21tZW50SW1hZ2VzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21tZW50LWltYWdlcy9jb21tZW50LWltYWdlcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMaWJNZW51SXRlbSB9IGZyb20gJ0BuYW5pdGVuaW5qYS9pb25pYy1saWInOyAgXHJcbmltcG9ydCB7IElDT05TIH0gZnJvbSAnLi4vLi4vX2NvbnN0YW50cy9jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBJdGluZXJhcmllc1JvdXRlc0VudW0gfSBmcm9tICcuLi8uLi9fZW51bXMvSXRlbmFyaWVzUm91dGVzLmVudW0nO1xyXG5pbXBvcnQgeyBJQ29tbWVudHNEYXRhIH0gZnJvbSAnLi4vLi4vX2ludGVyZmFjZS9jb21tZW50c2RhdGEnO1xyXG5pbXBvcnQgeyBJaWNvbiB9IGZyb20gJy4uLy4uL19pbnRlcmZhY2UvaWNvbic7XHJcbmltcG9ydCB7IENvbW1lbnRJbWFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9fc2VydmljZXMvY29tbWVudC1pbWFnZS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdhcHAtY29tbWVudCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vY29tbWVudC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybDogJy4vY29tbWVudC5jb21wb25lbnQuc2NzcycsXHJcbiAgICBzdGFuZGFsb25lOiBmYWxzZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29tbWVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgbGliTWVudUl0ZW0hOiBMaWJNZW51SXRlbVtdO1xyXG4gIEBJbnB1dCgpIGNvbW1lbnRzRGF0YTogSUNvbW1lbnRzRGF0YVtdIHwgdW5kZWZpbmVkO1xyXG4gIElDT05TOiBJaWNvbiA9IElDT05TO1xyXG4gIGluZGV4OiBudW1iZXIgPSAwO1xyXG4gIGlzT3BlbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGltYWdlQ29tcG9uZW50OiBUeXBlPENvbW1lbnRJbWFnZXNDb21wb25lbnQ+ID0gQ29tbWVudEltYWdlc0NvbXBvbmVudDtcclxuXHJcbiAgLy9MSUZFIENZQ0xFU1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgY29tbWVudEltYWdlU2VydmljZTogQ29tbWVudEltYWdlU2VydmljZSxcclxuICApIHt9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMubGliTWVudUl0ZW0ubGVuZ3RoOyBpKyspIHtcclxuICAgICAgdGhpcy5saWJNZW51SXRlbVtpXS5jb21tYW5kID0gKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuaGFuZGxlVXBkYXRlQ29tbWVudCgpO1xyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy9VSSBMT0dJQ1xyXG4gIGhhbmRsZU1lbnVlSXRlbVNlbGVjdCgpOiB2b2lkIHt9XHJcbiAgaGFuZGxlTWVudUl0ZW1DaGFuZ2UoKTogdm9pZCB7fVxyXG4gIGhhbmRsZU1lbnVDbGljayhpOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMuaW5kZXggPSBpO1xyXG4gIH1cclxuXHJcbiAgY2xvc2UgPSAoKTogdm9pZCA9PiB7XHJcbiAgICB0aGlzLmlzT3BlbiA9IGZhbHNlO1xyXG4gIH07XHJcblxyXG4gIHNob3dJbWFnZShpbWFnZXM6IHN0cmluZ1tdLCBjdXJyZW50SW5kZXg6IG51bWJlcik6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuaXNPcGVuKSB7XHJcbiAgICAgIHRoaXMuY2xvc2UoKTtcclxuICAgIH1cclxuXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5pc09wZW4gPSB0cnVlO1xyXG4gICAgICB0aGlzLmNvbW1lbnRJbWFnZVNlcnZpY2UuaW1hZ2UgPSBpbWFnZXM7XHJcbiAgICAgIHRoaXMuY29tbWVudEltYWdlU2VydmljZS5pbmRleCA9IGN1cnJlbnRJbmRleDtcclxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfSwgMCk7XHJcbiAgfVxyXG5cclxuICAvL05BVkdJQVRJT05TXHJcbiAgaGFuZGxlVXBkYXRlQ29tbWVudCgpIHtcclxuICAgIGNvbnN0IGlkOiBzdHJpbmcgPSB0aGlzLmNvbW1lbnRzRGF0YSFbdGhpcy5pbmRleF0uaWQ7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbSXRpbmVyYXJpZXNSb3V0ZXNFbnVtLkNPTU1FTlRTLCBpZF0pO1xyXG4gIH1cclxuXHJcbiAgdXB2b3RlKGluZGV4OiBudW1iZXIpIHtcclxuICAgIHRoaXMuY29tbWVudHNEYXRhIVtpbmRleF0udXBWb3RlcyArPSAxO1xyXG4gIH1cclxuXHJcbiAgZG93bnZvdGUoaW5kZXg6IG51bWJlcikge1xyXG4gICAgdGhpcy5jb21tZW50c0RhdGEhW2luZGV4XS5kb3duVm90ZXMgKz0gMTtcclxuICB9XHJcblxyXG4gIFJlZGlyZWN0VG9SZXBsaWVzKCkge1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1xyXG4gICAgICBJdGluZXJhcmllc1JvdXRlc0VudW0uSVRJTkVSQVJZLFxyXG4gICAgICBJdGluZXJhcmllc1JvdXRlc0VudW0uQ09NTUVOVF9SRVBMSUVTLFxyXG4gICAgXSk7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGRhdGEgb2YgY29tbWVudHNEYXRhOyBsZXQgaSA9IGluZGV4XCI+XHJcbiAgPGRpdiBjbGFzcz1cImNvbW1lbnQtY2FyZCB0ZXh0LXdoaXRlIHB4LTQgbWItNCByb3VuZGVkLXhsIHctZnVsbFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtc3RhcnQganVzdGlmeS1iZXR3ZWVuXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IHNwYWNlLXgtMyBtci0xXCI+XHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgIDxpbWdcclxuICAgICAgICAgICAgW3NyY109XCJJQ09OU1sndXNlciddXCJcclxuICAgICAgICAgICAgbG9hZGluZz1cImxhenlcIlxyXG4gICAgICAgICAgICBhbHQ9XCJVc2VyXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJjb21tZW50LXVzZXIgcm91bmRlZC1mdWxsXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBpdGVtcy1jZW50ZXIgdGV4dC1waW5rLTUwMCBtdC00XCI+XHJcbiAgICAgICAgICAgIDxpbWdcclxuICAgICAgICAgICAgICBbc3JjXT1cIklDT05TWyd1cHZvdGUnXVwiXHJcbiAgICAgICAgICAgICAgYWx0PVwiVXB2b3RlXCJcclxuICAgICAgICAgICAgICBjbGFzcz1cImN1cnNvci1wb2ludGVyXCJcclxuICAgICAgICAgICAgICAoY2xpY2spPVwidXB2b3RlKGkpXCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJub3JtYWwtdGV4dC14cyBmb250LXNlbWlib2xkIHRleHQtcGluay01MDBcIj57e1xyXG4gICAgICAgICAgICAgIGRhdGEhLnVwVm90ZXMgLSBkYXRhIS5kb3duVm90ZXMgfCB2b3Rlc1xyXG4gICAgICAgICAgICB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPGltZ1xyXG4gICAgICAgICAgICAgIFtzcmNdPVwiSUNPTlNbJ2Rvd252b3RlJ11cIlxyXG4gICAgICAgICAgICAgIGFsdD1cIkRvd252b3RlXCJcclxuICAgICAgICAgICAgICBjbGFzcz1cImN1cnNvci1wb2ludGVyXCJcclxuICAgICAgICAgICAgICAoY2xpY2spPVwiZG93bnZvdGUoaSlcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGdhcC1bMThweF1cIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sXCI+XHJcbiAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgPHAgY2xhc3M9XCJub3JtYWwtdGV4dC1zbSBub3JtYWwtdGV4dFwiPlxyXG4gICAgICAgICAgICAgICAge3sgZGF0YT8udXNlck5hbWUgfX0gLSB7eyBkYXRhPy50aW1lQWdvIH19XHJcbiAgICAgICAgICAgICAgICB7eyBkYXRhLmlzRWRpdHRlZCA9PSB0cnVlID8gXCIoRWRpdGVkKVwiIDogXCJcIiB9fVxyXG4gICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICA8cCBjbGFzcz1cIm5vcm1hbC10ZXh0LW1kIHRleHQtd2hpdGVcIj57eyBkYXRhPy5jb21tZW50VGV4dCB9fTwvcD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAqbmdJZj1cImRhdGEuaGFzQXR0YWNobWVudHMgPT09IHRydWVcIlxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiZ3JpZCBncmlkLWNvbHMtMiBnYXAtWzMuNXB4XSBtdC0zIG1iLTJcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaW1hZ2Ugb2YgZGF0YT8uYXR0YWNobWVudHM7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyZWxhdGl2ZVwiICpuZ0lmPVwiaSA8IDRcIj5cclxuICAgICAgICAgICAgICAgICAgPGltZ1xyXG4gICAgICAgICAgICAgICAgICAgIFtzcmNdPVwiaW1hZ2VcIlxyXG4gICAgICAgICAgICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCJcclxuICAgICAgICAgICAgICAgICAgICBhbHQ9XCJBdHRhY2htZW50XCJcclxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2hvd0ltYWdlKGRhdGE/LmF0dGFjaG1lbnRzISwgaSlcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidy1mdWxsIG9iamVjdC1jb3ZlclwiXHJcbiAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImkgPT09IDMgJiYgZGF0YT8uYXR0YWNobWVudHNcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWJzb2x1dGUgaW5zZXQtMCBiZy1ibGFjayBiZy1vcGFjaXR5LTUwIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHRleHQtd2hpdGUgdGV4dC14bCBmb250LWJvbGRcIlxyXG4gICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgK3t7IGkgfX1cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gbXQtM1wiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGdhcC04IHRleHQtZ3JheS00MDAgdGV4dC1zbVwiPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIHNwYWNlLXgtMSBob3Zlcjp0ZXh0LXdoaXRlIG5vcm1hbC10ZXh0LXNtXCJcclxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIlJlZGlyZWN0VG9SZXBsaWVzKClcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwiSUNPTlNbJ2NvbW1lbnQyJ11cIiBhbHQ9XCJSZXBseVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwibm9ybWFsLXRleHQtc21cIj5SZXBseTwvcD5cclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIHNwYWNlLXgtMSBob3Zlcjp0ZXh0LXdoaXRlIG5vcm1hbC10ZXh0LXNtXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpbWdcclxuICAgICAgICAgICAgICAgICAgICBzdHlsZT1cImhlaWdodDogMTBweDsgd2lkdGg6IDEwcHhcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtzcmNdPVwiSUNPTlNbJ2ZlYXR1cmVkJ11cIlxyXG4gICAgICAgICAgICAgICAgICAgIGFsdD1cIkZlYXR1cmVcIlxyXG4gICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cIm5vcm1hbC10ZXh0LXNtXCI+RmVhdHVyZWQ8L3A+XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxwXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJjdXN0b20tcGluayBtdC00IGZvbnQtYm9sZCBub3JtYWwtdGV4dC1zbSBjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cIlJlZGlyZWN0VG9SZXBsaWVzKClcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgVmlldyBSZXBsaWVzXHJcbiAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxsaWItbWVudS1idG5cclxuICAgICAgICAoc2VsZWN0KT1cImhhbmRsZU1lbnVlSXRlbVNlbGVjdCgpXCJcclxuICAgICAgICAoY2xpY2spPVwiaGFuZGxlTWVudUNsaWNrKGkpXCJcclxuICAgICAgICAoY2hhbmdlKT1cImhhbmRsZU1lbnVJdGVtQ2hhbmdlKClcIlxyXG4gICAgICAgIGNsYXNzPVwibGliLW1lbnUtY3VzdG9tLWNsYXNzIGxpYi1tZW51LWJnLW5vbmVcIlxyXG4gICAgICAgIFtkaXNhYmxlVGV4dFNoYWRvd109XCJ0cnVlXCJcclxuICAgICAgICBbbWVudUl0ZW1zXT1cImxpYk1lbnVJdGVtXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxpbWcgW3NyY109XCJJQ09OU1snaG9yaXpvbnRhbFdoaXRlJ11cIiBhbHQ9XCJcIiAvPlxyXG4gICAgICA8L2xpYi1tZW51LWJ0bj5cclxuICAgIDwvZGl2PlxyXG5cclxuXHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImJvcmRlci10IGJvcmRlci1ncmF5LTcwMCBtdC0yXCI+PC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvbmctY29udGFpbmVyPlxyXG5cclxuPGxpYi1wb3B1cFxyXG4gIFtpc09wZW5dPVwiaXNPcGVuXCJcclxuICBbbW9kYWxDb21wb25lbnRdPVwiaW1hZ2VDb21wb25lbnRcIlxyXG4gIFtiYWNrZHJvcERpc21pc3NdPVwidHJ1ZVwiXHJcbiAgKGFmdGVyQ2xvc2VFdmVudCk9XCJjbG9zZSgpXCJcclxuPlxyXG48L2xpYi1wb3B1cD5cclxuIl19
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pdGluZXJhcnktbGliL3NyYy9saWIvaXRpbmVyYXJ5LWFwcC9zaGFyZWQvY29tbWVudC9jb21tZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2l0aW5lcmFyeS1saWIvc3JjL2xpYi9pdGluZXJhcnktYXBwL3NoYXJlZC9jb21tZW50L2NvbW1lbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxLQUFLLEdBR04sTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFFbkYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7OztBQVkxRSxNQUFNLE9BQU8sZ0JBQWdCO0lBVWpCO0lBQ0E7SUFDQTtJQUNBO0lBWkQsV0FBVyxDQUFpQjtJQUM1QixZQUFZLENBQThCO0lBQ25ELEtBQUssR0FBVSxLQUFLLENBQUM7SUFDckIsS0FBSyxHQUFXLENBQUMsQ0FBQztJQUNsQixNQUFNLEdBQVksS0FBSyxDQUFDO0lBQ3hCLGNBQWMsR0FBaUMsc0JBQXNCLENBQUM7SUFFdEUsYUFBYTtJQUNiLFlBQ1UsR0FBc0IsRUFDdEIsbUJBQXdDLEVBQ3hDLEtBQXFCLEVBQ3JCLFNBQWtDO1FBSGxDLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3RCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsY0FBUyxHQUFULFNBQVMsQ0FBeUI7SUFDekMsQ0FBQztJQUNKLFFBQVE7UUFDTixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDaEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsR0FBRyxFQUFFO2dCQUNqQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztZQUM3QixDQUFDLENBQUM7U0FDSDtJQUNILENBQUM7SUFFRCxVQUFVO0lBQ1YscUJBQXFCLEtBQVUsQ0FBQztJQUNoQyxvQkFBb0IsS0FBVSxDQUFDO0lBQy9CLGVBQWUsQ0FBQyxDQUFTO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxLQUFLLEdBQUcsR0FBUyxFQUFFO1FBQ2pCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLENBQUMsQ0FBQztJQUVGLFNBQVMsQ0FBQyxNQUFnQixFQUFFLFlBQW9CO1FBQzlDLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNmLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUNkO1FBRUQsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1lBQ25CLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1lBQ3hDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDO1lBQzlDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ1IsQ0FBQztJQUVELGFBQWE7SUFDYixtQkFBbUI7UUFDakIsTUFBTSxFQUFFLEdBQVcsSUFBSSxDQUFDLFlBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3JELElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMscUJBQXFCLENBQUMsY0FBYyxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsRixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWE7UUFDbEIsSUFBSSxDQUFDLFlBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBYTtRQUNwQixJQUFJLENBQUMsWUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsSUFBSSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELGlCQUFpQjtRQUNmLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMscUJBQXFCLENBQUMsZUFBZSxDQUFDLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9FLENBQUM7d0dBL0RVLGdCQUFnQjs0RkFBaEIsZ0JBQWdCLHlIQ3ZCN0IsMnpJQW1IQTs7NEZENUZhLGdCQUFnQjtrQkFONUIsU0FBUzsrQkFDSSxhQUFhLGNBR1gsS0FBSzsyTEFHVixXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgVHlwZSxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInOyBcclxuaW1wb3J0IHsgQ29tbWVudEltYWdlc0NvbXBvbmVudCB9IGZyb20gJy4vY29tbWVudC1pbWFnZXMvY29tbWVudC1pbWFnZXMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTGliTWVudUl0ZW0gfSBmcm9tICdAbmFuaXRlbmluamEvaW9uaWMtbGliJzsgIFxyXG5pbXBvcnQgeyBJQ09OUyB9IGZyb20gJy4uLy4uL19jb25zdGFudHMvY29uc3RhbnRzJztcclxuaW1wb3J0IHsgSXRpbmVyYXJpZXNSb3V0ZXNFbnVtIH0gZnJvbSAnLi4vLi4vX2VudW1zL0l0ZW5hcmllc1JvdXRlcy5lbnVtJztcclxuaW1wb3J0IHsgSUNvbW1lbnRzRGF0YSB9IGZyb20gJy4uLy4uL19pbnRlcmZhY2UvY29tbWVudHNkYXRhJztcclxuaW1wb3J0IHsgSWljb24gfSBmcm9tICcuLi8uLi9faW50ZXJmYWNlL2ljb24nO1xyXG5pbXBvcnQgeyBDb21tZW50SW1hZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vX3NlcnZpY2VzL2NvbW1lbnQtaW1hZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IE5hdmlnYXRpb25IZWxwZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vX3NlcnZpY2VzL25hdmlnYXRpb24taGVscGVyLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2FwcC1jb21tZW50JyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9jb21tZW50LmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsOiAnLi9jb21tZW50LmNvbXBvbmVudC5zY3NzJyxcclxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb21tZW50Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBsaWJNZW51SXRlbSE6IExpYk1lbnVJdGVtW107XHJcbiAgQElucHV0KCkgY29tbWVudHNEYXRhOiBJQ29tbWVudHNEYXRhW10gfCB1bmRlZmluZWQ7XHJcbiAgSUNPTlM6IElpY29uID0gSUNPTlM7XHJcbiAgaW5kZXg6IG51bWJlciA9IDA7XHJcbiAgaXNPcGVuOiBib29sZWFuID0gZmFsc2U7XHJcbiAgaW1hZ2VDb21wb25lbnQ6IFR5cGU8Q29tbWVudEltYWdlc0NvbXBvbmVudD4gPSBDb21tZW50SW1hZ2VzQ29tcG9uZW50O1xyXG5cclxuICAvL0xJRkUgQ1lDTEVTXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIGNvbW1lbnRJbWFnZVNlcnZpY2U6IENvbW1lbnRJbWFnZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgIHByaXZhdGUgbmF2SGVscGVyOiBOYXZpZ2F0aW9uSGVscGVyU2VydmljZVxyXG4gICkge31cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5saWJNZW51SXRlbS5sZW5ndGg7IGkrKykge1xyXG4gICAgICB0aGlzLmxpYk1lbnVJdGVtW2ldLmNvbW1hbmQgPSAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5oYW5kbGVVcGRhdGVDb21tZW50KCk7XHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvL1VJIExPR0lDXHJcbiAgaGFuZGxlTWVudWVJdGVtU2VsZWN0KCk6IHZvaWQge31cclxuICBoYW5kbGVNZW51SXRlbUNoYW5nZSgpOiB2b2lkIHt9XHJcbiAgaGFuZGxlTWVudUNsaWNrKGk6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5pbmRleCA9IGk7XHJcbiAgfVxyXG5cclxuICBjbG9zZSA9ICgpOiB2b2lkID0+IHtcclxuICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7XHJcbiAgfTtcclxuXHJcbiAgc2hvd0ltYWdlKGltYWdlczogc3RyaW5nW10sIGN1cnJlbnRJbmRleDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5pc09wZW4pIHtcclxuICAgICAgdGhpcy5jbG9zZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLmlzT3BlbiA9IHRydWU7XHJcbiAgICAgIHRoaXMuY29tbWVudEltYWdlU2VydmljZS5pbWFnZSA9IGltYWdlcztcclxuICAgICAgdGhpcy5jb21tZW50SW1hZ2VTZXJ2aWNlLmluZGV4ID0gY3VycmVudEluZGV4O1xyXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9LCAwKTtcclxuICB9XHJcblxyXG4gIC8vTkFWR0lBVElPTlNcclxuICBoYW5kbGVVcGRhdGVDb21tZW50KCkge1xyXG4gICAgY29uc3QgaWQ6IHN0cmluZyA9IHRoaXMuY29tbWVudHNEYXRhIVt0aGlzLmluZGV4XS5pZDtcclxuICAgIHRoaXMubmF2SGVscGVyLm5hdmlnYXRlKFtJdGluZXJhcmllc1JvdXRlc0VudW0uQ09NTUVOVFNfUk9VVEUsIGlkXSwgdGhpcy5yb3V0ZSk7XHJcbiAgfVxyXG5cclxuICB1cHZvdGUoaW5kZXg6IG51bWJlcikge1xyXG4gICAgdGhpcy5jb21tZW50c0RhdGEhW2luZGV4XS51cFZvdGVzICs9IDE7XHJcbiAgfVxyXG5cclxuICBkb3dudm90ZShpbmRleDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmNvbW1lbnRzRGF0YSFbaW5kZXhdLmRvd25Wb3RlcyArPSAxO1xyXG4gIH1cclxuXHJcbiAgUmVkaXJlY3RUb1JlcGxpZXMoKSB7XHJcbiAgICB0aGlzLm5hdkhlbHBlci5uYXZpZ2F0ZShbSXRpbmVyYXJpZXNSb3V0ZXNFbnVtLkNPTU1FTlRfUkVQTElFU10sIHRoaXMucm91dGUpO1xyXG4gIH1cclxufVxyXG4iLCI8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBkYXRhIG9mIGNvbW1lbnRzRGF0YTsgbGV0IGkgPSBpbmRleFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJjb21tZW50LWNhcmQgdGV4dC13aGl0ZSBweC00IG1iLTQgcm91bmRlZC14bCB3LWZ1bGxcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLXN0YXJ0IGp1c3RpZnktYmV0d2VlblwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBzcGFjZS14LTMgbXItMVwiPlxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICA8aW1nXHJcbiAgICAgICAgICAgIFtzcmNdPVwiSUNPTlNbJ3VzZXInXVwiXHJcbiAgICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCJcclxuICAgICAgICAgICAgYWx0PVwiVXNlclwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiY29tbWVudC11c2VyIHJvdW5kZWQtZnVsbFwiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgaXRlbXMtY2VudGVyIHRleHQtcGluay01MDAgbXQtNFwiPlxyXG4gICAgICAgICAgICA8aW1nXHJcbiAgICAgICAgICAgICAgW3NyY109XCJJQ09OU1sndXB2b3RlJ11cIlxyXG4gICAgICAgICAgICAgIGFsdD1cIlVwdm90ZVwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInVwdm90ZShpKVwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibm9ybWFsLXRleHQteHMgZm9udC1zZW1pYm9sZCB0ZXh0LXBpbmstNTAwXCI+e3tcclxuICAgICAgICAgICAgICBkYXRhIS51cFZvdGVzIC0gZGF0YSEuZG93blZvdGVzIHwgdm90ZXNcclxuICAgICAgICAgICAgfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDxpbWdcclxuICAgICAgICAgICAgICBbc3JjXT1cIklDT05TWydkb3dudm90ZSddXCJcclxuICAgICAgICAgICAgICBhbHQ9XCJEb3dudm90ZVwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImRvd252b3RlKGkpXCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBnYXAtWzE4cHhdXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbFwiPlxyXG4gICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgIDxwIGNsYXNzPVwibm9ybWFsLXRleHQtc20gbm9ybWFsLXRleHRcIj5cclxuICAgICAgICAgICAgICAgIHt7IGRhdGE/LnVzZXJOYW1lIH19IC0ge3sgZGF0YT8udGltZUFnbyB9fVxyXG4gICAgICAgICAgICAgICAge3sgZGF0YS5pc0VkaXR0ZWQgPT0gdHJ1ZSA/IFwiKEVkaXRlZClcIiA6IFwiXCIgfX1cclxuICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgPHAgY2xhc3M9XCJub3JtYWwtdGV4dC1tZCB0ZXh0LXdoaXRlXCI+e3sgZGF0YT8uY29tbWVudFRleHQgfX08L3A+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgKm5nSWY9XCJkYXRhLmhhc0F0dGFjaG1lbnRzID09PSB0cnVlXCJcclxuICAgICAgICAgICAgICBjbGFzcz1cImdyaWQgZ3JpZC1jb2xzLTIgZ2FwLVszLjVweF0gbXQtMyBtYi0yXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGltYWdlIG9mIGRhdGE/LmF0dGFjaG1lbnRzOyBsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmVsYXRpdmVcIiAqbmdJZj1cImkgPCA0XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpbWdcclxuICAgICAgICAgICAgICAgICAgICBbc3JjXT1cImltYWdlXCJcclxuICAgICAgICAgICAgICAgICAgICBsb2FkaW5nPVwibGF6eVwiXHJcbiAgICAgICAgICAgICAgICAgICAgYWx0PVwiQXR0YWNobWVudFwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNob3dJbWFnZShkYXRhPy5hdHRhY2htZW50cyEsIGkpXCJcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInctZnVsbCBvYmplY3QtY292ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJpID09PSAzICYmIGRhdGE/LmF0dGFjaG1lbnRzXCJcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImFic29sdXRlIGluc2V0LTAgYmctYmxhY2sgYmctb3BhY2l0eS01MCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciB0ZXh0LXdoaXRlIHRleHQteGwgZm9udC1ib2xkXCJcclxuICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICt7eyBpIH19XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIG10LTNcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBnYXAtOCB0ZXh0LWdyYXktNDAwIHRleHQtc21cIj5cclxuICAgICAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTEgaG92ZXI6dGV4dC13aGl0ZSBub3JtYWwtdGV4dC1zbVwiXHJcbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCJSZWRpcmVjdFRvUmVwbGllcygpXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgPGltZyBbc3JjXT1cIklDT05TWydjb21tZW50MiddXCIgYWx0PVwiUmVwbHlcIiAvPlxyXG4gICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cIm5vcm1hbC10ZXh0LXNtXCI+UmVwbHk8L3A+XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTEgaG92ZXI6dGV4dC13aGl0ZSBub3JtYWwtdGV4dC1zbVwiPlxyXG4gICAgICAgICAgICAgICAgICA8aW1nXHJcbiAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJoZWlnaHQ6IDEwcHg7IHdpZHRoOiAxMHB4XCJcclxuICAgICAgICAgICAgICAgICAgICBbc3JjXT1cIklDT05TWydmZWF0dXJlZCddXCJcclxuICAgICAgICAgICAgICAgICAgICBhbHQ9XCJGZWF0dXJlXCJcclxuICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJub3JtYWwtdGV4dC1zbVwiPkZlYXR1cmVkPC9wPlxyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8cFxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiY3VzdG9tLXBpbmsgbXQtNCBmb250LWJvbGQgbm9ybWFsLXRleHQtc20gY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgICAgICAgICAgIChjbGljayk9XCJSZWRpcmVjdFRvUmVwbGllcygpXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIFZpZXcgUmVwbGllc1xyXG4gICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8bGliLW1lbnUtYnRuXHJcbiAgICAgICAgKHNlbGVjdCk9XCJoYW5kbGVNZW51ZUl0ZW1TZWxlY3QoKVwiXHJcbiAgICAgICAgKGNsaWNrKT1cImhhbmRsZU1lbnVDbGljayhpKVwiXHJcbiAgICAgICAgKGNoYW5nZSk9XCJoYW5kbGVNZW51SXRlbUNoYW5nZSgpXCJcclxuICAgICAgICBjbGFzcz1cImxpYi1tZW51LWN1c3RvbS1jbGFzcyBsaWItbWVudS1iZy1ub25lXCJcclxuICAgICAgICBbZGlzYWJsZVRleHRTaGFkb3ddPVwidHJ1ZVwiXHJcbiAgICAgICAgW21lbnVJdGVtc109XCJsaWJNZW51SXRlbVwiXHJcbiAgICAgID5cclxuICAgICAgICA8aW1nIFtzcmNdPVwiSUNPTlNbJ2hvcml6b250YWxXaGl0ZSddXCIgYWx0PVwiXCIgLz5cclxuICAgICAgPC9saWItbWVudS1idG4+XHJcbiAgICA8L2Rpdj5cclxuXHJcblxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJib3JkZXItdCBib3JkZXItZ3JheS03MDAgbXQtMlwiPjwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj5cclxuXHJcbjxsaWItcG9wdXBcclxuICBbaXNPcGVuXT1cImlzT3BlblwiXHJcbiAgW21vZGFsQ29tcG9uZW50XT1cImltYWdlQ29tcG9uZW50XCJcclxuICBbYmFja2Ryb3BEaXNtaXNzXT1cInRydWVcIlxyXG4gIChhZnRlckNsb3NlRXZlbnQpPVwiY2xvc2UoKVwiXHJcbj5cclxuPC9saWItcG9wdXA+XHJcbiJdfQ==
|