@hestia-earth/ui-components 0.27.20 → 0.27.22
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/bibliographies/bibliographies-search-confirm/bibliographies-search-confirm.component.d.ts +7 -5
- package/common/issue-confirm/issue-confirm.component.d.ts +8 -6
- package/common/maps-drawing-confirm/maps-drawing-confirm.component.d.ts +6 -4
- package/common/utils.d.ts +1 -1
- package/esm2022/bibliographies/bibliographies-search-confirm/bibliographies-search-confirm.component.mjs +15 -10
- package/esm2022/common/issue-confirm/issue-confirm.component.mjs +15 -9
- package/esm2022/common/maps-drawing-confirm/maps-drawing-confirm.component.mjs +10 -4
- package/esm2022/common/utils.mjs +4 -3
- package/esm2022/cycles/cycles-completeness/cycles-completeness.component.mjs +1 -1
- package/esm2022/cycles/cycles-nodes/cycles-nodes.component.mjs +2 -2
- package/esm2022/files/files-error.model.mjs +2 -2
- package/esm2022/files/files-form-editable/files-form-editable.component.mjs +2 -2
- package/esm2022/impact-assessments/impact-assessments-products/impact-assessments-products.component.mjs +2 -2
- package/esm2022/node/node-csv-export-confirm/node-csv-export-confirm.component.mjs +15 -9
- package/esm2022/sites/sites-nodes/sites-nodes.component.mjs +2 -2
- package/fesm2022/hestia-earth-ui-components.mjs +54 -33
- package/fesm2022/hestia-earth-ui-components.mjs.map +1 -1
- package/node/node-csv-export-confirm/node-csv-export-confirm.component.d.ts +9 -7
- package/package.json +1 -1
- package/svg-icons/bell.svg +12 -0
- package/svg-icons/checkmark-circle.svg +5 -0
- package/svg-icons/exclamation-triangle.svg +12 -0
- package/svg-icons/file-indexed.svg +20 -0
- package/svg-icons/file-progress.svg +5 -0
- package/svg-icons/file-review.svg +22 -0
- package/svg-icons/google-outlined.svg +3 -0
- package/svg-icons/guide.svg +9 -0
- package/svg-icons/icons.json +40 -0
- package/svg-icons/linkedin-outlined.svg +3 -0
- package/svg-icons/orcid-outlined.svg +13 -0
package/bibliographies/bibliographies-search-confirm/bibliographies-search-confirm.component.d.ts
CHANGED
|
@@ -6,13 +6,14 @@ export declare class BibliographiesSearchConfirmComponent {
|
|
|
6
6
|
private formBuilder;
|
|
7
7
|
private mendeleyService;
|
|
8
8
|
private searchService;
|
|
9
|
+
private readonly activeModal;
|
|
9
10
|
protected readonly faTimes: import("@fortawesome/fontawesome-common-types").IconDefinition;
|
|
10
11
|
protected readonly faSpinner: import("@fortawesome/fontawesome-common-types").IconDefinition;
|
|
11
12
|
protected readonly faExternalLinkAlt: import("@fortawesome/fontawesome-common-types").IconDefinition;
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
search: import("@angular/core").ModelSignal<string>;
|
|
14
|
+
searchSources: import("@angular/core").ModelSignal<boolean>;
|
|
15
|
+
searchBibliographies: import("@angular/core").ModelSignal<boolean>;
|
|
16
|
+
searchBy: import("@angular/core").ModelSignal<searchByFields>;
|
|
16
17
|
private searchLimit;
|
|
17
18
|
protected closed: import("@angular/core").OutputEmitterRef<Result>;
|
|
18
19
|
protected loading: import("@angular/core").WritableSignal<boolean>;
|
|
@@ -30,7 +31,8 @@ export declare class BibliographiesSearchConfirmComponent {
|
|
|
30
31
|
protected resetSearch(): void;
|
|
31
32
|
protected confirm(): void;
|
|
32
33
|
protected cancel(): void;
|
|
34
|
+
protected close(value: any): void;
|
|
33
35
|
static ɵfac: i0.ɵɵFactoryDeclaration<BibliographiesSearchConfirmComponent, never>;
|
|
34
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<BibliographiesSearchConfirmComponent, "he-bibliographies-search-confirm", never, { "search": { "alias": "search"; "required": false; "isSignal": true; }; "searchSources": { "alias": "searchSources"; "required": false; "isSignal": true; }; "searchBibliographies": { "alias": "searchBibliographies"; "required": false; "isSignal": true; }; "searchBy": { "alias": "searchBy"; "required": false; "isSignal": true; }; }, { "closed": "closed"; }, never, never, true, never>;
|
|
36
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<BibliographiesSearchConfirmComponent, "he-bibliographies-search-confirm", never, { "search": { "alias": "search"; "required": false; "isSignal": true; }; "searchSources": { "alias": "searchSources"; "required": false; "isSignal": true; }; "searchBibliographies": { "alias": "searchBibliographies"; "required": false; "isSignal": true; }; "searchBy": { "alias": "searchBy"; "required": false; "isSignal": true; }; }, { "search": "searchChange"; "searchSources": "searchSourcesChange"; "searchBibliographies": "searchBibliographiesChange"; "searchBy": "searchByChange"; "closed": "closed"; }, never, never, true, never>;
|
|
35
37
|
}
|
|
36
38
|
export {};
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { Repository, Template } from '../utils';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export declare class IssueConfirmComponent {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
private readonly activeModal;
|
|
5
|
+
title: import("@angular/core").ModelSignal<string>;
|
|
6
|
+
repository: import("@angular/core").ModelSignal<Repository>;
|
|
7
|
+
template: import("@angular/core").ModelSignal<Template>;
|
|
8
|
+
isCommunity: import("@angular/core").ModelSignal<boolean>;
|
|
9
|
+
protected closed: import("@angular/core").OutputEmitterRef<void>;
|
|
9
10
|
protected Repository: typeof Repository;
|
|
10
11
|
protected Template: typeof Template;
|
|
11
12
|
protected repositories: import("@angular/core").Signal<Repository[]>;
|
|
@@ -13,6 +14,7 @@ export declare class IssueConfirmComponent {
|
|
|
13
14
|
protected selectedRepository: import("@angular/core").WritableSignal<Repository>;
|
|
14
15
|
protected selectedTemplate: import("@angular/core").WritableSignal<Template>;
|
|
15
16
|
constructor();
|
|
17
|
+
protected close(): void;
|
|
16
18
|
static ɵfac: i0.ɵɵFactoryDeclaration<IssueConfirmComponent, never>;
|
|
17
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<IssueConfirmComponent, "he-issue-confirm", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "repository": { "alias": "repository"; "required": false; "isSignal": true; }; "template": { "alias": "template"; "required": false; "isSignal": true; }; "isCommunity": { "alias": "isCommunity"; "required": false; "isSignal": true; }; }, { "closed": "closed"; }, never, never, true, never>;
|
|
19
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<IssueConfirmComponent, "he-issue-confirm", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "repository": { "alias": "repository"; "required": false; "isSignal": true; }; "template": { "alias": "template"; "required": false; "isSignal": true; }; "isCommunity": { "alias": "isCommunity"; "required": false; "isSignal": true; }; }, { "title": "titleChange"; "repository": "repositoryChange"; "template": "templateChange"; "isCommunity": "isCommunityChange"; "closed": "closed"; }, never, never, true, never>;
|
|
18
20
|
}
|
|
@@ -4,19 +4,20 @@ import * as i0 from "@angular/core";
|
|
|
4
4
|
export declare class MapsDrawingConfirmComponent implements OnInit, OnDestroy {
|
|
5
5
|
private destroyRef;
|
|
6
6
|
protected mapLoaded$: import("rxjs").Observable<boolean>;
|
|
7
|
+
private readonly activeModal;
|
|
7
8
|
protected readonly faTimes: import("@fortawesome/fontawesome-common-types").IconDefinition;
|
|
8
9
|
private listeners;
|
|
9
10
|
private shapes;
|
|
10
11
|
private feature?;
|
|
11
12
|
private coordinates?;
|
|
12
13
|
private map?;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
value?: string;
|
|
15
|
+
modes?: google.maps.drawing.OverlayType[];
|
|
16
|
+
center: {
|
|
16
17
|
lat: number;
|
|
17
18
|
lng: number;
|
|
18
19
|
};
|
|
19
|
-
|
|
20
|
+
zoom: number;
|
|
20
21
|
protected closed: import("@angular/core").OutputEmitterRef<string | google.maps.LatLngLiteral>;
|
|
21
22
|
protected options: import("@angular/core").WritableSignal<google.maps.MapOptions>;
|
|
22
23
|
constructor();
|
|
@@ -28,6 +29,7 @@ export declare class MapsDrawingConfirmComponent implements OnInit, OnDestroy {
|
|
|
28
29
|
protected mapInitialized(): void;
|
|
29
30
|
protected confirm(): void;
|
|
30
31
|
protected clear(): void;
|
|
32
|
+
protected close(value: google.maps.LatLngLiteral | string): void;
|
|
31
33
|
static ɵfac: i0.ɵɵFactoryDeclaration<MapsDrawingConfirmComponent, never>;
|
|
32
34
|
static ɵcmp: i0.ɵɵComponentDeclaration<MapsDrawingConfirmComponent, "he-maps-drawing-confirm", never, { "value": { "alias": "value"; "required": false; }; "modes": { "alias": "modes"; "required": false; }; "center": { "alias": "center"; "required": false; }; "zoom": { "alias": "zoom"; "required": false; }; }, { "closed": "closed"; }, never, never, true, never>;
|
|
33
35
|
}
|
package/common/utils.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ export declare const isChrome: () => boolean;
|
|
|
4
4
|
export declare const baseUrl: () => string;
|
|
5
5
|
export declare const baseApiUrl: () => string;
|
|
6
6
|
export declare const isExternal: () => boolean;
|
|
7
|
-
export declare const handleAPIError: (
|
|
7
|
+
export declare const handleAPIError: (err: any) => never;
|
|
8
8
|
export declare const errorText: (error: any) => string;
|
|
9
9
|
export declare const filterParams: (obj: any) => {
|
|
10
10
|
[x: string]: string;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Component, ChangeDetectionStrategy, inject,
|
|
1
|
+
import { Component, ChangeDetectionStrategy, inject, model, effect, signal, computed, output } from '@angular/core';
|
|
2
2
|
import { toSignal } from '@angular/core/rxjs-interop';
|
|
3
3
|
import { UntypedFormBuilder, Validators, FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
4
4
|
import { NgTemplateOutlet } from '@angular/common';
|
|
5
|
-
import { NgbHighlight } from '@ng-bootstrap/ng-bootstrap';
|
|
5
|
+
import { NgbActiveModal, NgbHighlight } from '@ng-bootstrap/ng-bootstrap';
|
|
6
6
|
import { FaIconComponent } from '@fortawesome/angular-fontawesome';
|
|
7
7
|
import { faExternalLinkAlt, faSpinner, faTimes } from '@fortawesome/free-solid-svg-icons';
|
|
8
8
|
import { catchError, debounceTime, distinctUntilChanged, map, switchMap, tap } from 'rxjs/operators';
|
|
@@ -17,13 +17,14 @@ export class BibliographiesSearchConfirmComponent {
|
|
|
17
17
|
this.formBuilder = inject(UntypedFormBuilder);
|
|
18
18
|
this.mendeleyService = inject(HeMendeleyService);
|
|
19
19
|
this.searchService = inject(HeSearchService);
|
|
20
|
+
this.activeModal = inject(NgbActiveModal, { optional: true });
|
|
20
21
|
this.faTimes = faTimes;
|
|
21
22
|
this.faSpinner = faSpinner;
|
|
22
23
|
this.faExternalLinkAlt = faExternalLinkAlt;
|
|
23
|
-
this.search =
|
|
24
|
-
this.searchSources =
|
|
25
|
-
this.searchBibliographies =
|
|
26
|
-
this.searchBy =
|
|
24
|
+
this.search = model('');
|
|
25
|
+
this.searchSources = model(true);
|
|
26
|
+
this.searchBibliographies = model(true);
|
|
27
|
+
this.searchBy = model('title');
|
|
27
28
|
this.searchLimit = computed(() => limit / ([this.searchSources(), this.searchBibliographies()].filter(Boolean).length || 1));
|
|
28
29
|
this.closed = output();
|
|
29
30
|
this.loading = signal(true);
|
|
@@ -72,16 +73,20 @@ export class BibliographiesSearchConfirmComponent {
|
|
|
72
73
|
this.searchControl.setValue('');
|
|
73
74
|
}
|
|
74
75
|
confirm() {
|
|
75
|
-
this.
|
|
76
|
+
return this.close(this.selectedResult());
|
|
76
77
|
}
|
|
77
78
|
cancel() {
|
|
78
|
-
this.
|
|
79
|
+
return this.close(null);
|
|
80
|
+
}
|
|
81
|
+
close(value) {
|
|
82
|
+
this.closed.emit(value);
|
|
83
|
+
this.activeModal?.close(value);
|
|
79
84
|
}
|
|
80
85
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: BibliographiesSearchConfirmComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
81
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: BibliographiesSearchConfirmComponent, isStandalone: true, selector: "he-bibliographies-search-confirm", inputs: { search: { classPropertyName: "search", publicName: "search", isSignal: true, isRequired: false, transformFunction: null }, searchSources: { classPropertyName: "searchSources", publicName: "searchSources", isSignal: true, isRequired: false, transformFunction: null }, searchBibliographies: { classPropertyName: "searchBibliographies", publicName: "searchBibliographies", isSignal: true, isRequired: false, transformFunction: null }, searchBy: { classPropertyName: "searchBy", publicName: "searchBy", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closed: "closed" }, ngImport: i0, template: "<div class=\"modal is-large is-active\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-card\">\n <header class=\"modal-card-head\">\n <p class=\"modal-card-title\">Search Bibliographies</p>\n <button class=\"delete\" aria-label=\"close\" (click)=\"cancel()\"></button>\n </header>\n <section class=\"modal-card-body\">\n <form [formGroup]=\"formGroup\" novalidate>\n <div class=\"field has-addons\">\n <div class=\"control is-expanded has-icons-right\">\n <input\n class=\"input search-input\"\n [attr.placeholder]=\"'Search bibliography by ' + searchBy()\"\n formControlName=\"search\"\n name=\"bibliography\"\n autocomplete=\"off\"\n (focus)=\"searchFocus($event)\" />\n <a class=\"icon is-small is-right\" [class.is-hidden]=\"loading()\" (click)=\"resetSearch()\">\n <fa-icon [icon]=\"faTimes\"></fa-icon>\n </a>\n\n <span class=\"icon is-right has-text-grey-dark\" [class.is-hidden]=\"!loading()\">\n <fa-icon [icon]=\"faSpinner\" [pulse]=\"true\" size=\"sm\"></fa-icon>\n </span>\n </div>\n </div>\n </form>\n\n <div class=\"is-mt-2\">\n <span [class.is-hidden]=\"loading() || !searchControl?.value || hasResults()\">\n No bibliographies found matching query.\n </span>\n\n <ul>\n @for (result of results(); track result) {\n <li>\n <a\n class=\"is-block p-1 search-result\"\n (click)=\"selectedResult.set(result)\"\n [class.is-active]=\"selectedResult() === result\">\n <ngb-highlight\n [result]=\"result.bibliography?.title ?? result.title\"\n [term]=\"searchControl?.value\"></ngb-highlight>\n <span class=\"px-1\">-</span>\n <span class=\"px-1\">\n <i>{{ result.name }}</i>\n </span>\n @if (result.bibliography?.documentDOI || result.documentDOI) {\n <span class=\"px-1\">\n -\n <b>documentDOI:</b>\n </span>\n }\n <ngb-highlight\n [result]=\"result.bibliography?.documentDOI ?? result.documentDOI\"\n [term]=\"searchControl?.value\"></ngb-highlight>\n @if (result.bibliography?.scopus || result.scopus) {\n <span class=\"px-1\">\n -\n <b>scopus:</b>\n </span>\n }\n <ngb-highlight\n [result]=\"result.bibliography?.scopus ?? result.scopus\"\n [term]=\"searchControl?.value\"></ngb-highlight>\n <span>\n <ng-container\n *ngTemplateOutlet=\"\n mendeleyLink;\n context: { $implicit: result.bibliography?.mendeleyID ?? result.mendeleyID }\n \"></ng-container>\n </span>\n </a>\n </li>\n }\n </ul>\n </div>\n </section>\n <footer class=\"modal-card-foot\">\n <button class=\"button is-primary\" (click)=\"confirm()\" [disabled]=\"!selectedResult()\">\n <span>Confirm</span>\n </button>\n <button class=\"button is-ghost\" (click)=\"cancel()\">\n <span>Close</span>\n </button>\n </footer>\n </div>\n</div>\n\n<ng-template #mendeleyLink let-id>\n @if (id) {\n <a [href]=\"'https://www.mendeley.com/catalogue/' + id\" target=\"_blank\" (click)=\"$event.stopPropagation()\">\n <fa-icon class=\"ml-2\" [icon]=\"faExternalLinkAlt\" size=\"sm\"></fa-icon>\n </a>\n }\n</ng-template>\n", styles: ["ngb-highlight,span{vertical-align:middle;white-space:normal;width:auto}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "component", type: NgbHighlight, selector: "ngb-highlight", inputs: ["highlightClass", "result", "term", "accentSensitive"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
86
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: BibliographiesSearchConfirmComponent, isStandalone: true, selector: "he-bibliographies-search-confirm", inputs: { search: { classPropertyName: "search", publicName: "search", isSignal: true, isRequired: false, transformFunction: null }, searchSources: { classPropertyName: "searchSources", publicName: "searchSources", isSignal: true, isRequired: false, transformFunction: null }, searchBibliographies: { classPropertyName: "searchBibliographies", publicName: "searchBibliographies", isSignal: true, isRequired: false, transformFunction: null }, searchBy: { classPropertyName: "searchBy", publicName: "searchBy", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { search: "searchChange", searchSources: "searchSourcesChange", searchBibliographies: "searchBibliographiesChange", searchBy: "searchByChange", closed: "closed" }, ngImport: i0, template: "<div class=\"modal is-large is-active\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-card\">\n <header class=\"modal-card-head\">\n <p class=\"modal-card-title\">Search Bibliographies</p>\n <button class=\"delete\" aria-label=\"close\" (click)=\"cancel()\"></button>\n </header>\n <section class=\"modal-card-body\">\n <form [formGroup]=\"formGroup\" novalidate>\n <div class=\"field has-addons\">\n <div class=\"control is-expanded has-icons-right\">\n <input\n class=\"input search-input\"\n [attr.placeholder]=\"'Search bibliography by ' + searchBy()\"\n formControlName=\"search\"\n name=\"bibliography\"\n autocomplete=\"off\"\n (focus)=\"searchFocus($event)\" />\n <a class=\"icon is-small is-right\" [class.is-hidden]=\"loading()\" (click)=\"resetSearch()\">\n <fa-icon [icon]=\"faTimes\"></fa-icon>\n </a>\n\n <span class=\"icon is-right has-text-grey-dark\" [class.is-hidden]=\"!loading()\">\n <fa-icon [icon]=\"faSpinner\" [pulse]=\"true\" size=\"sm\"></fa-icon>\n </span>\n </div>\n </div>\n </form>\n\n <div class=\"is-mt-2\">\n <span [class.is-hidden]=\"loading() || !searchControl?.value || hasResults()\">\n No bibliographies found matching query.\n </span>\n\n <ul>\n @for (result of results(); track result) {\n <li>\n <a\n class=\"is-block p-1 search-result\"\n (click)=\"selectedResult.set(result)\"\n [class.is-active]=\"selectedResult() === result\">\n <ngb-highlight\n [result]=\"result.bibliography?.title ?? result.title\"\n [term]=\"searchControl?.value\"></ngb-highlight>\n <span class=\"px-1\">-</span>\n <span class=\"px-1\">\n <i>{{ result.name }}</i>\n </span>\n @if (result.bibliography?.documentDOI || result.documentDOI) {\n <span class=\"px-1\">\n -\n <b>documentDOI:</b>\n </span>\n }\n <ngb-highlight\n [result]=\"result.bibliography?.documentDOI ?? result.documentDOI\"\n [term]=\"searchControl?.value\"></ngb-highlight>\n @if (result.bibliography?.scopus || result.scopus) {\n <span class=\"px-1\">\n -\n <b>scopus:</b>\n </span>\n }\n <ngb-highlight\n [result]=\"result.bibliography?.scopus ?? result.scopus\"\n [term]=\"searchControl?.value\"></ngb-highlight>\n <span>\n <ng-container\n *ngTemplateOutlet=\"\n mendeleyLink;\n context: { $implicit: result.bibliography?.mendeleyID ?? result.mendeleyID }\n \"></ng-container>\n </span>\n </a>\n </li>\n }\n </ul>\n </div>\n </section>\n <footer class=\"modal-card-foot\">\n <button class=\"button is-primary\" (click)=\"confirm()\" [disabled]=\"!selectedResult()\">\n <span>Confirm</span>\n </button>\n <button class=\"button is-ghost\" (click)=\"cancel()\">\n <span>Close</span>\n </button>\n </footer>\n </div>\n</div>\n\n<ng-template #mendeleyLink let-id>\n @if (id) {\n <a [href]=\"'https://www.mendeley.com/catalogue/' + id\" target=\"_blank\" (click)=\"$event.stopPropagation()\">\n <fa-icon class=\"ml-2\" [icon]=\"faExternalLinkAlt\" size=\"sm\"></fa-icon>\n </a>\n }\n</ng-template>\n", styles: ["ngb-highlight,span{vertical-align:middle;white-space:normal;width:auto}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "component", type: NgbHighlight, selector: "ngb-highlight", inputs: ["highlightClass", "result", "term", "accentSensitive"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
82
87
|
}
|
|
83
88
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: BibliographiesSearchConfirmComponent, decorators: [{
|
|
84
89
|
type: Component,
|
|
85
90
|
args: [{ selector: 'he-bibliographies-search-confirm', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [FormsModule, ReactiveFormsModule, FaIconComponent, NgbHighlight, NgTemplateOutlet], template: "<div class=\"modal is-large is-active\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-card\">\n <header class=\"modal-card-head\">\n <p class=\"modal-card-title\">Search Bibliographies</p>\n <button class=\"delete\" aria-label=\"close\" (click)=\"cancel()\"></button>\n </header>\n <section class=\"modal-card-body\">\n <form [formGroup]=\"formGroup\" novalidate>\n <div class=\"field has-addons\">\n <div class=\"control is-expanded has-icons-right\">\n <input\n class=\"input search-input\"\n [attr.placeholder]=\"'Search bibliography by ' + searchBy()\"\n formControlName=\"search\"\n name=\"bibliography\"\n autocomplete=\"off\"\n (focus)=\"searchFocus($event)\" />\n <a class=\"icon is-small is-right\" [class.is-hidden]=\"loading()\" (click)=\"resetSearch()\">\n <fa-icon [icon]=\"faTimes\"></fa-icon>\n </a>\n\n <span class=\"icon is-right has-text-grey-dark\" [class.is-hidden]=\"!loading()\">\n <fa-icon [icon]=\"faSpinner\" [pulse]=\"true\" size=\"sm\"></fa-icon>\n </span>\n </div>\n </div>\n </form>\n\n <div class=\"is-mt-2\">\n <span [class.is-hidden]=\"loading() || !searchControl?.value || hasResults()\">\n No bibliographies found matching query.\n </span>\n\n <ul>\n @for (result of results(); track result) {\n <li>\n <a\n class=\"is-block p-1 search-result\"\n (click)=\"selectedResult.set(result)\"\n [class.is-active]=\"selectedResult() === result\">\n <ngb-highlight\n [result]=\"result.bibliography?.title ?? result.title\"\n [term]=\"searchControl?.value\"></ngb-highlight>\n <span class=\"px-1\">-</span>\n <span class=\"px-1\">\n <i>{{ result.name }}</i>\n </span>\n @if (result.bibliography?.documentDOI || result.documentDOI) {\n <span class=\"px-1\">\n -\n <b>documentDOI:</b>\n </span>\n }\n <ngb-highlight\n [result]=\"result.bibliography?.documentDOI ?? result.documentDOI\"\n [term]=\"searchControl?.value\"></ngb-highlight>\n @if (result.bibliography?.scopus || result.scopus) {\n <span class=\"px-1\">\n -\n <b>scopus:</b>\n </span>\n }\n <ngb-highlight\n [result]=\"result.bibliography?.scopus ?? result.scopus\"\n [term]=\"searchControl?.value\"></ngb-highlight>\n <span>\n <ng-container\n *ngTemplateOutlet=\"\n mendeleyLink;\n context: { $implicit: result.bibliography?.mendeleyID ?? result.mendeleyID }\n \"></ng-container>\n </span>\n </a>\n </li>\n }\n </ul>\n </div>\n </section>\n <footer class=\"modal-card-foot\">\n <button class=\"button is-primary\" (click)=\"confirm()\" [disabled]=\"!selectedResult()\">\n <span>Confirm</span>\n </button>\n <button class=\"button is-ghost\" (click)=\"cancel()\">\n <span>Close</span>\n </button>\n </footer>\n </div>\n</div>\n\n<ng-template #mendeleyLink let-id>\n @if (id) {\n <a [href]=\"'https://www.mendeley.com/catalogue/' + id\" target=\"_blank\" (click)=\"$event.stopPropagation()\">\n <fa-icon class=\"ml-2\" [icon]=\"faExternalLinkAlt\" size=\"sm\"></fa-icon>\n </a>\n }\n</ng-template>\n", styles: ["ngb-highlight,span{vertical-align:middle;white-space:normal;width:auto}\n"] }]
|
|
86
91
|
}], ctorParameters: () => [] });
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlibGlvZ3JhcGhpZXMtc2VhcmNoLWNvbmZpcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JpYmxpb2dyYXBoaWVzL2JpYmxpb2dyYXBoaWVzLXNlYXJjaC1jb25maXJtL2JpYmxpb2dyYXBoaWVzLXNlYXJjaC1jb25maXJtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9iaWJsaW9ncmFwaGllcy9iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybS9iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BILE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMxRixPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JHLE9BQU8sRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxD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Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgaW5qZWN0LCBpbnB1dCwgZWZmZWN0LCBzaWduYWwsIGNvbXB1dGVkLCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1CdWlsZGVyLCBWYWxpZGF0b3JzLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdiSGlnaGxpZ2h0IH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgRmFJY29uQ29tcG9uZW50IH0gZnJvbSAnQGZvcnRhd2Vzb21lL2FuZ3VsYXItZm9udGF3ZXNvbWUnO1xuaW1wb3J0IHsgZmFFeHRlcm5hbExpbmtBbHQsIGZhU3Bpbm5lciwgZmFUaW1lcyB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgb2YsIHppcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQmlibGlvZ3JhcGh5LCBTb3VyY2UgfSBmcm9tICdAaGVzdGlhLWVhcnRoL3NjaGVtYSc7XG5cbmltcG9ydCB7IEhlTWVuZGVsZXlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vbWVuZGVsZXkvbWVuZGVsZXkuc2VydmljZSc7XG5pbXBvcnQgeyBIZVNlYXJjaFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZWFyY2gvc2VhcmNoLnNlcnZpY2UnO1xuXG50eXBlIHNlYXJjaEJ5RmllbGRzID0gJ3RpdGxlJyB8ICdkb2N1bWVudERPSScgfCAnc2NvcHVzJztcbnR5cGUgUmVzdWx0ID0gUGFydGlhbDxTb3VyY2U+IHwgUGFydGlhbDxCaWJsaW9ncmFwaHk+O1xuY29uc3QgbGltaXQgPSAxMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaGUtYmlibGlvZ3JhcGhpZXMtc2VhcmNoLWNvbmZpcm0nLFxuICB0ZW1wbGF0ZVVybDogJy4vYmlibGlvZ3JhcGhpZXMtc2VhcmNoLWNvbmZpcm0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0Zvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBGYUljb25Db21wb25lbnQsIE5nYkhpZ2hsaWdodCwgTmdUZW1wbGF0ZU91dGxldF1cbn0pXG5leHBvcnQgY2xhc3MgQmlibGlvZ3JhcGhpZXNTZWFyY2hDb25maXJtQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSBmb3JtQnVpbGRlciA9IGluamVjdChVbnR5cGVkRm9ybUJ1aWxkZXIpO1xuICBwcml2YXRlIG1lbmRlbGV5U2VydmljZSA9IGluamVjdChIZU1lbmRlbGV5U2VydmljZSk7XG4gIHByaXZhdGUgc2VhcmNoU2VydmljZSA9IGluamVjdChIZVNlYXJjaFNlcnZpY2UpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBmYVRpbWVzID0gZmFUaW1lcztcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGZhU3Bpbm5lciA9IGZhU3Bpbm5lcjtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGZhRXh0ZXJuYWxMaW5rQWx0ID0gZmFFeHRlcm5hbExpbmtBbHQ7XG5cbiAgcHJvdGVjdGVkIHNlYXJjaCA9IGlucHV0KCcnKTtcblxuICBwcm90ZWN0ZWQgc2VhcmNoU291cmNlcyA9IGlucHV0KHRydWUpO1xuICBwcm90ZWN0ZWQgc2VhcmNoQmlibGlvZ3JhcGhpZXMgPSBpbnB1dCh0cnVlKTtcbiAgcHJvdGVjdGVkIHNlYXJjaEJ5ID0gaW5wdXQ8c2VhcmNoQnlGaWVsZHM+KCd0aXRsZScpO1xuXG4gIHByaXZhdGUgc2VhcmNoTGltaXQgPSBjb21wdXRlZChcbiAgICAoKSA9PiBsaW1pdCAvIChbdGhpcy5zZWFyY2hTb3VyY2VzKCksIHRoaXMuc2VhcmNoQmlibGlvZ3JhcGhpZXMoKV0uZmlsdGVyKEJvb2xlYW4pLmxlbmd0aCB8fCAxKVxuICApO1xuXG4gIHByb3RlY3RlZCBjbG9zZWQgPSBvdXRwdXQ8UmVzdWx0PigpO1xuXG4gIHByb3RlY3RlZCBsb2FkaW5nID0gc2lnbmFsKHRydWUpO1xuICBwcm90ZWN0ZWQgZm9ybUdyb3VwID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgc2VhcmNoOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdXG4gIH0pO1xuICBwcm90ZWN0ZWQgc2VhcmNoQ29udHJvbCA9IHRoaXMuZm9ybUdyb3VwLmdldCgnc2VhcmNoJyk7XG5cbiAgcHJpdmF0ZSBfcmVzdWx0cyA9IHRoaXMuc2VhcmNoQ29udHJvbCEudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgZGVib3VuY2VUaW1lKDMwMCksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICB0YXAoKCkgPT4gdGhpcy5sb2FkaW5nLnNldCh0cnVlKSksXG4gICAgdGFwKCgpID0+IHRoaXMuc2VsZWN0ZWRSZXN1bHQuc2V0KHVuZGVmaW5lZCkpLFxuICAgIHN3aXRjaE1hcCh0ZXJtID0+ICh0ZXJtLmxlbmd0aCA+IDEgPyB0aGlzLnJ1blNlYXJjaCh0ZXJtKSA6IG9mKFtdIGFzIGFueSkpKSxcbiAgICB0YXAoKCkgPT4gdGhpcy5sb2FkaW5nLnNldChmYWxzZSkpXG4gICk7XG4gIHByb3RlY3RlZCByZXN1bHRzID0gdG9TaWduYWwodGhpcy5fcmVzdWx0cyk7XG4gIHByb3RlY3RlZCBzZWxlY3RlZFJlc3VsdCA9IHNpZ25hbCh1bmRlZmluZWQgYXMgUmVzdWx0KTtcbiAgcHJvdGVjdGVkIGhhc1Jlc3VsdHMgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnJlc3VsdHMoKT8ubGVuZ3RoID4gMCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IHNlYXJjaCA9IHRoaXMuc2VhcmNoKCk7XG4gICAgICB0aGlzLnNlYXJjaENvbnRyb2whLnNldFZhbHVlKHNlYXJjaCB8fCAnJyk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHJ1blNlYXJjaFNvdXJjZXModGVybTogc3RyaW5nKSB7XG4gICAgY29uc3QgZmllbGRzID0gW2BiaWJsaW9ncmFwaHkuJHt0aGlzLnNlYXJjaEJ5fWBdO1xuICAgIGNvbnN0IGluY2x1ZGVzID0gWydiaWJsaW9ncmFwaHkudGl0bGUnLCAnYmlibGlvZ3JhcGh5LmRvY3VtZW50RE9JJywgJ2JpYmxpb2dyYXBoeS5zY29wdXMnXTtcbiAgICByZXR1cm4gdGhpcy5zZWFyY2hTb3VyY2VzXG4gICAgICA/IHRoaXMuc2VhcmNoU2VydmljZS5zdWdnZXN0U291cmNlJCh0ZXJtLCB0aGlzLnNlYXJjaExpbWl0KCksIGZpZWxkcywgaW5jbHVkZXMpXG4gICAgICA6IG9mKFtdIGFzIFBhcnRpYWw8U291cmNlPltdKTtcbiAgfVxuXG4gIHByaXZhdGUgcnVuU2VhcmNoQmlibGlvZ3JhcGhpZXModGVybTogc3RyaW5nKSB7XG4gICAgLy8gc2NvcHVzXG4gICAgY29uc3QgcGFyYW1zID1cbiAgICAgIHRoaXMuc2VhcmNoQnkoKSA9PT0gJ3RpdGxlJ1xuICAgICAgICA/IHsgdGl0bGU6IHRlcm0gfVxuICAgICAgICA6IHRoaXMuc2VhcmNoQnkoKSA9PT0gJ2RvY3VtZW50RE9JJ1xuICAgICAgICAgID8geyBkb2k6IHRlcm0gfVxuICAgICAgICAgIDogeyBzY29wdXM6IHRlcm0gfTtcbiAgICByZXR1cm4gdGhpcy5zZWFyY2hCaWJsaW9ncmFwaGllc1xuICAgICAgPyB0aGlzLm1lbmRlbGV5U2VydmljZS5maW5kKHsgLi4ucGFyYW1zLCBsaW1pdDogdGhpcy5zZWFyY2hMaW1pdCgpIH0pLnBpcGUobWFwKCh7IHJlc3VsdHMgfSkgPT4gcmVzdWx0cykpXG4gICAgICA6IG9mKFtdIGFzIFBhcnRpYWw8QmlibGlvZ3JhcGh5PltdKTtcbiAgfVxuXG4gIHByaXZhdGUgcnVuU2VhcmNoKHRlcm06IHN0cmluZykge1xuICAgIHJldHVybiB6aXAodGhpcy5ydW5TZWFyY2hTb3VyY2VzKHRlcm0pLCB0aGlzLnJ1blNlYXJjaEJpYmxpb2dyYXBoaWVzKHRlcm0pKS5waXBlKFxuICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZihbXSkpLFxuICAgICAgbWFwKHJlcyA9PiByZXMuZmxhdCgpKVxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc2VhcmNoRm9jdXMoZTogRXZlbnQpIHtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgY29uc3QgaW5wdXRFdmVudCA9IG5ldyBFdmVudCgnaW5wdXQnKTtcbiAgICAgIGUudGFyZ2V0Py5kaXNwYXRjaEV2ZW50KGlucHV0RXZlbnQpO1xuICAgIH0sIDApO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlc2V0U2VhcmNoKCkge1xuICAgIHRoaXMuc2VhcmNoQ29udHJvbCEuc2V0VmFsdWUoJycpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNvbmZpcm0oKSB7XG4gICAgdGhpcy5jbG9zZWQuZW1pdCh0aGlzLnNlbGVjdGVkUmVzdWx0KCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNhbmNlbCgpIHtcbiAgICB0aGlzLmNsb3NlZC5lbWl0KG51bGwpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibW9kYWwgaXMtbGFyZ2UgaXMtYWN0aXZlXCI+XG4gIDxkaXYgY2xhc3M9XCJtb2RhbC1iYWNrZ3JvdW5kXCI+PC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJtb2RhbC1jYXJkXCI+XG4gICAgPGhlYWRlciBjbGFzcz1cIm1vZGFsLWNhcmQtaGVhZFwiPlxuICAgICAgPHAgY2xhc3M9XCJtb2RhbC1jYXJkLXRpdGxlXCI+U2VhcmNoIEJpYmxpb2dyYXBoaWVzPC9wPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImRlbGV0ZVwiIGFyaWEtbGFiZWw9XCJjbG9zZVwiIChjbGljayk9XCJjYW5jZWwoKVwiPjwvYnV0dG9uPlxuICAgIDwvaGVhZGVyPlxuICAgIDxzZWN0aW9uIGNsYXNzPVwibW9kYWwtY2FyZC1ib2R5XCI+XG4gICAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiIG5vdmFsaWRhdGU+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBoYXMtYWRkb25zXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRyb2wgaXMtZXhwYW5kZWQgaGFzLWljb25zLXJpZ2h0XCI+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgY2xhc3M9XCJpbnB1dCBzZWFyY2gtaW5wdXRcIlxuICAgICAgICAgICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCInU2VhcmNoIGJpYmxpb2dyYXBoeSBieSAnICsgc2VhcmNoQnkoKVwiXG4gICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInNlYXJjaFwiXG4gICAgICAgICAgICAgIG5hbWU9XCJiaWJsaW9ncmFwaHlcIlxuICAgICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICAgICAgICAoZm9jdXMpPVwic2VhcmNoRm9jdXMoJGV2ZW50KVwiIC8+XG4gICAgICAgICAgICA8YSBjbGFzcz1cImljb24gaXMtc21hbGwgaXMtcmlnaHRcIiBbY2xhc3MuaXMtaGlkZGVuXT1cImxvYWRpbmcoKVwiIChjbGljayk9XCJyZXNldFNlYXJjaCgpXCI+XG4gICAgICAgICAgICAgIDxmYS1pY29uIFtpY29uXT1cImZhVGltZXNcIj48L2ZhLWljb24+XG4gICAgICAgICAgICA8L2E+XG5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaWNvbiBpcy1yaWdodCBoYXMtdGV4dC1ncmV5LWRhcmtcIiBbY2xhc3MuaXMtaGlkZGVuXT1cIiFsb2FkaW5nKClcIj5cbiAgICAgICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiZmFTcGlubmVyXCIgW3B1bHNlXT1cInRydWVcIiBzaXplPVwic21cIj48L2ZhLWljb24+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9mb3JtPlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiaXMtbXQtMlwiPlxuICAgICAgICA8c3BhbiBbY2xhc3MuaXMtaGlkZGVuXT1cImxvYWRpbmcoKSB8fCAhc2VhcmNoQ29udHJvbD8udmFsdWUgfHwgaGFzUmVzdWx0cygpXCI+XG4gICAgICAgICAgTm8gYmlibGlvZ3JhcGhpZXMgZm91bmQgbWF0Y2hpbmcgcXVlcnkuXG4gICAgICAgIDwvc3Bhbj5cblxuICAgICAgICA8dWw+XG4gICAgICAgICAgQGZvciAocmVzdWx0IG9mIHJlc3VsdHMoKTsgdHJhY2sgcmVzdWx0KSB7XG4gICAgICAgICAgICA8bGk+XG4gICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJpcy1ibG9jayBwLTEgc2VhcmNoLXJlc3VsdFwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdGVkUmVzdWx0LnNldChyZXN1bHQpXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuaXMtYWN0aXZlXT1cInNlbGVjdGVkUmVzdWx0KCkgPT09IHJlc3VsdFwiPlxuICAgICAgICAgICAgICAgIDxuZ2ItaGlnaGxpZ2h0XG4gICAgICAgICAgICAgICAgICBbcmVzdWx0XT1cInJlc3VsdC5iaWJsaW9ncmFwaHk/LnRpdGxlID8/IHJlc3VsdC50aXRsZVwiXG4gICAgICAgICAgICAgICAgICBbdGVybV09XCJzZWFyY2hDb250cm9sPy52YWx1ZVwiPjwvbmdiLWhpZ2hsaWdodD5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInB4LTFcIj4tPC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicHgtMVwiPlxuICAgICAgICAgICAgICAgICAgPGk+e3sgcmVzdWx0Lm5hbWUgfX08L2k+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgIEBpZiAocmVzdWx0LmJpYmxpb2dyYXBoeT8uZG9jdW1lbnRET0kgfHwgcmVzdWx0LmRvY3VtZW50RE9JKSB7XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInB4LTFcIj5cbiAgICAgICAgICAgICAgICAgICAgLVxuICAgICAgICAgICAgICAgICAgICA8Yj5kb2N1bWVudERPSTo8L2I+XG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDxuZ2ItaGlnaGxpZ2h0XG4gICAgICAgICAgICAgICAgICBbcmVzdWx0XT1cInJlc3VsdC5iaWJsaW9ncmFwaHk/LmRvY3VtZW50RE9JID8/IHJlc3VsdC5kb2N1bWVudERPSVwiXG4gICAgICAgICAgICAgICAgICBbdGVybV09XCJzZWFyY2hDb250cm9sPy52YWx1ZVwiPjwvbmdiLWhpZ2hsaWdodD5cbiAgICAgICAgICAgICAgICBAaWYgKHJlc3VsdC5iaWJsaW9ncmFwaHk/LnNjb3B1cyB8fCByZXN1bHQuc2NvcHVzKSB7XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInB4LTFcIj5cbiAgICAgICAgICAgICAgICAgICAgLVxuICAgICAgICAgICAgICAgICAgICA8Yj5zY29wdXM6PC9iPlxuICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8bmdiLWhpZ2hsaWdodFxuICAgICAgICAgICAgICAgICAgW3Jlc3VsdF09XCJyZXN1bHQuYmlibGlvZ3JhcGh5Py5zY29wdXMgPz8gcmVzdWx0LnNjb3B1c1wiXG4gICAgICAgICAgICAgICAgICBbdGVybV09XCJzZWFyY2hDb250cm9sPy52YWx1ZVwiPjwvbmdiLWhpZ2hsaWdodD5cbiAgICAgICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgICAgICAgICBtZW5kZWxleUxpbms7XG4gICAgICAgICAgICAgICAgICAgICAgY29udGV4dDogeyAkaW1wbGljaXQ6IHJlc3VsdC5iaWJsaW9ncmFwaHk/Lm1lbmRlbGV5SUQgPz8gcmVzdWx0Lm1lbmRlbGV5SUQgfVxuICAgICAgICAgICAgICAgICAgICBcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgfVxuICAgICAgICA8L3VsPlxuICAgICAgPC9kaXY+XG4gICAgPC9zZWN0aW9uPlxuICAgIDxmb290ZXIgY2xhc3M9XCJtb2RhbC1jYXJkLWZvb3RcIj5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJidXR0b24gaXMtcHJpbWFyeVwiIChjbGljayk9XCJjb25maXJtKClcIiBbZGlzYWJsZWRdPVwiIXNlbGVjdGVkUmVzdWx0KClcIj5cbiAgICAgICAgPHNwYW4+Q29uZmlybTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBpcy1naG9zdFwiIChjbGljayk9XCJjYW5jZWwoKVwiPlxuICAgICAgICA8c3Bhbj5DbG9zZTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZm9vdGVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI21lbmRlbGV5TGluayBsZXQtaWQ+XG4gIEBpZiAoaWQpIHtcbiAgICA8YSBbaHJlZl09XCInaHR0cHM6Ly93d3cubWVuZGVsZXkuY29tL2NhdGFsb2d1ZS8nICsgaWRcIiB0YXJnZXQ9XCJfYmxhbmtcIiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XG4gICAgICA8ZmEtaWNvbiBjbGFzcz1cIm1sLTJcIiBbaWNvbl09XCJmYUV4dGVybmFsTGlua0FsdFwiIHNpemU9XCJzbVwiPjwvZmEtaWNvbj5cbiAgICA8L2E+XG4gIH1cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlibGlvZ3JhcGhpZXMtc2VhcmNoLWNvbmZpcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JpYmxpb2dyYXBoaWVzL2JpYmxpb2dyYXBoaWVzLXNlYXJjaC1jb25maXJtL2JpYmxpb2dyYXBoaWVzLXNlYXJjaC1jb25maXJtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9iaWJsaW9ncmFwaGllcy9iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybS9iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BILE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDMUYsT0FBTyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRyxPQUFPLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxN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SEFpR0Esa0lEekVZLFdBQVcsMnBCQUFFLG1CQUFtQixnVkFBRSxlQUFlLGtQQUFFLFlBQVksMkhBQUUsZ0JBQWdCOzsyRkFFaEYsb0NBQW9DO2tCQVJoRCxTQUFTOytCQUNFLGtDQUFrQyxtQkFHM0IsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIGluamVjdCwgbW9kZWwsIGVmZmVjdCwgc2lnbmFsLCBjb21wdXRlZCwgb3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQnVpbGRlciwgVmFsaWRhdG9ycywgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nYkFjdGl2ZU1vZGFsLCBOZ2JIaWdobGlnaHQgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBGYUljb25Db21wb25lbnQgfSBmcm9tICdAZm9ydGF3ZXNvbWUvYW5ndWxhci1mb250YXdlc29tZSc7XG5pbXBvcnQgeyBmYUV4dGVybmFsTGlua0FsdCwgZmFTcGlubmVyLCBmYVRpbWVzIH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBvZiwgemlwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBCaWJsaW9ncmFwaHksIFNvdXJjZSB9IGZyb20gJ0BoZXN0aWEtZWFydGgvc2NoZW1hJztcblxuaW1wb3J0IHsgSGVNZW5kZWxleVNlcnZpY2UgfSBmcm9tICcuLi8uLi9tZW5kZWxleS9tZW5kZWxleS5zZXJ2aWNlJztcbmltcG9ydCB7IEhlU2VhcmNoU2VydmljZSB9IGZyb20gJy4uLy4uL3NlYXJjaC9zZWFyY2guc2VydmljZSc7XG5cbnR5cGUgc2VhcmNoQnlGaWVsZHMgPSAndGl0bGUnIHwgJ2RvY3VtZW50RE9JJyB8ICdzY29wdXMnO1xudHlwZSBSZXN1bHQgPSBQYXJ0aWFsPFNvdXJjZT4gfCBQYXJ0aWFsPEJpYmxpb2dyYXBoeT47XG5jb25zdCBsaW1pdCA9IDEwO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdoZS1iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybScsXG4gIHRlbXBsYXRlVXJsOiAnLi9iaWJsaW9ncmFwaGllcy1zZWFyY2gtY29uZmlybS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2JpYmxpb2dyYXBoaWVzLXNlYXJjaC1jb25maXJtLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIEZhSWNvbkNvbXBvbmVudCwgTmdiSGlnaGxpZ2h0LCBOZ1RlbXBsYXRlT3V0bGV0XVxufSlcbmV4cG9ydCBjbGFzcyBCaWJsaW9ncmFwaGllc1NlYXJjaENvbmZpcm1Db21wb25lbnQge1xuICBwcml2YXRlIGZvcm1CdWlsZGVyID0gaW5qZWN0KFVudHlwZWRGb3JtQnVpbGRlcik7XG4gIHByaXZhdGUgbWVuZGVsZXlTZXJ2aWNlID0gaW5qZWN0KEhlTWVuZGVsZXlTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBzZWFyY2hTZXJ2aWNlID0gaW5qZWN0KEhlU2VhcmNoU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgYWN0aXZlTW9kYWwgPSBpbmplY3QoTmdiQWN0aXZlTW9kYWwsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGZhVGltZXMgPSBmYVRpbWVzO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZmFTcGlubmVyID0gZmFTcGlubmVyO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZmFFeHRlcm5hbExpbmtBbHQgPSBmYUV4dGVybmFsTGlua0FsdDtcblxuICBwdWJsaWMgc2VhcmNoID0gbW9kZWwoJycpO1xuICBwdWJsaWMgc2VhcmNoU291cmNlcyA9IG1vZGVsKHRydWUpO1xuICBwdWJsaWMgc2VhcmNoQmlibGlvZ3JhcGhpZXMgPSBtb2RlbCh0cnVlKTtcbiAgcHVibGljIHNlYXJjaEJ5ID0gbW9kZWw8c2VhcmNoQnlGaWVsZHM+KCd0aXRsZScpO1xuXG4gIHByaXZhdGUgc2VhcmNoTGltaXQgPSBjb21wdXRlZChcbiAgICAoKSA9PiBsaW1pdCAvIChbdGhpcy5zZWFyY2hTb3VyY2VzKCksIHRoaXMuc2VhcmNoQmlibGlvZ3JhcGhpZXMoKV0uZmlsdGVyKEJvb2xlYW4pLmxlbmd0aCB8fCAxKVxuICApO1xuXG4gIHByb3RlY3RlZCBjbG9zZWQgPSBvdXRwdXQ8UmVzdWx0PigpO1xuXG4gIHByb3RlY3RlZCBsb2FkaW5nID0gc2lnbmFsKHRydWUpO1xuICBwcm90ZWN0ZWQgZm9ybUdyb3VwID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgc2VhcmNoOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdXG4gIH0pO1xuICBwcm90ZWN0ZWQgc2VhcmNoQ29udHJvbCA9IHRoaXMuZm9ybUdyb3VwLmdldCgnc2VhcmNoJyk7XG5cbiAgcHJpdmF0ZSBfcmVzdWx0cyA9IHRoaXMuc2VhcmNoQ29udHJvbCEudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgZGVib3VuY2VUaW1lKDMwMCksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICB0YXAoKCkgPT4gdGhpcy5sb2FkaW5nLnNldCh0cnVlKSksXG4gICAgdGFwKCgpID0+IHRoaXMuc2VsZWN0ZWRSZXN1bHQuc2V0KHVuZGVmaW5lZCkpLFxuICAgIHN3aXRjaE1hcCh0ZXJtID0+ICh0ZXJtLmxlbmd0aCA+IDEgPyB0aGlzLnJ1blNlYXJjaCh0ZXJtKSA6IG9mKFtdIGFzIGFueSkpKSxcbiAgICB0YXAoKCkgPT4gdGhpcy5sb2FkaW5nLnNldChmYWxzZSkpXG4gICk7XG4gIHByb3RlY3RlZCByZXN1bHRzID0gdG9TaWduYWwodGhpcy5fcmVzdWx0cyk7XG4gIHByb3RlY3RlZCBzZWxlY3RlZFJlc3VsdCA9IHNpZ25hbCh1bmRlZmluZWQgYXMgUmVzdWx0KTtcbiAgcHJvdGVjdGVkIGhhc1Jlc3VsdHMgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnJlc3VsdHMoKT8ubGVuZ3RoID4gMCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IHNlYXJjaCA9IHRoaXMuc2VhcmNoKCk7XG4gICAgICB0aGlzLnNlYXJjaENvbnRyb2whLnNldFZhbHVlKHNlYXJjaCB8fCAnJyk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHJ1blNlYXJjaFNvdXJjZXModGVybTogc3RyaW5nKSB7XG4gICAgY29uc3QgZmllbGRzID0gW2BiaWJsaW9ncmFwaHkuJHt0aGlzLnNlYXJjaEJ5fWBdO1xuICAgIGNvbnN0IGluY2x1ZGVzID0gWydiaWJsaW9ncmFwaHkudGl0bGUnLCAnYmlibGlvZ3JhcGh5LmRvY3VtZW50RE9JJywgJ2JpYmxpb2dyYXBoeS5zY29wdXMnXTtcbiAgICByZXR1cm4gdGhpcy5zZWFyY2hTb3VyY2VzXG4gICAgICA/IHRoaXMuc2VhcmNoU2VydmljZS5zdWdnZXN0U291cmNlJCh0ZXJtLCB0aGlzLnNlYXJjaExpbWl0KCksIGZpZWxkcywgaW5jbHVkZXMpXG4gICAgICA6IG9mKFtdIGFzIFBhcnRpYWw8U291cmNlPltdKTtcbiAgfVxuXG4gIHByaXZhdGUgcnVuU2VhcmNoQmlibGlvZ3JhcGhpZXModGVybTogc3RyaW5nKSB7XG4gICAgLy8gc2NvcHVzXG4gICAgY29uc3QgcGFyYW1zID1cbiAgICAgIHRoaXMuc2VhcmNoQnkoKSA9PT0gJ3RpdGxlJ1xuICAgICAgICA/IHsgdGl0bGU6IHRlcm0gfVxuICAgICAgICA6IHRoaXMuc2VhcmNoQnkoKSA9PT0gJ2RvY3VtZW50RE9JJ1xuICAgICAgICAgID8geyBkb2k6IHRlcm0gfVxuICAgICAgICAgIDogeyBzY29wdXM6IHRlcm0gfTtcbiAgICByZXR1cm4gdGhpcy5zZWFyY2hCaWJsaW9ncmFwaGllc1xuICAgICAgPyB0aGlzLm1lbmRlbGV5U2VydmljZS5maW5kKHsgLi4ucGFyYW1zLCBsaW1pdDogdGhpcy5zZWFyY2hMaW1pdCgpIH0pLnBpcGUobWFwKCh7IHJlc3VsdHMgfSkgPT4gcmVzdWx0cykpXG4gICAgICA6IG9mKFtdIGFzIFBhcnRpYWw8QmlibGlvZ3JhcGh5PltdKTtcbiAgfVxuXG4gIHByaXZhdGUgcnVuU2VhcmNoKHRlcm06IHN0cmluZykge1xuICAgIHJldHVybiB6aXAodGhpcy5ydW5TZWFyY2hTb3VyY2VzKHRlcm0pLCB0aGlzLnJ1blNlYXJjaEJpYmxpb2dyYXBoaWVzKHRlcm0pKS5waXBlKFxuICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZihbXSkpLFxuICAgICAgbWFwKHJlcyA9PiByZXMuZmxhdCgpKVxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc2VhcmNoRm9jdXMoZTogRXZlbnQpIHtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgY29uc3QgaW5wdXRFdmVudCA9IG5ldyBFdmVudCgnaW5wdXQnKTtcbiAgICAgIGUudGFyZ2V0Py5kaXNwYXRjaEV2ZW50KGlucHV0RXZlbnQpO1xuICAgIH0sIDApO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlc2V0U2VhcmNoKCkge1xuICAgIHRoaXMuc2VhcmNoQ29udHJvbCEuc2V0VmFsdWUoJycpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNvbmZpcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMuY2xvc2UodGhpcy5zZWxlY3RlZFJlc3VsdCgpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjYW5jZWwoKSB7XG4gICAgcmV0dXJuIHRoaXMuY2xvc2UobnVsbCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY2xvc2UodmFsdWUpIHtcbiAgICB0aGlzLmNsb3NlZC5lbWl0KHZhbHVlKTtcbiAgICB0aGlzLmFjdGl2ZU1vZGFsPy5jbG9zZSh2YWx1ZSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJtb2RhbCBpcy1sYXJnZSBpcy1hY3RpdmVcIj5cbiAgPGRpdiBjbGFzcz1cIm1vZGFsLWJhY2tncm91bmRcIj48L2Rpdj5cbiAgPGRpdiBjbGFzcz1cIm1vZGFsLWNhcmRcIj5cbiAgICA8aGVhZGVyIGNsYXNzPVwibW9kYWwtY2FyZC1oZWFkXCI+XG4gICAgICA8cCBjbGFzcz1cIm1vZGFsLWNhcmQtdGl0bGVcIj5TZWFyY2ggQmlibGlvZ3JhcGhpZXM8L3A+XG4gICAgICA8YnV0dG9uIGNsYXNzPVwiZGVsZXRlXCIgYXJpYS1sYWJlbD1cImNsb3NlXCIgKGNsaWNrKT1cImNhbmNlbCgpXCI+PC9idXR0b24+XG4gICAgPC9oZWFkZXI+XG4gICAgPHNlY3Rpb24gY2xhc3M9XCJtb2RhbC1jYXJkLWJvZHlcIj5cbiAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCIgbm92YWxpZGF0ZT5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGhhcy1hZGRvbnNcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udHJvbCBpcy1leHBhbmRlZCBoYXMtaWNvbnMtcmlnaHRcIj5cbiAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICBjbGFzcz1cImlucHV0IHNlYXJjaC1pbnB1dFwiXG4gICAgICAgICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cIidTZWFyY2ggYmlibGlvZ3JhcGh5IGJ5ICcgKyBzZWFyY2hCeSgpXCJcbiAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwic2VhcmNoXCJcbiAgICAgICAgICAgICAgbmFtZT1cImJpYmxpb2dyYXBoeVwiXG4gICAgICAgICAgICAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiXG4gICAgICAgICAgICAgIChmb2N1cyk9XCJzZWFyY2hGb2N1cygkZXZlbnQpXCIgLz5cbiAgICAgICAgICAgIDxhIGNsYXNzPVwiaWNvbiBpcy1zbWFsbCBpcy1yaWdodFwiIFtjbGFzcy5pcy1oaWRkZW5dPVwibG9hZGluZygpXCIgKGNsaWNrKT1cInJlc2V0U2VhcmNoKClcIj5cbiAgICAgICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiZmFUaW1lc1wiPjwvZmEtaWNvbj5cbiAgICAgICAgICAgIDwvYT5cblxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpY29uIGlzLXJpZ2h0IGhhcy10ZXh0LWdyZXktZGFya1wiIFtjbGFzcy5pcy1oaWRkZW5dPVwiIWxvYWRpbmcoKVwiPlxuICAgICAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJmYVNwaW5uZXJcIiBbcHVsc2VdPVwidHJ1ZVwiIHNpemU9XCJzbVwiPjwvZmEtaWNvbj5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Zvcm0+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJpcy1tdC0yXCI+XG4gICAgICAgIDxzcGFuIFtjbGFzcy5pcy1oaWRkZW5dPVwibG9hZGluZygpIHx8ICFzZWFyY2hDb250cm9sPy52YWx1ZSB8fCBoYXNSZXN1bHRzKClcIj5cbiAgICAgICAgICBObyBiaWJsaW9ncmFwaGllcyBmb3VuZCBtYXRjaGluZyBxdWVyeS5cbiAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgIDx1bD5cbiAgICAgICAgICBAZm9yIChyZXN1bHQgb2YgcmVzdWx0cygpOyB0cmFjayByZXN1bHQpIHtcbiAgICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICBjbGFzcz1cImlzLWJsb2NrIHAtMSBzZWFyY2gtcmVzdWx0XCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0ZWRSZXN1bHQuc2V0KHJlc3VsdClcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5pcy1hY3RpdmVdPVwic2VsZWN0ZWRSZXN1bHQoKSA9PT0gcmVzdWx0XCI+XG4gICAgICAgICAgICAgICAgPG5nYi1oaWdobGlnaHRcbiAgICAgICAgICAgICAgICAgIFtyZXN1bHRdPVwicmVzdWx0LmJpYmxpb2dyYXBoeT8udGl0bGUgPz8gcmVzdWx0LnRpdGxlXCJcbiAgICAgICAgICAgICAgICAgIFt0ZXJtXT1cInNlYXJjaENvbnRyb2w/LnZhbHVlXCI+PC9uZ2ItaGlnaGxpZ2h0PlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicHgtMVwiPi08L3NwYW4+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJweC0xXCI+XG4gICAgICAgICAgICAgICAgICA8aT57eyByZXN1bHQubmFtZSB9fTwvaT5cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgQGlmIChyZXN1bHQuYmlibGlvZ3JhcGh5Py5kb2N1bWVudERPSSB8fCByZXN1bHQuZG9jdW1lbnRET0kpIHtcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicHgtMVwiPlxuICAgICAgICAgICAgICAgICAgICAtXG4gICAgICAgICAgICAgICAgICAgIDxiPmRvY3VtZW50RE9JOjwvYj5cbiAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPG5nYi1oaWdobGlnaHRcbiAgICAgICAgICAgICAgICAgIFtyZXN1bHRdPVwicmVzdWx0LmJpYmxpb2dyYXBoeT8uZG9jdW1lbnRET0kgPz8gcmVzdWx0LmRvY3VtZW50RE9JXCJcbiAgICAgICAgICAgICAgICAgIFt0ZXJtXT1cInNlYXJjaENvbnRyb2w/LnZhbHVlXCI+PC9uZ2ItaGlnaGxpZ2h0PlxuICAgICAgICAgICAgICAgIEBpZiAocmVzdWx0LmJpYmxpb2dyYXBoeT8uc2NvcHVzIHx8IHJlc3VsdC5zY29wdXMpIHtcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicHgtMVwiPlxuICAgICAgICAgICAgICAgICAgICAtXG4gICAgICAgICAgICAgICAgICAgIDxiPnNjb3B1czo8L2I+XG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDxuZ2ItaGlnaGxpZ2h0XG4gICAgICAgICAgICAgICAgICBbcmVzdWx0XT1cInJlc3VsdC5iaWJsaW9ncmFwaHk/LnNjb3B1cyA/PyByZXN1bHQuc2NvcHVzXCJcbiAgICAgICAgICAgICAgICAgIFt0ZXJtXT1cInNlYXJjaENvbnRyb2w/LnZhbHVlXCI+PC9uZ2ItaGlnaGxpZ2h0PlxuICAgICAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgICAgICAgICAgIG1lbmRlbGV5TGluaztcbiAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0OiB7ICRpbXBsaWNpdDogcmVzdWx0LmJpYmxpb2dyYXBoeT8ubWVuZGVsZXlJRCA/PyByZXN1bHQubWVuZGVsZXlJRCB9XG4gICAgICAgICAgICAgICAgICAgIFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICB9XG4gICAgICAgIDwvdWw+XG4gICAgICA8L2Rpdj5cbiAgICA8L3NlY3Rpb24+XG4gICAgPGZvb3RlciBjbGFzcz1cIm1vZGFsLWNhcmQtZm9vdFwiPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBpcy1wcmltYXJ5XCIgKGNsaWNrKT1cImNvbmZpcm0oKVwiIFtkaXNhYmxlZF09XCIhc2VsZWN0ZWRSZXN1bHQoKVwiPlxuICAgICAgICA8c3Bhbj5Db25maXJtPC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uIGlzLWdob3N0XCIgKGNsaWNrKT1cImNhbmNlbCgpXCI+XG4gICAgICAgIDxzcGFuPkNsb3NlPC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9mb290ZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjbWVuZGVsZXlMaW5rIGxldC1pZD5cbiAgQGlmIChpZCkge1xuICAgIDxhIFtocmVmXT1cIidodHRwczovL3d3dy5tZW5kZWxleS5jb20vY2F0YWxvZ3VlLycgKyBpZFwiIHRhcmdldD1cIl9ibGFua1wiIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cbiAgICAgIDxmYS1pY29uIGNsYXNzPVwibWwtMlwiIFtpY29uXT1cImZhRXh0ZXJuYWxMaW5rQWx0XCIgc2l6ZT1cInNtXCI+PC9mYS1pY29uPlxuICAgIDwvYT5cbiAgfVxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -1,15 +1,17 @@
|
|
|
1
|
-
import { Component, computed, effect,
|
|
1
|
+
import { Component, computed, effect, inject, model, output, signal } from '@angular/core';
|
|
2
|
+
import { FormsModule } from '@angular/forms';
|
|
3
|
+
import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';
|
|
2
4
|
import { Repository, Template, reportIssueUrl } from '../utils';
|
|
3
5
|
import { KeysPipe } from '../keys.pipe';
|
|
4
|
-
import { FormsModule } from '@angular/forms';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
import * as i1 from "@angular/forms";
|
|
7
8
|
export class IssueConfirmComponent {
|
|
8
9
|
constructor() {
|
|
9
|
-
this.
|
|
10
|
-
this.
|
|
11
|
-
this.
|
|
12
|
-
this.
|
|
10
|
+
this.activeModal = inject(NgbActiveModal, { optional: true });
|
|
11
|
+
this.title = model('Submit Feedback');
|
|
12
|
+
this.repository = model();
|
|
13
|
+
this.template = model();
|
|
14
|
+
this.isCommunity = model(false);
|
|
13
15
|
this.closed = output();
|
|
14
16
|
this.Repository = Repository;
|
|
15
17
|
this.Template = Template;
|
|
@@ -28,11 +30,15 @@ export class IssueConfirmComponent {
|
|
|
28
30
|
}
|
|
29
31
|
}, { allowSignalWrites: true });
|
|
30
32
|
}
|
|
33
|
+
close() {
|
|
34
|
+
this.closed.emit();
|
|
35
|
+
this.activeModal?.close();
|
|
36
|
+
}
|
|
31
37
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: IssueConfirmComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
32
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: IssueConfirmComponent, isStandalone: true, selector: "he-issue-confirm", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, repository: { classPropertyName: "repository", publicName: "repository", isSignal: true, isRequired: false, transformFunction: null }, template: { classPropertyName: "template", publicName: "template", isSignal: true, isRequired: false, transformFunction: null }, isCommunity: { classPropertyName: "isCommunity", publicName: "isCommunity", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closed: "closed" }, ngImport: i0, template: "<div class=\"modal is-active\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-card\">\n <header class=\"modal-card-head\">\n <p class=\"modal-card-title\">{{ title() }}</p>\n <button class=\"delete\" aria-label=\"close\" (click)=\"
|
|
38
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: IssueConfirmComponent, isStandalone: true, selector: "he-issue-confirm", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, repository: { classPropertyName: "repository", publicName: "repository", isSignal: true, isRequired: false, transformFunction: null }, template: { classPropertyName: "template", publicName: "template", isSignal: true, isRequired: false, transformFunction: null }, isCommunity: { classPropertyName: "isCommunity", publicName: "isCommunity", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { title: "titleChange", repository: "repositoryChange", template: "templateChange", isCommunity: "isCommunityChange", closed: "closed" }, ngImport: i0, template: "<div class=\"modal is-active\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-card\">\n <header class=\"modal-card-head\">\n <p class=\"modal-card-title\">{{ title() }}</p>\n <button class=\"delete\" aria-label=\"close\" (click)=\"close()\"></button>\n </header>\n <section class=\"modal-card-body\">\n <p class=\"mb-2\">Please select the type of issue from the list below to start:</p>\n\n <div class=\"field is-horizontal my-3\">\n <div class=\"field-label is-normal\">\n <label class=\"label\" for=\"repository\">Category</label>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <div class=\"control is-expanded\">\n <div class=\"select is-multiple is-fullwidth\">\n <select\n [ngModel]=\"selectedRepository()\"\n (change)=\"selectedRepository.set($event.target.value)\"\n name=\"repository\"\n required>\n <option [ngValue]=\"undefined\">Select from the list</option>\n @for (repo of repositories(); track repo) {\n <option [value]=\"repo\">\n @switch (repo) {\n @case (Repository.glossary) {\n Glossary of terms / lookup issues\n }\n @case (Repository.models) {\n Calculation issues\n }\n @case (Repository.orchestrator) {\n Orchestration issues\n }\n @case (Repository.aggregation) {\n Aggregated Data issues\n }\n @case (Repository.community) {\n UI/UX or API issues\n }\n @case (Repository.poorenemeck) {\n Conversion from P&N Spreadsheet\n }\n @case (Repository.frontend) {\n Other issues\n }\n }\n </option>\n }\n </select>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n @if (repository()) {\n <div class=\"field is-horizontal my-3\">\n <div class=\"field-label is-normal\">\n <label class=\"label\" for=\"template\">Issue</label>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <div class=\"control is-expanded\">\n <div class=\"select is-multiple is-fullwidth\">\n <select\n [ngModel]=\"selectedTemplate()\"\n (change)=\"selectedTemplate.set($event.target.value)\"\n name=\"template\"\n required>\n <option [ngValue]=\"undefined\">Select from the list</option>\n @for (t of Template | keys; track t) {\n <option [value]=\"t.value\">\n @switch (t.value) {\n @case (Template.bug) {\n I found a bug\n }\n @case (Template.feature) {\n I would like a new feature\n }\n }\n </option>\n }\n </select>\n </div>\n </div>\n </div>\n </div>\n </div>\n }\n\n @if (issueUrl()) {\n <p>\n <span>Please report the issue on Gitlab using</span>\n <a class=\"pl-1\" [href]=\"issueUrl()\" target=\"_blank\">this link</a>\n .\n </p>\n }\n </section>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: KeysPipe, name: "keys" }] }); }
|
|
33
39
|
}
|
|
34
40
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: IssueConfirmComponent, decorators: [{
|
|
35
41
|
type: Component,
|
|
36
|
-
args: [{ selector: 'he-issue-confirm', standalone: true, imports: [FormsModule, KeysPipe], template: "<div class=\"modal is-active\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-card\">\n <header class=\"modal-card-head\">\n <p class=\"modal-card-title\">{{ title() }}</p>\n <button class=\"delete\" aria-label=\"close\" (click)=\"
|
|
42
|
+
args: [{ selector: 'he-issue-confirm', standalone: true, imports: [FormsModule, KeysPipe], template: "<div class=\"modal is-active\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-card\">\n <header class=\"modal-card-head\">\n <p class=\"modal-card-title\">{{ title() }}</p>\n <button class=\"delete\" aria-label=\"close\" (click)=\"close()\"></button>\n </header>\n <section class=\"modal-card-body\">\n <p class=\"mb-2\">Please select the type of issue from the list below to start:</p>\n\n <div class=\"field is-horizontal my-3\">\n <div class=\"field-label is-normal\">\n <label class=\"label\" for=\"repository\">Category</label>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <div class=\"control is-expanded\">\n <div class=\"select is-multiple is-fullwidth\">\n <select\n [ngModel]=\"selectedRepository()\"\n (change)=\"selectedRepository.set($event.target.value)\"\n name=\"repository\"\n required>\n <option [ngValue]=\"undefined\">Select from the list</option>\n @for (repo of repositories(); track repo) {\n <option [value]=\"repo\">\n @switch (repo) {\n @case (Repository.glossary) {\n Glossary of terms / lookup issues\n }\n @case (Repository.models) {\n Calculation issues\n }\n @case (Repository.orchestrator) {\n Orchestration issues\n }\n @case (Repository.aggregation) {\n Aggregated Data issues\n }\n @case (Repository.community) {\n UI/UX or API issues\n }\n @case (Repository.poorenemeck) {\n Conversion from P&N Spreadsheet\n }\n @case (Repository.frontend) {\n Other issues\n }\n }\n </option>\n }\n </select>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n @if (repository()) {\n <div class=\"field is-horizontal my-3\">\n <div class=\"field-label is-normal\">\n <label class=\"label\" for=\"template\">Issue</label>\n </div>\n <div class=\"field-body\">\n <div class=\"field\">\n <div class=\"control is-expanded\">\n <div class=\"select is-multiple is-fullwidth\">\n <select\n [ngModel]=\"selectedTemplate()\"\n (change)=\"selectedTemplate.set($event.target.value)\"\n name=\"template\"\n required>\n <option [ngValue]=\"undefined\">Select from the list</option>\n @for (t of Template | keys; track t) {\n <option [value]=\"t.value\">\n @switch (t.value) {\n @case (Template.bug) {\n I found a bug\n }\n @case (Template.feature) {\n I would like a new feature\n }\n }\n </option>\n }\n </select>\n </div>\n </div>\n </div>\n </div>\n </div>\n }\n\n @if (issueUrl()) {\n <p>\n <span>Please report the issue on Gitlab using</span>\n <a class=\"pl-1\" [href]=\"issueUrl()\" target=\"_blank\">this link</a>\n .\n </p>\n }\n </section>\n </div>\n</div>\n" }]
|
|
37
43
|
}], ctorParameters: () => [] });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNzdWUtY29uZmlybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tbW9uL2lzc3VlLWNvbmZpcm0vaXNzdWUtY29uZmlybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvY29tbW9uL2lzc3VlLWNvbmZpcm0vaXNzdWUtY29uZmlybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkYsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsY0FBYyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDeEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFTN0MsTUFBTSxPQUFPLHFCQUFxQjtJQW9CaEM7UUFuQlUsVUFBSyxHQUFHLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2pDLGVBQVUsR0FBRyxLQUFLLEVBQWMsQ0FBQztRQUNqQyxhQUFRLEdBQUcsS0FBSyxFQUFZLENBQUM7UUFDN0IsZ0JBQVcsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFM0IsV0FBTSxHQUFHLE1BQU0sRUFBVyxDQUFDO1FBRTNCLGVBQVUsR0FBRyxVQUFVLENBQUM7UUFDeEIsYUFBUSxHQUFHLFFBQVEsQ0FBQztRQUNwQixpQkFBWSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FDckMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEtBQUssVUFBVSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FDaEcsQ0FBQztRQUNRLGFBQVEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQ2pDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDakcsQ0FBQztRQUVRLHVCQUFrQixHQUFHLE1BQU0sQ0FBYSxTQUFTLENBQUMsQ0FBQztRQUNuRCxxQkFBZ0IsR0FBRyxNQUFNLENBQVcsU0FBUyxDQUFDLENBQUM7UUFHdkQsTUFBTSxDQUNKLEdBQUcsRUFBRTtZQUNILElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQztnQkFDcEQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztZQUNqRCxDQUFDO1FBQ0gsQ0FBQyxFQUNELEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLENBQzVCLENBQUM7UUFFRixNQUFNLENBQ0osR0FBRyxFQUFFO1lBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO2dCQUNoRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQzdDLENBQUM7UUFDSCxDQUFDLEVBQ0QsRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsQ0FDNUIsQ0FBQztJQUNKLENBQUM7OEdBdENVLHFCQUFxQjtrR0FBckIscUJBQXFCLGlvQkNibEMsKzVIQXVHQSx5REQ1RlksV0FBVyxrOUJBQUUsUUFBUTs7MkZBRXBCLHFCQUFxQjtrQkFQakMsU0FBUzsrQkFDRSxrQkFBa0IsY0FHaEIsSUFBSSxXQUNQLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgY29tcHV0ZWQsIGVmZmVjdCwgaW5wdXQsIG91dHB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFJlcG9zaXRvcnksIFRlbXBsYXRlLCByZXBvcnRJc3N1ZVVybCB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IEtleXNQaXBlIH0gZnJvbSAnLi4va2V5cy5waXBlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdoZS1pc3N1ZS1jb25maXJtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2lzc3VlLWNvbmZpcm0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pc3N1ZS1jb25maXJtLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtGb3Jtc01vZHVsZSwgS2V5c1BpcGVdXG59KVxuZXhwb3J0IGNsYXNzIElzc3VlQ29uZmlybUNvbXBvbmVudCB7XG4gIHByb3RlY3RlZCB0aXRsZSA9IGlucHV0KCdTdWJtaXQgRmVlZGJhY2snKTtcbiAgcHJvdGVjdGVkIHJlcG9zaXRvcnkgPSBpbnB1dDxSZXBvc2l0b3J5PigpO1xuICBwcm90ZWN0ZWQgdGVtcGxhdGUgPSBpbnB1dDxUZW1wbGF0ZT4oKTtcbiAgcHJvdGVjdGVkIGlzQ29tbXVuaXR5ID0gaW5wdXQoZmFsc2UpO1xuXG4gIHByb3RlY3RlZCBjbG9zZWQgPSBvdXRwdXQ8Ym9vbGVhbj4oKTtcblxuICBwcm90ZWN0ZWQgUmVwb3NpdG9yeSA9IFJlcG9zaXRvcnk7XG4gIHByb3RlY3RlZCBUZW1wbGF0ZSA9IFRlbXBsYXRlO1xuICBwcm90ZWN0ZWQgcmVwb3NpdG9yaWVzID0gY29tcHV0ZWQoKCkgPT5cbiAgICBPYmplY3QudmFsdWVzKFJlcG9zaXRvcnkpLmZpbHRlcih2YWx1ZSA9PiB2YWx1ZSAhPT0gUmVwb3NpdG9yeS5jb21tdW5pdHkgfHwgdGhpcy5pc0NvbW11bml0eSgpKVxuICApO1xuICBwcm90ZWN0ZWQgaXNzdWVVcmwgPSBjb21wdXRlZCgoKSA9PlxuICAgIHRoaXMucmVwb3NpdG9yeSgpICYmIHRoaXMudGVtcGxhdGUoKSA/IHJlcG9ydElzc3VlVXJsKHRoaXMucmVwb3NpdG9yeSgpLCB0aGlzLnRlbXBsYXRlKCkpIDogbnVsbFxuICApO1xuXG4gIHByb3RlY3RlZCBzZWxlY3RlZFJlcG9zaXRvcnkgPSBzaWduYWw8UmVwb3NpdG9yeT4odW5kZWZpbmVkKTtcbiAgcHJvdGVjdGVkIHNlbGVjdGVkVGVtcGxhdGUgPSBzaWduYWw8VGVtcGxhdGU+KHVuZGVmaW5lZCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgZWZmZWN0KFxuICAgICAgKCkgPT4ge1xuICAgICAgICBpZiAoIXRoaXMuc2VsZWN0ZWRSZXBvc2l0b3J5KCkgJiYgdGhpcy5yZXBvc2l0b3J5KCkpIHtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkUmVwb3NpdG9yeS5zZXQodGhpcy5yZXBvc2l0b3J5KCkpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgeyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9XG4gICAgKTtcblxuICAgIGVmZmVjdChcbiAgICAgICgpID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLnNlbGVjdGVkVGVtcGxhdGUoKSAmJiB0aGlzLnRlbXBsYXRlKCkpIHtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkVGVtcGxhdGUuc2V0KHRoaXMudGVtcGxhdGUoKSk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH1cbiAgICApO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibW9kYWwgaXMtYWN0aXZlXCI+XG4gIDxkaXYgY2xhc3M9XCJtb2RhbC1iYWNrZ3JvdW5kXCI+PC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJtb2RhbC1jYXJkXCI+XG4gICAgPGhlYWRlciBjbGFzcz1cIm1vZGFsLWNhcmQtaGVhZFwiPlxuICAgICAgPHAgY2xhc3M9XCJtb2RhbC1jYXJkLXRpdGxlXCI+e3sgdGl0bGUoKSB9fTwvcD5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJkZWxldGVcIiBhcmlhLWxhYmVsPVwiY2xvc2VcIiAoY2xpY2spPVwiY2xvc2VkLmVtaXQoZmFsc2UpXCI+PC9idXR0b24+XG4gICAgPC9oZWFkZXI+XG4gICAgPHNlY3Rpb24gY2xhc3M9XCJtb2RhbC1jYXJkLWJvZHlcIj5cbiAgICAgIDxwIGNsYXNzPVwibWItMlwiPlBsZWFzZSBzZWxlY3QgdGhlIHR5cGUgb2YgaXNzdWUgZnJvbSB0aGUgbGlzdCBiZWxvdyB0byBzdGFydDo8L3A+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBpcy1ob3Jpem9udGFsIG15LTNcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkLWxhYmVsIGlzLW5vcm1hbFwiPlxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImxhYmVsXCIgZm9yPVwicmVwb3NpdG9yeVwiPkNhdGVnb3J5PC9sYWJlbD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZC1ib2R5XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udHJvbCBpcy1leHBhbmRlZFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0IGlzLW11bHRpcGxlIGlzLWZ1bGx3aWR0aFwiPlxuICAgICAgICAgICAgICAgIDxzZWxlY3RcbiAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cInNlbGVjdGVkUmVwb3NpdG9yeSgpXCJcbiAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwic2VsZWN0ZWRSZXBvc2l0b3J5LnNldCgkZXZlbnQudGFyZ2V0LnZhbHVlKVwiXG4gICAgICAgICAgICAgICAgICBuYW1lPVwicmVwb3NpdG9yeVwiXG4gICAgICAgICAgICAgICAgICByZXF1aXJlZD5cbiAgICAgICAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwidW5kZWZpbmVkXCI+U2VsZWN0IGZyb20gdGhlIGxpc3Q8L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgIEBmb3IgKHJlcG8gb2YgcmVwb3NpdG9yaWVzKCk7IHRyYWNrIHJlcG8pIHtcbiAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiBbdmFsdWVdPVwicmVwb1wiPlxuICAgICAgICAgICAgICAgICAgICAgIEBzd2l0Y2ggKHJlcG8pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBjYXNlIChSZXBvc2l0b3J5Lmdsb3NzYXJ5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIEdsb3NzYXJ5IG9mIHRlcm1zIC8gbG9va3VwIGlzc3Vlc1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgQGNhc2UgKFJlcG9zaXRvcnkubW9kZWxzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIENhbGN1bGF0aW9uIGlzc3Vlc1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgQGNhc2UgKFJlcG9zaXRvcnkub3JjaGVzdHJhdG9yKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIE9yY2hlc3RyYXRpb24gaXNzdWVzXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBAY2FzZSAoUmVwb3NpdG9yeS5hZ2dyZWdhdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBBZ2dyZWdhdGVkIERhdGEgaXNzdWVzXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBAY2FzZSAoUmVwb3NpdG9yeS5jb21tdW5pdHkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgVUkvVVggb3IgQVBJIGlzc3Vlc1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgQGNhc2UgKFJlcG9zaXRvcnkucG9vcmVuZW1lY2spIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgQ29udmVyc2lvbiBmcm9tIFAmTiBTcHJlYWRzaGVldFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgQGNhc2UgKFJlcG9zaXRvcnkuZnJvbnRlbmQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgT3RoZXIgaXNzdWVzXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L3NlbGVjdD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cblxuICAgICAgQGlmIChyZXBvc2l0b3J5KCkpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGlzLWhvcml6b250YWwgbXktM1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZC1sYWJlbCBpcy1ub3JtYWxcIj5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImxhYmVsXCIgZm9yPVwidGVtcGxhdGVcIj5Jc3N1ZTwvbGFiZWw+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkLWJvZHlcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udHJvbCBpcy1leHBhbmRlZFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3QgaXMtbXVsdGlwbGUgaXMtZnVsbHdpZHRoXCI+XG4gICAgICAgICAgICAgICAgICA8c2VsZWN0XG4gICAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cInNlbGVjdGVkVGVtcGxhdGUoKVwiXG4gICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwic2VsZWN0ZWRUZW1wbGF0ZS5zZXQoJGV2ZW50LnRhcmdldC52YWx1ZSlcIlxuICAgICAgICAgICAgICAgICAgICBuYW1lPVwidGVtcGxhdGVcIlxuICAgICAgICAgICAgICAgICAgICByZXF1aXJlZD5cbiAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiBbbmdWYWx1ZV09XCJ1bmRlZmluZWRcIj5TZWxlY3QgZnJvbSB0aGUgbGlzdDwvb3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICBAZm9yICh0IG9mIFRlbXBsYXRlIHwga2V5czsgdHJhY2sgdCkge1xuICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gW3ZhbHVlXT1cInQudmFsdWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBzd2l0Y2ggKHQudmFsdWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgQGNhc2UgKFRlbXBsYXRlLmJ1Zykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEkgZm91bmQgYSBidWdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICBAY2FzZSAoVGVtcGxhdGUuZmVhdHVyZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEkgd291bGQgbGlrZSBhIG5ldyBmZWF0dXJlXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICA8L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgPC9zZWxlY3Q+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuXG4gICAgICBAaWYgKGlzc3VlVXJsKCkpIHtcbiAgICAgICAgPHA+XG4gICAgICAgICAgPHNwYW4+UGxlYXNlIHJlcG9ydCB0aGUgaXNzdWUgb24gR2l0bGFiIHVzaW5nPC9zcGFuPlxuICAgICAgICAgIDxhIGNsYXNzPVwicGwtMVwiIFtocmVmXT1cImlzc3VlVXJsKClcIiB0YXJnZXQ9XCJfYmxhbmtcIj50aGlzIGxpbms8L2E+XG4gICAgICAgICAgLlxuICAgICAgICA8L3A+XG4gICAgICB9XG4gICAgPC9zZWN0aW9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNzdWUtY29uZmlybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tbW9uL2lzc3VlLWNvbmZpcm0vaXNzdWUtY29uZmlybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvY29tbW9uL2lzc3VlLWNvbmZpcm0vaXNzdWUtY29uZmlybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFNUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsY0FBYyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLENBQUM7OztBQVN4QyxNQUFNLE9BQU8scUJBQXFCO0lBc0JoQztRQXJCaUIsZ0JBQVcsR0FBRyxNQUFNLENBQUMsY0FBYyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFFbkUsVUFBSyxHQUFHLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2pDLGVBQVUsR0FBRyxLQUFLLEVBQWMsQ0FBQztRQUNqQyxhQUFRLEdBQUcsS0FBSyxFQUFZLENBQUM7UUFDN0IsZ0JBQVcsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFeEIsV0FBTSxHQUFHLE1BQU0sRUFBRSxDQUFDO1FBRWxCLGVBQVUsR0FBRyxVQUFVLENBQUM7UUFDeEIsYUFBUSxHQUFHLFFBQVEsQ0FBQztRQUNwQixpQkFBWSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FDckMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEtBQUssVUFBVSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FDaEcsQ0FBQztRQUNRLGFBQVEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQ2pDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDakcsQ0FBQztRQUVRLHVCQUFrQixHQUFHLE1BQU0sQ0FBYSxTQUFTLENBQUMsQ0FBQztRQUNuRCxxQkFBZ0IsR0FBRyxNQUFNLENBQVcsU0FBUyxDQUFDLENBQUM7UUFHdkQsTUFBTSxDQUNKLEdBQUcsRUFBRTtZQUNILElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQztnQkFDcEQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztZQUNqRCxDQUFDO1FBQ0gsQ0FBQyxFQUNELEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLENBQzVCLENBQUM7UUFFRixNQUFNLENBQ0osR0FBRyxFQUFFO1lBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO2dCQUNoRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQzdDLENBQUM7UUFDSCxDQUFDLEVBQ0QsRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsQ0FDNUIsQ0FBQztJQUNKLENBQUM7SUFFUyxLQUFLO1FBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQzVCLENBQUM7OEdBN0NVLHFCQUFxQjtrR0FBckIscUJBQXFCLHF2QkNkbEMsbzVIQXVHQSx5REQzRlksV0FBVyxrOUJBQUUsUUFBUTs7MkZBRXBCLHFCQUFxQjtrQkFQakMsU0FBUzsrQkFDRSxrQkFBa0IsY0FHaEIsSUFBSSxXQUNQLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgY29tcHV0ZWQsIGVmZmVjdCwgaW5qZWN0LCBtb2RlbCwgb3V0cHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTmdiQWN0aXZlTW9kYWwgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5cbmltcG9ydCB7IFJlcG9zaXRvcnksIFRlbXBsYXRlLCByZXBvcnRJc3N1ZVVybCB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IEtleXNQaXBlIH0gZnJvbSAnLi4va2V5cy5waXBlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaGUtaXNzdWUtY29uZmlybScsXG4gIHRlbXBsYXRlVXJsOiAnLi9pc3N1ZS1jb25maXJtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaXNzdWUtY29uZmlybS5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbRm9ybXNNb2R1bGUsIEtleXNQaXBlXVxufSlcbmV4cG9ydCBjbGFzcyBJc3N1ZUNvbmZpcm1Db21wb25lbnQge1xuICBwcml2YXRlIHJlYWRvbmx5IGFjdGl2ZU1vZGFsID0gaW5qZWN0KE5nYkFjdGl2ZU1vZGFsLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gIHB1YmxpYyB0aXRsZSA9IG1vZGVsKCdTdWJtaXQgRmVlZGJhY2snKTtcbiAgcHVibGljIHJlcG9zaXRvcnkgPSBtb2RlbDxSZXBvc2l0b3J5PigpO1xuICBwdWJsaWMgdGVtcGxhdGUgPSBtb2RlbDxUZW1wbGF0ZT4oKTtcbiAgcHVibGljIGlzQ29tbXVuaXR5ID0gbW9kZWwoZmFsc2UpO1xuXG4gIHByb3RlY3RlZCBjbG9zZWQgPSBvdXRwdXQoKTtcblxuICBwcm90ZWN0ZWQgUmVwb3NpdG9yeSA9IFJlcG9zaXRvcnk7XG4gIHByb3RlY3RlZCBUZW1wbGF0ZSA9IFRlbXBsYXRlO1xuICBwcm90ZWN0ZWQgcmVwb3NpdG9yaWVzID0gY29tcHV0ZWQoKCkgPT5cbiAgICBPYmplY3QudmFsdWVzKFJlcG9zaXRvcnkpLmZpbHRlcih2YWx1ZSA9PiB2YWx1ZSAhPT0gUmVwb3NpdG9yeS5jb21tdW5pdHkgfHwgdGhpcy5pc0NvbW11bml0eSgpKVxuICApO1xuICBwcm90ZWN0ZWQgaXNzdWVVcmwgPSBjb21wdXRlZCgoKSA9PlxuICAgIHRoaXMucmVwb3NpdG9yeSgpICYmIHRoaXMudGVtcGxhdGUoKSA/IHJlcG9ydElzc3VlVXJsKHRoaXMucmVwb3NpdG9yeSgpLCB0aGlzLnRlbXBsYXRlKCkpIDogbnVsbFxuICApO1xuXG4gIHByb3RlY3RlZCBzZWxlY3RlZFJlcG9zaXRvcnkgPSBzaWduYWw8UmVwb3NpdG9yeT4odW5kZWZpbmVkKTtcbiAgcHJvdGVjdGVkIHNlbGVjdGVkVGVtcGxhdGUgPSBzaWduYWw8VGVtcGxhdGU+KHVuZGVmaW5lZCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgZWZmZWN0KFxuICAgICAgKCkgPT4ge1xuICAgICAgICBpZiAoIXRoaXMuc2VsZWN0ZWRSZXBvc2l0b3J5KCkgJiYgdGhpcy5yZXBvc2l0b3J5KCkpIHtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkUmVwb3NpdG9yeS5zZXQodGhpcy5yZXBvc2l0b3J5KCkpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgeyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9XG4gICAgKTtcblxuICAgIGVmZmVjdChcbiAgICAgICgpID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLnNlbGVjdGVkVGVtcGxhdGUoKSAmJiB0aGlzLnRlbXBsYXRlKCkpIHtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkVGVtcGxhdGUuc2V0KHRoaXMudGVtcGxhdGUoKSk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH1cbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNsb3NlKCkge1xuICAgIHRoaXMuY2xvc2VkLmVtaXQoKTtcbiAgICB0aGlzLmFjdGl2ZU1vZGFsPy5jbG9zZSgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibW9kYWwgaXMtYWN0aXZlXCI+XG4gIDxkaXYgY2xhc3M9XCJtb2RhbC1iYWNrZ3JvdW5kXCI+PC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJtb2RhbC1jYXJkXCI+XG4gICAgPGhlYWRlciBjbGFzcz1cIm1vZGFsLWNhcmQtaGVhZFwiPlxuICAgICAgPHAgY2xhc3M9XCJtb2RhbC1jYXJkLXRpdGxlXCI+e3sgdGl0bGUoKSB9fTwvcD5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJkZWxldGVcIiBhcmlhLWxhYmVsPVwiY2xvc2VcIiAoY2xpY2spPVwiY2xvc2UoKVwiPjwvYnV0dG9uPlxuICAgIDwvaGVhZGVyPlxuICAgIDxzZWN0aW9uIGNsYXNzPVwibW9kYWwtY2FyZC1ib2R5XCI+XG4gICAgICA8cCBjbGFzcz1cIm1iLTJcIj5QbGVhc2Ugc2VsZWN0IHRoZSB0eXBlIG9mIGlzc3VlIGZyb20gdGhlIGxpc3QgYmVsb3cgdG8gc3RhcnQ6PC9wPlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgaXMtaG9yaXpvbnRhbCBteS0zXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZC1sYWJlbCBpcy1ub3JtYWxcIj5cbiAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJsYWJlbFwiIGZvcj1cInJlcG9zaXRvcnlcIj5DYXRlZ29yeTwvbGFiZWw+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQtYm9keVwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRyb2wgaXMtZXhwYW5kZWRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdCBpcy1tdWx0aXBsZSBpcy1mdWxsd2lkdGhcIj5cbiAgICAgICAgICAgICAgICA8c2VsZWN0XG4gICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJzZWxlY3RlZFJlcG9zaXRvcnkoKVwiXG4gICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cInNlbGVjdGVkUmVwb3NpdG9yeS5zZXQoJGV2ZW50LnRhcmdldC52YWx1ZSlcIlxuICAgICAgICAgICAgICAgICAgbmFtZT1cInJlcG9zaXRvcnlcIlxuICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ+XG4gICAgICAgICAgICAgICAgICA8b3B0aW9uIFtuZ1ZhbHVlXT1cInVuZGVmaW5lZFwiPlNlbGVjdCBmcm9tIHRoZSBsaXN0PC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICBAZm9yIChyZXBvIG9mIHJlcG9zaXRvcmllcygpOyB0cmFjayByZXBvKSB7XG4gICAgICAgICAgICAgICAgICAgIDxvcHRpb24gW3ZhbHVlXT1cInJlcG9cIj5cbiAgICAgICAgICAgICAgICAgICAgICBAc3dpdGNoIChyZXBvKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAY2FzZSAoUmVwb3NpdG9yeS5nbG9zc2FyeSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBHbG9zc2FyeSBvZiB0ZXJtcyAvIGxvb2t1cCBpc3N1ZXNcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIEBjYXNlIChSZXBvc2l0b3J5Lm1vZGVscykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBDYWxjdWxhdGlvbiBpc3N1ZXNcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIEBjYXNlIChSZXBvc2l0b3J5Lm9yY2hlc3RyYXRvcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBPcmNoZXN0cmF0aW9uIGlzc3Vlc1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgQGNhc2UgKFJlcG9zaXRvcnkuYWdncmVnYXRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgQWdncmVnYXRlZCBEYXRhIGlzc3Vlc1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgQGNhc2UgKFJlcG9zaXRvcnkuY29tbXVuaXR5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIFVJL1VYIG9yIEFQSSBpc3N1ZXNcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIEBjYXNlIChSZXBvc2l0b3J5LnBvb3JlbmVtZWNrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIENvbnZlcnNpb24gZnJvbSBQJk4gU3ByZWFkc2hlZXRcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIEBjYXNlIChSZXBvc2l0b3J5LmZyb250ZW5kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIE90aGVyIGlzc3Vlc1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9zZWxlY3Q+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIEBpZiAocmVwb3NpdG9yeSgpKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBpcy1ob3Jpem9udGFsIG15LTNcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQtbGFiZWwgaXMtbm9ybWFsXCI+XG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJsYWJlbFwiIGZvcj1cInRlbXBsYXRlXCI+SXNzdWU8L2xhYmVsPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZC1ib2R5XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRyb2wgaXMtZXhwYW5kZWRcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0IGlzLW11bHRpcGxlIGlzLWZ1bGx3aWR0aFwiPlxuICAgICAgICAgICAgICAgICAgPHNlbGVjdFxuICAgICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJzZWxlY3RlZFRlbXBsYXRlKClcIlxuICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cInNlbGVjdGVkVGVtcGxhdGUuc2V0KCRldmVudC50YXJnZXQudmFsdWUpXCJcbiAgICAgICAgICAgICAgICAgICAgbmFtZT1cInRlbXBsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ+XG4gICAgICAgICAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwidW5kZWZpbmVkXCI+U2VsZWN0IGZyb20gdGhlIGxpc3Q8L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgQGZvciAodCBvZiBUZW1wbGF0ZSB8IGtleXM7IHRyYWNrIHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIFt2YWx1ZV09XCJ0LnZhbHVlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICBAc3dpdGNoICh0LnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIEBjYXNlIChUZW1wbGF0ZS5idWcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJIGZvdW5kIGEgYnVnXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgQGNhc2UgKFRlbXBsYXRlLmZlYXR1cmUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJIHdvdWxkIGxpa2UgYSBuZXcgZmVhdHVyZVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgPC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cblxuICAgICAgQGlmIChpc3N1ZVVybCgpKSB7XG4gICAgICAgIDxwPlxuICAgICAgICAgIDxzcGFuPlBsZWFzZSByZXBvcnQgdGhlIGlzc3VlIG9uIEdpdGxhYiB1c2luZzwvc3Bhbj5cbiAgICAgICAgICA8YSBjbGFzcz1cInBsLTFcIiBbaHJlZl09XCJpc3N1ZVVybCgpXCIgdGFyZ2V0PVwiX2JsYW5rXCI+dGhpcyBsaW5rPC9hPlxuICAgICAgICAgIC5cbiAgICAgICAgPC9wPlxuICAgICAgfVxuICAgIDwvc2VjdGlvbj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -5,12 +5,14 @@ import { FaIconComponent } from '@fortawesome/angular-fontawesome';
|
|
|
5
5
|
import { faTimes } from '@fortawesome/free-solid-svg-icons';
|
|
6
6
|
import { isNumber } from '@hestia-earth/utils';
|
|
7
7
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
8
|
+
import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';
|
|
8
9
|
import { HE_MAP_LOADED, defaultFeature, addPolygonToFeature, polygonsFromFeature, strokeStyle } from '../maps-utils';
|
|
9
10
|
import * as i0 from "@angular/core";
|
|
10
11
|
export class MapsDrawingConfirmComponent {
|
|
11
12
|
constructor() {
|
|
12
13
|
this.destroyRef = inject(DestroyRef);
|
|
13
14
|
this.mapLoaded$ = inject(HE_MAP_LOADED);
|
|
15
|
+
this.activeModal = inject(NgbActiveModal, { optional: true });
|
|
14
16
|
this.faTimes = faTimes;
|
|
15
17
|
this.listeners = [];
|
|
16
18
|
this.shapes = [];
|
|
@@ -65,7 +67,7 @@ export class MapsDrawingConfirmComponent {
|
|
|
65
67
|
setTimeout(() => this.loadData());
|
|
66
68
|
}
|
|
67
69
|
confirm() {
|
|
68
|
-
this.
|
|
70
|
+
this.close(this.coordinates || JSON.stringify(this.feature) || '');
|
|
69
71
|
}
|
|
70
72
|
clear() {
|
|
71
73
|
this.shapes.forEach(shape => shape.setMap(null));
|
|
@@ -73,12 +75,16 @@ export class MapsDrawingConfirmComponent {
|
|
|
73
75
|
this.coordinates = undefined;
|
|
74
76
|
this.feature = undefined;
|
|
75
77
|
}
|
|
78
|
+
close(value) {
|
|
79
|
+
this.closed.emit(value);
|
|
80
|
+
this.activeModal?.close(value);
|
|
81
|
+
}
|
|
76
82
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: MapsDrawingConfirmComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
77
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: MapsDrawingConfirmComponent, isStandalone: true, selector: "he-maps-drawing-confirm", inputs: { value: "value", modes: "modes", center: "center", zoom: "zoom" }, outputs: { closed: "closed" }, viewQueries: [{ propertyName: "map", first: true, predicate: GoogleMap, descendants: true }], ngImport: i0, template: "<div class=\"modal is-large is-active\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-card\">\n <header class=\"modal-card-head\">\n <p class=\"modal-card-title\">Draw on Map</p>\n <button class=\"delete\" aria-label=\"close\" (click)=\"
|
|
83
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: MapsDrawingConfirmComponent, isStandalone: true, selector: "he-maps-drawing-confirm", inputs: { value: "value", modes: "modes", center: "center", zoom: "zoom" }, outputs: { closed: "closed" }, viewQueries: [{ propertyName: "map", first: true, predicate: GoogleMap, descendants: true }], ngImport: i0, template: "<div class=\"modal is-large is-active\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-card\">\n <header class=\"modal-card-head\">\n <p class=\"modal-card-title\">Draw on Map</p>\n <button class=\"delete\" aria-label=\"close\" (click)=\"close(value)\"></button>\n </header>\n <section class=\"modal-card-body p-0\">\n @if (mapLoaded$ | async) {\n <google-map\n (mapInitialized)=\"mapInitialized()\"\n height=\"100%\"\n width=\"100%\"\n [zoom]=\"zoom\"\n [center]=\"center\"\n [options]=\"options()\"></google-map>\n }\n </section>\n <footer class=\"modal-card-foot\">\n <button class=\"button is-primary\" (click)=\"confirm()\">\n <span>Confirm</span>\n </button>\n <button class=\"button is-ghost\" (click)=\"close(value)\">\n <span>Close</span>\n </button>\n <button class=\"button is-danger\" (click)=\"clear()\">\n <fa-icon class=\"mr-2\" [icon]=\"faTimes\"></fa-icon>\n <span>Clear</span>\n </button>\n </footer>\n </div>\n</div>\n", styles: ["google-map{display:block;height:100%;max-height:calc(100vh - 146px);min-height:500px}\n"], dependencies: [{ kind: "component", type: GoogleMap, selector: "google-map", inputs: ["height", "width", "mapId", "mapTypeId", "center", "zoom", "options"], outputs: ["mapInitialized", "authFailure", "boundsChanged", "centerChanged", "mapClick", "mapDblclick", "mapDrag", "mapDragend", "mapDragstart", "headingChanged", "idle", "maptypeidChanged", "mapMousemove", "mapMouseout", "mapMouseover", "projectionChanged", "mapRightclick", "tilesloaded", "tiltChanged", "zoomChanged"], exportAs: ["googleMap"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
|
|
78
84
|
}
|
|
79
85
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: MapsDrawingConfirmComponent, decorators: [{
|
|
80
86
|
type: Component,
|
|
81
|
-
args: [{ selector: 'he-maps-drawing-confirm', standalone: true, imports: [GoogleMap, FaIconComponent, AsyncPipe], template: "<div class=\"modal is-large is-active\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-card\">\n <header class=\"modal-card-head\">\n <p class=\"modal-card-title\">Draw on Map</p>\n <button class=\"delete\" aria-label=\"close\" (click)=\"
|
|
87
|
+
args: [{ selector: 'he-maps-drawing-confirm', standalone: true, imports: [GoogleMap, FaIconComponent, AsyncPipe], template: "<div class=\"modal is-large is-active\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-card\">\n <header class=\"modal-card-head\">\n <p class=\"modal-card-title\">Draw on Map</p>\n <button class=\"delete\" aria-label=\"close\" (click)=\"close(value)\"></button>\n </header>\n <section class=\"modal-card-body p-0\">\n @if (mapLoaded$ | async) {\n <google-map\n (mapInitialized)=\"mapInitialized()\"\n height=\"100%\"\n width=\"100%\"\n [zoom]=\"zoom\"\n [center]=\"center\"\n [options]=\"options()\"></google-map>\n }\n </section>\n <footer class=\"modal-card-foot\">\n <button class=\"button is-primary\" (click)=\"confirm()\">\n <span>Confirm</span>\n </button>\n <button class=\"button is-ghost\" (click)=\"close(value)\">\n <span>Close</span>\n </button>\n <button class=\"button is-danger\" (click)=\"clear()\">\n <fa-icon class=\"mr-2\" [icon]=\"faTimes\"></fa-icon>\n <span>Clear</span>\n </button>\n </footer>\n </div>\n</div>\n", styles: ["google-map{display:block;height:100%;max-height:calc(100vh - 146px);min-height:500px}\n"] }]
|
|
82
88
|
}], ctorParameters: () => [], propDecorators: { map: [{
|
|
83
89
|
type: ViewChild,
|
|
84
90
|
args: [GoogleMap]
|
|
@@ -91,4 +97,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
|
|
|
91
97
|
}], zoom: [{
|
|
92
98
|
type: Input
|
|
93
99
|
}] } });
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwcy1kcmF3aW5nLWNvbmZpcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbW1vbi9tYXBzLWRyYXdpbmctY29uZmlybS9tYXBzLWRyYXdpbmctY29uZmlybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvY29tbW9uL21hcHMtZHJhd2luZy1jb25maXJtL21hcHMtZHJhd2luZy1jb25maXJtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ILE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUM1RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFaEUsT0FBTyxFQUNMLGFBQWEsRUFHYixjQUFjLEVBQ2QsbUJBQW1CLEVBQ25CLG1CQUFtQixFQUNuQixXQUFXLEVBQ1osTUFBTSxlQUFlLENBQUM7O0FBU3ZCLE1BQU0sT0FBTywyQkFBMkI7SUE0QnRDO1FBM0JRLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDOUIsZUFBVSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUUxQixZQUFPLEdBQUcsT0FBTyxDQUFDO1FBRTdCLGNBQVMsR0FBb0MsRUFBRSxDQUFDO1FBQ2hELFdBQU0sR0FBaUQs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Q1AsQ0FBQyxTQUFTLEVBQUUsZUFBZSxFQUFFLFNBQVMsQ0FBQzt3REFleEMsR0FBRztzQkFEVixTQUFTO3VCQUFDLFNBQVM7Z0JBSVYsS0FBSztzQkFEZCxLQUFLO2dCQUdJLEtBQUs7c0JBRGQsS0FBSztnQkFHSSxNQUFNO3NCQURmLEtBQUs7Z0JBR0ksSUFBSTtzQkFEYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIE9uRGVzdHJveSwgSW5wdXQsIFZpZXdDaGlsZCwgc2lnbmFsLCBEZXN0cm95UmVmLCBvdXRwdXQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEdvb2dsZU1hcCB9IGZyb20gJ0Bhbmd1bGFyL2dvb2dsZS1tYXBzJztcbmltcG9ydCB7IEZhSWNvbkNvbXBvbmVudCB9IGZyb20gJ0Bmb3J0YXdlc29tZS9hbmd1bGFyLWZvbnRhd2Vzb21lJztcbmltcG9ydCB7IGZhVGltZXMgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgaXNOdW1iZXIgfSBmcm9tICdAaGVzdGlhLWVhcnRoL3V0aWxzJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuaW1wb3J0IHtcbiAgSEVfTUFQX0xPQURFRCxcbiAgSUZlYXR1cmUsXG4gIElGZWF0dXJlQ29sbGVjdGlvbixcbiAgZGVmYXVsdEZlYXR1cmUsXG4gIGFkZFBvbHlnb25Ub0ZlYXR1cmUsXG4gIHBvbHlnb25zRnJvbUZlYXR1cmUsXG4gIHN0cm9rZVN0eWxlXG59IGZyb20gJy4uL21hcHMtdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdoZS1tYXBzLWRyYXdpbmctY29uZmlybScsXG4gIHRlbXBsYXRlVXJsOiAnLi9tYXBzLWRyYXdpbmctY29uZmlybS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21hcHMtZHJhd2luZy1jb25maXJtLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtHb29nbGVNYXAsIEZhSWNvbkNvbXBvbmVudCwgQXN5bmNQaXBlXVxufSlcbmV4cG9ydCBjbGFzcyBNYXBzRHJhd2luZ0NvbmZpcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcbiAgcHJvdGVjdGVkIG1hcExvYWRlZCQgPSBpbmplY3QoSEVfTUFQX0xPQURFRCk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGZhVGltZXMgPSBmYVRpbWVzO1xuXG4gIHByaXZhdGUgbGlzdGVuZXJzOiBnb29nbGUubWFwcy5NYXBzRXZlbnRMaXN0ZW5lcltdID0gW107XG4gIHByaXZhdGUgc2hhcGVzOiAoZ29vZ2xlLm1hcHMuTWFya2VyIHwgZ29vZ2xlLm1hcHMuUG9seWdvbilbXSA9IFtdO1xuXG4gIHByaXZhdGUgZmVhdHVyZT86IElGZWF0dXJlIHwgSUZlYXR1cmVDb2xsZWN0aW9uID0gZGVmYXVsdEZlYXR1cmUoKTtcbiAgcHJpdmF0ZSBjb29yZGluYXRlcz86IGdvb2dsZS5tYXBzLkxhdExuZ0xpdGVyYWw7XG5cbiAgQFZpZXdDaGlsZChHb29nbGVNYXApXG4gIHByaXZhdGUgbWFwPzogR29vZ2xlTWFwO1xuXG4gIEBJbnB1dCgpXG4gIHByb3RlY3RlZCB2YWx1ZT86IHN0cmluZztcbiAgQElucHV0KClcbiAgcHJvdGVjdGVkIG1vZGVzPzogZ29vZ2xlLm1hcHMuZHJhd2luZy5PdmVybGF5VHlwZVtdO1xuICBASW5wdXQoKVxuICBwcm90ZWN0ZWQgY2VudGVyID0geyBsYXQ6IDAsIGxuZzogMCB9O1xuICBASW5wdXQoKVxuICBwcm90ZWN0ZWQgem9vbSA9IDM7XG5cbiAgcHJvdGVjdGVkIGNsb3NlZCA9IG91dHB1dDxnb29nbGUubWFwcy5MYXRMbmdMaXRlcmFsIHwgc3RyaW5nPigpO1xuXG4gIHByb3RlY3RlZCBvcHRpb25zID0gc2lnbmFsKHt9IGFzIGdvb2dsZS5tYXBzLk1hcE9wdGlvbnMpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMubWFwTG9hZGVkJC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5vcHRpb25zLnNldCh7XG4gICAgICAgIGZ1bGxzY3JlZW5Db250cm9sOiBmYWxzZSxcbiAgICAgICAgbWFwVHlwZUNvbnRyb2w6IHRydWUsXG4gICAgICAgIHN0cmVldFZpZXdDb250cm9sOiBmYWxzZSxcbiAgICAgICAgem9vbUNvbnRyb2w6IHRydWUsXG4gICAgICAgIHpvb21Db250cm9sT3B0aW9uczoge1xuICAgICAgICAgIHBvc2l0aW9uOiBnb29nbGUubWFwcy5Db250cm9sUG9zaXRpb24uVE9QX1JJR0hUXG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5mZWF0dXJlID0gdGhpcy52YWx1ZSAmJiAhaXNOdW1iZXIodGhpcy52YWx1ZSkgPyBKU09OLnBhcnNlKHRoaXMudmFsdWUpIDogdGhpcy5mZWF0dXJlO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5saXN0ZW5lcnMubWFwKGxpc3RlbmVyID0+IGdvb2dsZS5tYXBzLmV2ZW50LnJlbW92ZUxpc3RlbmVyKGxpc3RlbmVyKSk7XG4gIH1cblxuICBwcml2YXRlIG9uUG9seWdvbkFkZGVkKHBvbHlnb246IGdvb2dsZS5tYXBzLlBvbHlnb24pIHtcbiAgICB0aGlzLnNoYXBlcy5wdXNoKHBvbHlnb24pO1xuICAgIHRoaXMuZmVhdHVyZSA9IHRoaXMuZmVhdHVyZSB8fCBkZWZhdWx0RmVhdHVyZSgpO1xuICAgIGFkZFBvbHlnb25Ub0ZlYXR1cmUodGhpcy5mZWF0dXJlLCBwb2x5Z29uKTtcbiAgfVxuXG4gIHByaXZhdGUgb25NYXJrZXJBZGRlZChtYXJrZXI6IGdvb2dsZS5tYXBzLk1hcmtlcikge1xuICAgIHRoaXMuc2hhcGVzLnB1c2gobWFya2VyKTtcbiAgICBjb25zdCBwb3NpdGlvbiA9IG1hcmtlci5nZXRQb3NpdGlvbigpO1xuICAgIHRoaXMuY29vcmRpbmF0ZXMgPSBwb3NpdGlvbj8udG9KU09OKCk7XG4gIH1cblxuICBwcml2YXRlIGxvYWREYXRhKCkge1xuICAgIHRoaXMuc2hhcGVzID0gcG9seWdvbnNGcm9tRmVhdHVyZSh0aGlzLmZlYXR1cmUpO1xuICAgIHRoaXMuc2hhcGVzLmZvckVhY2gocG9seWdvbiA9PiBwb2x5Z29uLnNldE1hcCh0aGlzLm1hcD8uZ29vZ2xlTWFwKSk7XG4gICAgY29uc3QgZHJhd2luZ01hbmFnZXIgPSBuZXcgZ29vZ2xlLm1hcHMuZHJhd2luZy5EcmF3aW5nTWFuYWdlcih7XG4gICAgICBkcmF3aW5nQ29udHJvbE9wdGlvbnM6IHtcbiAgICAgICAgcG9zaXRpb246IGdvb2dsZS5tYXBzLkNvbnRyb2xQb3NpdGlvbi5UT1BfQ0VOVEVSLFxuICAgICAgICBkcmF3aW5nTW9kZXM6IHRoaXMubW9kZXMgfHwgW2dvb2dsZS5tYXBzLmRyYXdpbmcuT3ZlcmxheVR5cGUuUE9MWUdPTl1cbiAgICAgIH0sXG4gICAgICBwb2x5Z29uT3B0aW9uczogc3Ryb2tlU3R5bGVcbiAgICB9KTtcbiAgICBkcmF3aW5nTWFuYWdlci5zZXRNYXAodGhpcy5tYXA/Lmdvb2dsZU1hcCk7XG4gICAgdGhpcy5saXN0ZW5lcnMucHVzaChcbiAgICAgIGdvb2dsZS5tYXBzLmV2ZW50LmFkZExpc3RlbmVyKGRyYXdpbmdNYW5hZ2VyLCAncG9seWdvbmNvbXBsZXRlJywgcG9seWdvbiA9PiB0aGlzLm9uUG9seWdvbkFkZGVkKHBvbHlnb24pKVxuICAgICk7XG4gICAgdGhpcy5saXN0ZW5lcnMucHVzaChcbiAgICAgIGdvb2dsZS5tYXBzLmV2ZW50LmFkZExpc3RlbmVyKGRyYXdpbmdNYW5hZ2VyLCAnbWFya2VyY29tcGxldGUnLCBtYXJrZXIgPT4gdGhpcy5vbk1hcmtlckFkZGVkKG1hcmtlcikpXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBtYXBJbml0aWFsaXplZCgpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMubG9hZERhdGEoKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY29uZmlybSgpIHtcbiAgICB0aGlzLmNsb3NlZC5lbWl0KHRoaXMuY29vcmRpbmF0ZXMgfHwgSlNPTi5zdHJpbmdpZnkodGhpcy5mZWF0dXJlKSB8fCAnJyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY2xlYXIoKSB7XG4gICAgdGhpcy5zaGFwZXMuZm9yRWFjaChzaGFwZSA9PiBzaGFwZS5zZXRNYXAobnVsbCkpO1xuICAgIHRoaXMuc2hhcGVzID0gW107XG4gICAgdGhpcy5jb29yZGluYXRlcyA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmZlYXR1cmUgPSB1bmRlZmluZWQ7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJtb2RhbCBpcy1sYXJnZSBpcy1hY3RpdmVcIj5cbiAgPGRpdiBjbGFzcz1cIm1vZGFsLWJhY2tncm91bmRcIj48L2Rpdj5cbiAgPGRpdiBjbGFzcz1cIm1vZGFsLWNhcmRcIj5cbiAgICA8aGVhZGVyIGNsYXNzPVwibW9kYWwtY2FyZC1oZWFkXCI+XG4gICAgICA8cCBjbGFzcz1cIm1vZGFsLWNhcmQtdGl0bGVcIj5EcmF3IG9uIE1hcDwvcD5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJkZWxldGVcIiBhcmlhLWxhYmVsPVwiY2xvc2VcIiAoY2xpY2spPVwiY2xvc2VkLmVtaXQodmFsdWUpXCI+PC9idXR0b24+XG4gICAgPC9oZWFkZXI+XG4gICAgPHNlY3Rpb24gY2xhc3M9XCJtb2RhbC1jYXJkLWJvZHkgcC0wXCI+XG4gICAgICBAaWYgKG1hcExvYWRlZCQgfCBhc3luYykge1xuICAgICAgICA8Z29vZ2xlLW1hcFxuICAgICAgICAgIChtYXBJbml0aWFsaXplZCk9XCJtYXBJbml0aWFsaXplZCgpXCJcbiAgICAgICAgICBoZWlnaHQ9XCIxMDAlXCJcbiAgICAgICAgICB3aWR0aD1cIjEwMCVcIlxuICAgICAgICAgIFt6b29tXT1cInpvb21cIlxuICAgICAgICAgIFtjZW50ZXJdPVwiY2VudGVyXCJcbiAgICAgICAgICBbb3B0aW9uc109XCJvcHRpb25zKClcIj48L2dvb2dsZS1tYXA+XG4gICAgICB9XG4gICAgPC9zZWN0aW9uPlxuICAgIDxmb290ZXIgY2xhc3M9XCJtb2RhbC1jYXJkLWZvb3RcIj5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJidXR0b24gaXMtcHJpbWFyeVwiIChjbGljayk9XCJjb25maXJtKClcIj5cbiAgICAgICAgPHNwYW4+Q29uZmlybTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBpcy1naG9zdFwiIChjbGljayk9XCJjbG9zZWQuZW1pdCh2YWx1ZSlcIj5cbiAgICAgICAgPHNwYW4+Q2xvc2U8L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJidXR0b24gaXMtZGFuZ2VyXCIgKGNsaWNrKT1cImNsZWFyKClcIj5cbiAgICAgICAgPGZhLWljb24gY2xhc3M9XCJtci0yXCIgW2ljb25dPVwiZmFUaW1lc1wiPjwvZmEtaWNvbj5cbiAgICAgICAgPHNwYW4+Q2xlYXI8L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Zvb3Rlcj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwcy1kcmF3aW5nLWNvbmZpcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbW1vbi9tYXBzLWRyYXdpbmctY29uZmlybS9tYXBzLWRyYXdpbmctY29uZmlybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvY29tbW9uL21hcHMtZHJhd2luZy1jb25maXJtL21hcHMtZHJhd2luZy1jb25maXJtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ILE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUM1RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTVELE9BQU8sRUFDTCxhQUFhLEVBR2IsY0FBYyxFQUNkLG1CQUFtQixFQUNuQixtQkFBbUIsRUFDbkIsV0FBVyxFQUNaLE1BQU0sZUFBZSxDQUFDOztBQVN2QixNQUFNLE9BQU8sMkJBQTJCO0lBNkJ0QztRQTVCUSxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzlCLGVBQVUsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDNUIsZ0JBQVcsR0FBRyxNQUFNLENBQUMsY0FBYyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFFdkQsWUFBTyxHQUFHLE9BQU8sQ0FBQztRQUU3QixjQUFTLEdBQW9DLEVBQUUsQ0FBQztRQUNoRCxXQUFNLEdBQWlELEVBQUUsQ0FBQztRQUUxRCxZQUFPLEdBQW1DLGNBQWMsRUFBRSxDQUFDO1FBVzVELFdBQU0sR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDO1FBRTVCLFNBQUksR0FBRyxDQUFDLENBQUM7UUFFTixXQUFNLEdBQUcsTUFBTSxFQUFzQyxDQUFDO1FBRXRELFlBQU8sR0FBRyxNQUFNLENBQUMsRUFBNEIsQ0FBQyxDQUFDO1FBR3ZELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDdkUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7Z0JBQ2YsaUJBQWlCLEVBQUUsS0FBSztnQkFDeEIsY0FBYyxFQUFFLElBQUk7Z0JBQ3BCLGlCQUFpQixFQUFFLEtBQUs7Z0JBQ3hCLFdBQVcsRUFBRSxJQUFJO2dCQUNqQixrQkFBa0IsRUFBRTtvQkFDbEIsUUFBUSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVM7aUJBQ2hEO2FBQ0YsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQzdGLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBRU8sY0FBYyxDQUFDLE9BQTRCO1FBQ2pELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxjQUFjLEVBQUUsQ0FBQztRQUNoRCxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFTyxhQUFhLENBQUMsTUFBMEI7UUFDOUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDekIsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxXQUFXLEdBQUcsUUFBUSxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFTyxRQUFRO1FBQ2QsSUFBSSxDQUFDLE1BQU0sR0FBRyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUNwRSxNQUFNLGNBQWMsR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQztZQUM1RCxxQkFBcUIsRUFBRTtnQkFDckIsUUFBUSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVU7Z0JBQ2hELFlBQVksRUFBRSxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQzthQUN0RTtZQUNELGNBQWMsRUFBRSxXQUFXO1NBQzVCLENBQUMsQ0FBQztRQUNILGNBQWMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUMzQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FDakIsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FDMUcsQ0FBQztRQUNGLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUNqQixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUN0RyxDQUFDO0lBQ0osQ0FBQztJQUVTLGNBQWM7UUFDdEIsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFUyxPQUFPO1FBQ2YsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFUyxLQUFLO1FBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLFdBQVcsR0FBRyxTQUFTLENBQUM7UUFDN0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxTQUFTLENBQUM7SUFDM0IsQ0FBQztJQUVTLEtBQUssQ0FBQyxLQUF5QztRQUN2RCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN4QixJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDOzhHQXBHVSwyQkFBMkI7a0dBQTNCLDJCQUEyQixtT0FhM0IsU0FBUyxnREN2Q3RCLDJsQ0FnQ0EsaUpEUlksU0FBUyxrZUFBRSxlQUFlLDZPQUFFLFNBQVM7OzJGQUVwQywyQkFBMkI7a0JBUHZDLFNBQVM7K0JBQ0UseUJBQXlCLGNBR3ZCLElBQUksV0FDUCxDQUFDLFNBQVMsRUFBRSxlQUFlLEVBQUUsU0FBUyxDQUFDO3dEQWdCeEMsR0FBRztzQkFEVixTQUFTO3VCQUFDLFNBQVM7Z0JBSWIsS0FBSztzQkFEWCxLQUFLO2dCQUdDLEtBQUs7c0JBRFgsS0FBSztnQkFHQyxNQUFNO3NCQURaLEtBQUs7Z0JBR0MsSUFBSTtzQkFEVixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIE9uRGVzdHJveSwgSW5wdXQsIFZpZXdDaGlsZCwgc2lnbmFsLCBEZXN0cm95UmVmLCBvdXRwdXQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEdvb2dsZU1hcCB9IGZyb20gJ0Bhbmd1bGFyL2dvb2dsZS1tYXBzJztcbmltcG9ydCB7IEZhSWNvbkNvbXBvbmVudCB9IGZyb20gJ0Bmb3J0YXdlc29tZS9hbmd1bGFyLWZvbnRhd2Vzb21lJztcbmltcG9ydCB7IGZhVGltZXMgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgaXNOdW1iZXIgfSBmcm9tICdAaGVzdGlhLWVhcnRoL3V0aWxzJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IE5nYkFjdGl2ZU1vZGFsIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuXG5pbXBvcnQge1xuICBIRV9NQVBfTE9BREVELFxuICBJRmVhdHVyZSxcbiAgSUZlYXR1cmVDb2xsZWN0aW9uLFxuICBkZWZhdWx0RmVhdHVyZSxcbiAgYWRkUG9seWdvblRvRmVhdHVyZSxcbiAgcG9seWdvbnNGcm9tRmVhdHVyZSxcbiAgc3Ryb2tlU3R5bGVcbn0gZnJvbSAnLi4vbWFwcy11dGlscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2hlLW1hcHMtZHJhd2luZy1jb25maXJtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21hcHMtZHJhd2luZy1jb25maXJtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWFwcy1kcmF3aW5nLWNvbmZpcm0uY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0dvb2dsZU1hcCwgRmFJY29uQ29tcG9uZW50LCBBc3luY1BpcGVdXG59KVxuZXhwb3J0IGNsYXNzIE1hcHNEcmF3aW5nQ29uZmlybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICBwcm90ZWN0ZWQgbWFwTG9hZGVkJCA9IGluamVjdChIRV9NQVBfTE9BREVEKTtcbiAgcHJpdmF0ZSByZWFkb25seSBhY3RpdmVNb2RhbCA9IGluamVjdChOZ2JBY3RpdmVNb2RhbCwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZmFUaW1lcyA9IGZhVGltZXM7XG5cbiAgcHJpdmF0ZSBsaXN0ZW5lcnM6IGdvb2dsZS5tYXBzLk1hcHNFdmVudExpc3RlbmVyW10gPSBbXTtcbiAgcHJpdmF0ZSBzaGFwZXM6IChnb29nbGUubWFwcy5NYXJrZXIgfCBnb29nbGUubWFwcy5Qb2x5Z29uKVtdID0gW107XG5cbiAgcHJpdmF0ZSBmZWF0dXJlPzogSUZlYXR1cmUgfCBJRmVhdHVyZUNvbGxlY3Rpb24gPSBkZWZhdWx0RmVhdHVyZSgpO1xuICBwcml2YXRlIGNvb3JkaW5hdGVzPzogZ29vZ2xlLm1hcHMuTGF0TG5nTGl0ZXJhbDtcblxuICBAVmlld0NoaWxkKEdvb2dsZU1hcClcbiAgcHJpdmF0ZSBtYXA/OiBHb29nbGVNYXA7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHZhbHVlPzogc3RyaW5nO1xuICBASW5wdXQoKVxuICBwdWJsaWMgbW9kZXM/OiBnb29nbGUubWFwcy5kcmF3aW5nLk92ZXJsYXlUeXBlW107XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjZW50ZXIgPSB7IGxhdDogMCwgbG5nOiAwIH07XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB6b29tID0gMztcblxuICBwcm90ZWN0ZWQgY2xvc2VkID0gb3V0cHV0PGdvb2dsZS5tYXBzLkxhdExuZ0xpdGVyYWwgfCBzdHJpbmc+KCk7XG5cbiAgcHJvdGVjdGVkIG9wdGlvbnMgPSBzaWduYWwoe30gYXMgZ29vZ2xlLm1hcHMuTWFwT3B0aW9ucyk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5tYXBMb2FkZWQkLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLm9wdGlvbnMuc2V0KHtcbiAgICAgICAgZnVsbHNjcmVlbkNvbnRyb2w6IGZhbHNlLFxuICAgICAgICBtYXBUeXBlQ29udHJvbDogdHJ1ZSxcbiAgICAgICAgc3RyZWV0Vmlld0NvbnRyb2w6IGZhbHNlLFxuICAgICAgICB6b29tQ29udHJvbDogdHJ1ZSxcbiAgICAgICAgem9vbUNvbnRyb2xPcHRpb25zOiB7XG4gICAgICAgICAgcG9zaXRpb246IGdvb2dsZS5tYXBzLkNvbnRyb2xQb3NpdGlvbi5UT1BfUklHSFRcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmZlYXR1cmUgPSB0aGlzLnZhbHVlICYmICFpc051bWJlcih0aGlzLnZhbHVlKSA/IEpTT04ucGFyc2UodGhpcy52YWx1ZSkgOiB0aGlzLmZlYXR1cmU7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmxpc3RlbmVycy5tYXAobGlzdGVuZXIgPT4gZ29vZ2xlLm1hcHMuZXZlbnQucmVtb3ZlTGlzdGVuZXIobGlzdGVuZXIpKTtcbiAgfVxuXG4gIHByaXZhdGUgb25Qb2x5Z29uQWRkZWQocG9seWdvbjogZ29vZ2xlLm1hcHMuUG9seWdvbikge1xuICAgIHRoaXMuc2hhcGVzLnB1c2gocG9seWdvbik7XG4gICAgdGhpcy5mZWF0dXJlID0gdGhpcy5mZWF0dXJlIHx8IGRlZmF1bHRGZWF0dXJlKCk7XG4gICAgYWRkUG9seWdvblRvRmVhdHVyZSh0aGlzLmZlYXR1cmUsIHBvbHlnb24pO1xuICB9XG5cbiAgcHJpdmF0ZSBvbk1hcmtlckFkZGVkKG1hcmtlcjogZ29vZ2xlLm1hcHMuTWFya2VyKSB7XG4gICAgdGhpcy5zaGFwZXMucHVzaChtYXJrZXIpO1xuICAgIGNvbnN0IHBvc2l0aW9uID0gbWFya2VyLmdldFBvc2l0aW9uKCk7XG4gICAgdGhpcy5jb29yZGluYXRlcyA9IHBvc2l0aW9uPy50b0pTT04oKTtcbiAgfVxuXG4gIHByaXZhdGUgbG9hZERhdGEoKSB7XG4gICAgdGhpcy5zaGFwZXMgPSBwb2x5Z29uc0Zyb21GZWF0dXJlKHRoaXMuZmVhdHVyZSk7XG4gICAgdGhpcy5zaGFwZXMuZm9yRWFjaChwb2x5Z29uID0+IHBvbHlnb24uc2V0TWFwKHRoaXMubWFwPy5nb29nbGVNYXApKTtcbiAgICBjb25zdCBkcmF3aW5nTWFuYWdlciA9IG5ldyBnb29nbGUubWFwcy5kcmF3aW5nLkRyYXdpbmdNYW5hZ2VyKHtcbiAgICAgIGRyYXdpbmdDb250cm9sT3B0aW9uczoge1xuICAgICAgICBwb3NpdGlvbjogZ29vZ2xlLm1hcHMuQ29udHJvbFBvc2l0aW9uLlRPUF9DRU5URVIsXG4gICAgICAgIGRyYXdpbmdNb2RlczogdGhpcy5tb2RlcyB8fCBbZ29vZ2xlLm1hcHMuZHJhd2luZy5PdmVybGF5VHlwZS5QT0xZR09OXVxuICAgICAgfSxcbiAgICAgIHBvbHlnb25PcHRpb25zOiBzdHJva2VTdHlsZVxuICAgIH0pO1xuICAgIGRyYXdpbmdNYW5hZ2VyLnNldE1hcCh0aGlzLm1hcD8uZ29vZ2xlTWFwKTtcbiAgICB0aGlzLmxpc3RlbmVycy5wdXNoKFxuICAgICAgZ29vZ2xlLm1hcHMuZXZlbnQuYWRkTGlzdGVuZXIoZHJhd2luZ01hbmFnZXIsICdwb2x5Z29uY29tcGxldGUnLCBwb2x5Z29uID0+IHRoaXMub25Qb2x5Z29uQWRkZWQocG9seWdvbikpXG4gICAgKTtcbiAgICB0aGlzLmxpc3RlbmVycy5wdXNoKFxuICAgICAgZ29vZ2xlLm1hcHMuZXZlbnQuYWRkTGlzdGVuZXIoZHJhd2luZ01hbmFnZXIsICdtYXJrZXJjb21wbGV0ZScsIG1hcmtlciA9PiB0aGlzLm9uTWFya2VyQWRkZWQobWFya2VyKSlcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIG1hcEluaXRpYWxpemVkKCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5sb2FkRGF0YSgpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjb25maXJtKCkge1xuICAgIHRoaXMuY2xvc2UodGhpcy5jb29yZGluYXRlcyB8fCBKU09OLnN0cmluZ2lmeSh0aGlzLmZlYXR1cmUpIHx8ICcnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjbGVhcigpIHtcbiAgICB0aGlzLnNoYXBlcy5mb3JFYWNoKHNoYXBlID0+IHNoYXBlLnNldE1hcChudWxsKSk7XG4gICAgdGhpcy5zaGFwZXMgPSBbXTtcbiAgICB0aGlzLmNvb3JkaW5hdGVzID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuZmVhdHVyZSA9IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHByb3RlY3RlZCBjbG9zZSh2YWx1ZTogZ29vZ2xlLm1hcHMuTGF0TG5nTGl0ZXJhbCB8IHN0cmluZykge1xuICAgIHRoaXMuY2xvc2VkLmVtaXQodmFsdWUpO1xuICAgIHRoaXMuYWN0aXZlTW9kYWw/LmNsb3NlKHZhbHVlKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIm1vZGFsIGlzLWxhcmdlIGlzLWFjdGl2ZVwiPlxuICA8ZGl2IGNsYXNzPVwibW9kYWwtYmFja2dyb3VuZFwiPjwvZGl2PlxuICA8ZGl2IGNsYXNzPVwibW9kYWwtY2FyZFwiPlxuICAgIDxoZWFkZXIgY2xhc3M9XCJtb2RhbC1jYXJkLWhlYWRcIj5cbiAgICAgIDxwIGNsYXNzPVwibW9kYWwtY2FyZC10aXRsZVwiPkRyYXcgb24gTWFwPC9wPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImRlbGV0ZVwiIGFyaWEtbGFiZWw9XCJjbG9zZVwiIChjbGljayk9XCJjbG9zZSh2YWx1ZSlcIj48L2J1dHRvbj5cbiAgICA8L2hlYWRlcj5cbiAgICA8c2VjdGlvbiBjbGFzcz1cIm1vZGFsLWNhcmQtYm9keSBwLTBcIj5cbiAgICAgIEBpZiAobWFwTG9hZGVkJCB8IGFzeW5jKSB7XG4gICAgICAgIDxnb29nbGUtbWFwXG4gICAgICAgICAgKG1hcEluaXRpYWxpemVkKT1cIm1hcEluaXRpYWxpemVkKClcIlxuICAgICAgICAgIGhlaWdodD1cIjEwMCVcIlxuICAgICAgICAgIHdpZHRoPVwiMTAwJVwiXG4gICAgICAgICAgW3pvb21dPVwiem9vbVwiXG4gICAgICAgICAgW2NlbnRlcl09XCJjZW50ZXJcIlxuICAgICAgICAgIFtvcHRpb25zXT1cIm9wdGlvbnMoKVwiPjwvZ29vZ2xlLW1hcD5cbiAgICAgIH1cbiAgICA8L3NlY3Rpb24+XG4gICAgPGZvb3RlciBjbGFzcz1cIm1vZGFsLWNhcmQtZm9vdFwiPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBpcy1wcmltYXJ5XCIgKGNsaWNrKT1cImNvbmZpcm0oKVwiPlxuICAgICAgICA8c3Bhbj5Db25maXJtPC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uIGlzLWdob3N0XCIgKGNsaWNrKT1cImNsb3NlKHZhbHVlKVwiPlxuICAgICAgICA8c3Bhbj5DbG9zZTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBpcy1kYW5nZXJcIiAoY2xpY2spPVwiY2xlYXIoKVwiPlxuICAgICAgICA8ZmEtaWNvbiBjbGFzcz1cIm1yLTJcIiBbaWNvbl09XCJmYVRpbWVzXCI+PC9mYS1pY29uPlxuICAgICAgICA8c3Bhbj5DbGVhcjwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZm9vdGVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|