@sebgroup/green-angular 5.4.2 → 5.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/shared/core-control/core-control.directive.mjs +3 -3
- package/esm2022/lib/shared/core-router-link/core-router-link.directive.mjs +53 -0
- package/esm2022/lib/shared/core-router-link/core-router-link.module.mjs +16 -0
- package/esm2022/lib/shared/core-router-link/index.mjs +3 -0
- package/esm2022/lib/shared/index.mjs +2 -1
- package/esm2022/src/lib/shared/core-control/core-control.directive.mjs +3 -3
- package/esm2022/src/lib/shared/core-router-link/core-router-link.directive.mjs +53 -0
- package/esm2022/src/lib/shared/core-router-link/core-router-link.module.mjs +16 -0
- package/esm2022/src/lib/shared/core-router-link/index.mjs +3 -0
- package/esm2022/src/lib/shared/index.mjs +2 -1
- package/esm2022/src/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +6 -6
- package/esm2022/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +6 -6
- package/fesm2022/sebgroup-green-angular-src-lib-shared.mjs +67 -4
- package/fesm2022/sebgroup-green-angular-src-lib-shared.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs +5 -5
- package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-v-angular.mjs +5 -5
- package/fesm2022/sebgroup-green-angular-v-angular.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular.mjs +66 -4
- package/fesm2022/sebgroup-green-angular.mjs.map +1 -1
- package/lib/shared/core-control/core-control.directive.d.ts +1 -1
- package/lib/shared/core-router-link/core-router-link.directive.d.ts +16 -0
- package/lib/shared/core-router-link/core-router-link.module.d.ts +7 -0
- package/lib/shared/core-router-link/index.d.ts +2 -0
- package/lib/shared/index.d.ts +1 -0
- package/package.json +2 -2
- package/src/lib/shared/core-control/core-control.directive.d.ts +1 -1
- package/src/lib/shared/core-router-link/core-router-link.directive.d.ts +16 -0
- package/src/lib/shared/core-router-link/core-router-link.module.d.ts +7 -0
- package/src/lib/shared/core-router-link/index.d.ts +2 -0
- package/src/lib/shared/index.d.ts +1 -0
|
@@ -49,7 +49,7 @@ export class NggCoreControlDirective {
|
|
|
49
49
|
this.renderer.setProperty(this.el.nativeElement, 'disabled', isDisabled);
|
|
50
50
|
}
|
|
51
51
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreControlDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.Injector }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
52
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: NggCoreControlDirective, selector: "gds-input, gds-textarea, gds-dropdown, gds-datepicker, gds-select, [nggCoreControl]", providers: [
|
|
52
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: NggCoreControlDirective, selector: "gds-input, gds-textarea, gds-dropdown, gds-datepicker, gds-select, gds-radio-group, [nggCoreControl]", providers: [
|
|
53
53
|
{
|
|
54
54
|
provide: NG_VALUE_ACCESSOR,
|
|
55
55
|
useExisting: forwardRef(() => NggCoreControlDirective),
|
|
@@ -60,7 +60,7 @@ export class NggCoreControlDirective {
|
|
|
60
60
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreControlDirective, decorators: [{
|
|
61
61
|
type: Directive,
|
|
62
62
|
args: [{
|
|
63
|
-
selector: 'gds-input, gds-textarea, gds-dropdown, gds-datepicker, gds-select, [nggCoreControl]',
|
|
63
|
+
selector: 'gds-input, gds-textarea, gds-dropdown, gds-datepicker, gds-select, gds-radio-group, [nggCoreControl]',
|
|
64
64
|
providers: [
|
|
65
65
|
{
|
|
66
66
|
provide: NG_VALUE_ACCESSOR,
|
|
@@ -70,4 +70,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
70
70
|
],
|
|
71
71
|
}]
|
|
72
72
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.Injector }, { type: i0.ChangeDetectorRef }] });
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1jb250cm9sLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvbGliL3NoYXJlZC9jb3JlLWNvbnRyb2wvY29yZS1jb250cm9sLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFFBQVEsRUFDUixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUVMLGlCQUFpQixFQUNqQixTQUFTLEdBRVYsTUFBTSxnQkFBZ0IsQ0FBQTs7QUFhdkIsTUFBTSxPQUFPLHVCQUF1QjtJQUtsQyxZQUNVLEVBQWMsRUFDZCxRQUFtQixFQUNuQixRQUFrQixFQUNsQixHQUFzQjtRQUh0QixPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQ2QsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLFFBQUcsR0FBSCxHQUFHLENBQW1CO0lBQzdCLENBQUM7SUFFSixlQUFlO1FBQ2IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUUzQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3pDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO1FBQzNCLENBQUMsQ0FBQyxDQUFBO1FBRUYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN4QyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQTtRQUMzQixDQUFDLENBQUMsQ0FBQTtRQUVGLG1CQUFtQjtRQUNuQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUE7UUFDdkMsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNULElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsR0FBRyxFQUFFO2dCQUNuQyxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsQ0FBQTtnQkFDdEMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUE7WUFDM0IsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDO1FBRUQsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUE7SUFDM0IsQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQTtRQUNyQyxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQ3ZCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUNyQixTQUFTLEVBQ1QsQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUN0RCxDQUFBO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxzQ0FBc0M7SUFDdEMsVUFBVSxDQUFDLEtBQVU7UUFDbkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFBO0lBQ2xFLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUFvQjtRQUNuQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUM3RCxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQTtZQUN0QixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFBO1FBQ3pCLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFBO0lBQ3BELENBQUM7SUFFRCxnQkFBZ0IsQ0FBRSxVQUFtQjtRQUNuQyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUE7SUFDMUUsQ0FBQzsrR0FoRVUsdUJBQXVCO21HQUF2Qix1QkFBdUIsK0hBUnZCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztnQkFDdEQsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGOzs0RkFFVSx1QkFBdUI7a0JBWG5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUNOLHNHQUFzRztvQkFDeEcsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHdCQUF3QixDQUFDOzRCQUN0RCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIEluamVjdG9yLFxuICBSZW5kZXJlcjIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQge1xuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgTkdfVkFMVUVfQUNDRVNTT1IsXG4gIE5nQ29udHJvbCxcbiAgVmFsaWRhdG9ycyxcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjpcbiAgICAnZ2RzLWlucHV0LCBnZHMtdGV4dGFyZWEsIGdkcy1kcm9wZG93biwgZ2RzLWRhdGVwaWNrZXIsIGdkcy1zZWxlY3QsIGdkcy1yYWRpby1ncm91cCwgW25nZ0NvcmVDb250cm9sXScsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTmdnQ29yZUNvbnRyb2xEaXJlY3RpdmUpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgTmdnQ29yZUNvbnRyb2xEaXJlY3RpdmVcbiAgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdFxue1xuICBwcml2YXRlIGNvbnRyb2w/OiBOZ0NvbnRyb2xcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge31cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5jb250cm9sID0gdGhpcy5pbmplY3Rvci5nZXQoTmdDb250cm9sKVxuXG4gICAgdGhpcy5jb250cm9sLnN0YXR1c0NoYW5nZXM/LnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyb2xTdGF0ZSgpXG4gICAgfSlcblxuICAgIHRoaXMuY29udHJvbC52YWx1ZUNoYW5nZXM/LnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyb2xTdGF0ZSgpXG4gICAgfSlcblxuICAgIC8vIFVwZGF0ZSBvbiBzdWJtaXRcbiAgICBjb25zdCBmb3JtID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LmZvcm1cbiAgICBpZiAoZm9ybSkge1xuICAgICAgZm9ybS5hZGRFdmVudExpc3RlbmVyKCdzdWJtaXQnLCAoKSA9PiB7XG4gICAgICAgIHRoaXMuY29udHJvbD8uY29udHJvbD8ubWFya0FzVG91Y2hlZCgpXG4gICAgICAgIHRoaXMudXBkYXRlQ29udHJvbFN0YXRlKClcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgdGhpcy51cGRhdGVDb250cm9sU3RhdGUoKVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVDb250cm9sU3RhdGUoKSB7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuY29udHJvbD8uY29udHJvbFxuICAgIGlmIChjb250cm9sKSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KFxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICdpbnZhbGlkJyxcbiAgICAgICAgKGNvbnRyb2wuZGlydHkgfHwgY29udHJvbC50b3VjaGVkKSAmJiBjb250cm9sLmludmFsaWQsXG4gICAgICApXG4gICAgfVxuICB9XG5cbiAgLy8gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW1wbGVtZW50YXRpb25cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICd2YWx1ZScsIHZhbHVlKVxuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKF86IGFueSkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdpbnB1dCcsIChldmVudDogYW55KSA9PiB7XG4gICAgICBmbihldmVudC50YXJnZXQudmFsdWUpXG4gICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKVxuICAgIH0pXG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2JsdXInLCBmbilcbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ2Rpc2FibGVkJywgaXNEaXNhYmxlZClcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Directive, ElementRef, Optional, Renderer2, Self, } from '@angular/core';
|
|
2
|
+
import { RouterLink, RouterLinkActive } from '@angular/router';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/router";
|
|
5
|
+
export class NggCoreRouterLinkDirective {
|
|
6
|
+
constructor(renderer, elementRef, routerLink, routerLinkActive) {
|
|
7
|
+
this.renderer = renderer;
|
|
8
|
+
this.elementRef = elementRef;
|
|
9
|
+
this.routerLink = routerLink;
|
|
10
|
+
this.routerLinkActive = routerLinkActive;
|
|
11
|
+
this.routerLinkActive?.isActiveChange.subscribe(() => this.setActive());
|
|
12
|
+
}
|
|
13
|
+
ngOnChanges(changes) {
|
|
14
|
+
if (changes['routerLink']) {
|
|
15
|
+
this.updateHref();
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
ngAfterViewInit() {
|
|
19
|
+
this.updateHref();
|
|
20
|
+
this.setActive();
|
|
21
|
+
}
|
|
22
|
+
setActive() {
|
|
23
|
+
if (this.routerLinkActive &&
|
|
24
|
+
this.elementRef.nativeElement?.tagName.includes('GDS-MENU-BUTTON')) {
|
|
25
|
+
this.elementRef.nativeElement.selected = this.routerLinkActive.isActive;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
updateHref() {
|
|
29
|
+
// First we need to be a bit sneaky and trick `RouterLink` into thinking we are an anchor element
|
|
30
|
+
;
|
|
31
|
+
this.routerLink.isAnchorElement = true;
|
|
32
|
+
this.routerLink.updateHref();
|
|
33
|
+
// Then we can set the href attribute
|
|
34
|
+
this.renderer.setAttribute(this.elementRef.nativeElement, 'href', this.routerLink?.href || '');
|
|
35
|
+
}
|
|
36
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.RouterLink, optional: true, self: true }, { token: i1.RouterLinkActive, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
37
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: NggCoreRouterLinkDirective, selector: "[nggCoreRouterLink]", usesOnChanges: true, ngImport: i0 }); }
|
|
38
|
+
}
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkDirective, decorators: [{
|
|
40
|
+
type: Directive,
|
|
41
|
+
args: [{
|
|
42
|
+
selector: '[nggCoreRouterLink]',
|
|
43
|
+
}]
|
|
44
|
+
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.RouterLink, decorators: [{
|
|
45
|
+
type: Self
|
|
46
|
+
}, {
|
|
47
|
+
type: Optional
|
|
48
|
+
}] }, { type: i1.RouterLinkActive, decorators: [{
|
|
49
|
+
type: Self
|
|
50
|
+
}, {
|
|
51
|
+
type: Optional
|
|
52
|
+
}] }] });
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1yb3V0ZXItbGluay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9zaGFyZWQvY29yZS1yb3V0ZXItbGluay9jb3JlLXJvdXRlci1saW5rLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFFVixRQUFRLEVBQ1IsU0FBUyxFQUNULElBQUksR0FFTCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUE7OztBQUs5RCxNQUFNLE9BQU8sMEJBQTBCO0lBQ3JDLFlBQ1UsUUFBbUIsRUFDbkIsVUFBc0IsRUFDRixVQUF1QixFQUN2QixnQkFBbUM7UUFIdkQsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ0YsZUFBVSxHQUFWLFVBQVUsQ0FBYTtRQUN2QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQW1CO1FBRS9ELElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxjQUFjLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFBO0lBQ3pFLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUE7UUFDbkIsQ0FBQztJQUNILENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFBO1FBQ2pCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQTtJQUNsQixDQUFDO0lBRU8sU0FBUztRQUNmLElBQ0UsSUFBSSxDQUFDLGdCQUFnQjtZQUNyQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEVBQ2xFLENBQUM7WUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQTtRQUN6RSxDQUFDO0lBQ0gsQ0FBQztJQUVPLFVBQVU7UUFDaEIsaUdBQWlHO1FBQ2pHLENBQUM7UUFBQyxJQUFJLENBQUMsVUFBa0IsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUMvQztRQUFDLElBQUksQ0FBQyxVQUFrQixDQUFDLFVBQVUsRUFBRSxDQUFBO1FBRXRDLHFDQUFxQztRQUNyQyxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FDeEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQzdCLE1BQU0sRUFDTixJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksSUFBSSxFQUFFLENBQzVCLENBQUE7SUFDSCxDQUFDOytHQXpDVSwwQkFBMEI7bUdBQTFCLDBCQUEwQjs7NEZBQTFCLDBCQUEwQjtrQkFIdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO2lCQUNoQzs7MEJBS0ksSUFBSTs7MEJBQUksUUFBUTs7MEJBQ2hCLElBQUk7OzBCQUFJLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIE9uQ2hhbmdlcyxcbiAgT3B0aW9uYWwsXG4gIFJlbmRlcmVyMixcbiAgU2VsZixcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFJvdXRlckxpbmssIFJvdXRlckxpbmtBY3RpdmUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInXG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tuZ2dDb3JlUm91dGVyTGlua10nLFxufSlcbmV4cG9ydCBjbGFzcyBOZ2dDb3JlUm91dGVyTGlua0RpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgQFNlbGYoKSBAT3B0aW9uYWwoKSBwcml2YXRlIHJvdXRlckxpbms/OiBSb3V0ZXJMaW5rLFxuICAgIEBTZWxmKCkgQE9wdGlvbmFsKCkgcHJpdmF0ZSByb3V0ZXJMaW5rQWN0aXZlPzogUm91dGVyTGlua0FjdGl2ZSxcbiAgKSB7XG4gICAgdGhpcy5yb3V0ZXJMaW5rQWN0aXZlPy5pc0FjdGl2ZUNoYW5nZS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zZXRBY3RpdmUoKSlcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlc1sncm91dGVyTGluayddKSB7XG4gICAgICB0aGlzLnVwZGF0ZUhyZWYoKVxuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZUhyZWYoKVxuICAgIHRoaXMuc2V0QWN0aXZlKClcbiAgfVxuXG4gIHByaXZhdGUgc2V0QWN0aXZlKCk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgIHRoaXMucm91dGVyTGlua0FjdGl2ZSAmJlxuICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ/LnRhZ05hbWUuaW5jbHVkZXMoJ0dEUy1NRU5VLUJVVFRPTicpXG4gICAgKSB7XG4gICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zZWxlY3RlZCA9IHRoaXMucm91dGVyTGlua0FjdGl2ZS5pc0FjdGl2ZVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlSHJlZigpOiB2b2lkIHtcbiAgICAvLyBGaXJzdCB3ZSBuZWVkIHRvIGJlIGEgYml0IHNuZWFreSBhbmQgdHJpY2sgYFJvdXRlckxpbmtgIGludG8gdGhpbmtpbmcgd2UgYXJlIGFuIGFuY2hvciBlbGVtZW50XG4gICAgOyh0aGlzLnJvdXRlckxpbmsgYXMgYW55KS5pc0FuY2hvckVsZW1lbnQgPSB0cnVlXG4gICAgOyh0aGlzLnJvdXRlckxpbmsgYXMgYW55KS51cGRhdGVIcmVmKClcblxuICAgIC8vIFRoZW4gd2UgY2FuIHNldCB0aGUgaHJlZiBhdHRyaWJ1dGVcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgJ2hyZWYnLFxuICAgICAgdGhpcy5yb3V0ZXJMaW5rPy5ocmVmIHx8ICcnLFxuICAgIClcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { NggCoreRouterLinkDirective } from './core-router-link.directive';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class NggCoreRouterLinkModule {
|
|
5
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
6
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkModule, declarations: [NggCoreRouterLinkDirective], exports: [NggCoreRouterLinkDirective] }); }
|
|
7
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkModule }); }
|
|
8
|
+
}
|
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkModule, decorators: [{
|
|
10
|
+
type: NgModule,
|
|
11
|
+
args: [{
|
|
12
|
+
declarations: [NggCoreRouterLinkDirective],
|
|
13
|
+
exports: [NggCoreRouterLinkDirective],
|
|
14
|
+
}]
|
|
15
|
+
}] });
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1yb3V0ZXItbGluay5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9zaGFyZWQvY29yZS1yb3V0ZXItbGluay9jb3JlLXJvdXRlci1saW5rLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBRXhDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhCQUE4QixDQUFBOztBQU16RSxNQUFNLE9BQU8sdUJBQXVCOytHQUF2Qix1QkFBdUI7Z0hBQXZCLHVCQUF1QixpQkFIbkIsMEJBQTBCLGFBQy9CLDBCQUEwQjtnSEFFekIsdUJBQXVCOzs0RkFBdkIsdUJBQXVCO2tCQUpuQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLDBCQUEwQixDQUFDO29CQUMxQyxPQUFPLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztpQkFDdEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbmltcG9ydCB7IE5nZ0NvcmVSb3V0ZXJMaW5rRGlyZWN0aXZlIH0gZnJvbSAnLi9jb3JlLXJvdXRlci1saW5rLmRpcmVjdGl2ZSdcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbTmdnQ29yZVJvdXRlckxpbmtEaXJlY3RpdmVdLFxuICBleHBvcnRzOiBbTmdnQ29yZVJvdXRlckxpbmtEaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBOZ2dDb3JlUm91dGVyTGlua01vZHVsZSB7fVxuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './core-router-link.module';
|
|
2
|
+
export * from './core-router-link.directive';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9zaGFyZWQvY29yZS1yb3V0ZXItbGluay9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDJCQUEyQixDQUFBO0FBQ3pDLGNBQWMsOEJBQThCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvcmUtcm91dGVyLWxpbmsubW9kdWxlJ1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlLXJvdXRlci1saW5rLmRpcmVjdGl2ZSdcbiJdfQ==
|
|
@@ -3,4 +3,5 @@ export * from './on-scroll.directive';
|
|
|
3
3
|
export * from './core-element';
|
|
4
4
|
export * from './core-renderer';
|
|
5
5
|
export * from './core-control';
|
|
6
|
-
|
|
6
|
+
export * from './core-router-link';
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9zaGFyZWQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQTtBQUMvQixjQUFjLHVCQUF1QixDQUFBO0FBQ3JDLGNBQWMsZ0JBQWdCLENBQUE7QUFDOUIsY0FBYyxpQkFBaUIsQ0FBQTtBQUMvQixjQUFjLGdCQUFnQixDQUFBO0FBQzlCLGNBQWMsb0JBQW9CLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NoYXJlZC5tb2R1bGUnXG5leHBvcnQgKiBmcm9tICcuL29uLXNjcm9sbC5kaXJlY3RpdmUnXG5leHBvcnQgKiBmcm9tICcuL2NvcmUtZWxlbWVudCdcbmV4cG9ydCAqIGZyb20gJy4vY29yZS1yZW5kZXJlcidcbmV4cG9ydCAqIGZyb20gJy4vY29yZS1jb250cm9sJ1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlLXJvdXRlci1saW5rJ1xuIl19
|
|
@@ -49,7 +49,7 @@ export class NggCoreControlDirective {
|
|
|
49
49
|
this.renderer.setProperty(this.el.nativeElement, 'disabled', isDisabled);
|
|
50
50
|
}
|
|
51
51
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreControlDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.Injector }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
52
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: NggCoreControlDirective, selector: "gds-input, gds-textarea, gds-dropdown, gds-datepicker, gds-select, [nggCoreControl]", providers: [
|
|
52
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: NggCoreControlDirective, selector: "gds-input, gds-textarea, gds-dropdown, gds-datepicker, gds-select, gds-radio-group, [nggCoreControl]", providers: [
|
|
53
53
|
{
|
|
54
54
|
provide: NG_VALUE_ACCESSOR,
|
|
55
55
|
useExisting: forwardRef(() => NggCoreControlDirective),
|
|
@@ -60,7 +60,7 @@ export class NggCoreControlDirective {
|
|
|
60
60
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreControlDirective, decorators: [{
|
|
61
61
|
type: Directive,
|
|
62
62
|
args: [{
|
|
63
|
-
selector: 'gds-input, gds-textarea, gds-dropdown, gds-datepicker, gds-select, [nggCoreControl]',
|
|
63
|
+
selector: 'gds-input, gds-textarea, gds-dropdown, gds-datepicker, gds-select, gds-radio-group, [nggCoreControl]',
|
|
64
64
|
providers: [
|
|
65
65
|
{
|
|
66
66
|
provide: NG_VALUE_ACCESSOR,
|
|
@@ -70,4 +70,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
70
70
|
],
|
|
71
71
|
}]
|
|
72
72
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.Injector }, { type: i0.ChangeDetectorRef }] });
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1jb250cm9sLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvbGliL3NoYXJlZC9jb3JlLWNvbnRyb2wvY29yZS1jb250cm9sLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFFBQVEsRUFDUixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUVMLGlCQUFpQixFQUNqQixTQUFTLEdBRVYsTUFBTSxnQkFBZ0IsQ0FBQTs7QUFhdkIsTUFBTSxPQUFPLHVCQUF1QjtJQUtsQyxZQUNVLEVBQWMsRUFDZCxRQUFtQixFQUNuQixRQUFrQixFQUNsQixHQUFzQjtRQUh0QixPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQ2QsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLFFBQUcsR0FBSCxHQUFHLENBQW1CO0lBQzdCLENBQUM7SUFFSixlQUFlO1FBQ2IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUUzQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3pDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO1FBQzNCLENBQUMsQ0FBQyxDQUFBO1FBRUYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN4QyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQTtRQUMzQixDQUFDLENBQUMsQ0FBQTtRQUVGLG1CQUFtQjtRQUNuQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUE7UUFDdkMsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNULElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsR0FBRyxFQUFFO2dCQUNuQyxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsQ0FBQTtnQkFDdEMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUE7WUFDM0IsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDO1FBRUQsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUE7SUFDM0IsQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQTtRQUNyQyxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQ3ZCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUNyQixTQUFTLEVBQ1QsQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUN0RCxDQUFBO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxzQ0FBc0M7SUFDdEMsVUFBVSxDQUFDLEtBQVU7UUFDbkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFBO0lBQ2xFLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUFvQjtRQUNuQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUM3RCxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQTtZQUN0QixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFBO1FBQ3pCLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFBO0lBQ3BELENBQUM7SUFFRCxnQkFBZ0IsQ0FBRSxVQUFtQjtRQUNuQyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUE7SUFDMUUsQ0FBQzsrR0FoRVUsdUJBQXVCO21HQUF2Qix1QkFBdUIsK0hBUnZCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztnQkFDdEQsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGOzs0RkFFVSx1QkFBdUI7a0JBWG5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUNOLHNHQUFzRztvQkFDeEcsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHdCQUF3QixDQUFDOzRCQUN0RCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIEluamVjdG9yLFxuICBSZW5kZXJlcjIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQge1xuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgTkdfVkFMVUVfQUNDRVNTT1IsXG4gIE5nQ29udHJvbCxcbiAgVmFsaWRhdG9ycyxcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjpcbiAgICAnZ2RzLWlucHV0LCBnZHMtdGV4dGFyZWEsIGdkcy1kcm9wZG93biwgZ2RzLWRhdGVwaWNrZXIsIGdkcy1zZWxlY3QsIGdkcy1yYWRpby1ncm91cCwgW25nZ0NvcmVDb250cm9sXScsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTmdnQ29yZUNvbnRyb2xEaXJlY3RpdmUpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgTmdnQ29yZUNvbnRyb2xEaXJlY3RpdmVcbiAgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdFxue1xuICBwcml2YXRlIGNvbnRyb2w/OiBOZ0NvbnRyb2xcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge31cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5jb250cm9sID0gdGhpcy5pbmplY3Rvci5nZXQoTmdDb250cm9sKVxuXG4gICAgdGhpcy5jb250cm9sLnN0YXR1c0NoYW5nZXM/LnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyb2xTdGF0ZSgpXG4gICAgfSlcblxuICAgIHRoaXMuY29udHJvbC52YWx1ZUNoYW5nZXM/LnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyb2xTdGF0ZSgpXG4gICAgfSlcblxuICAgIC8vIFVwZGF0ZSBvbiBzdWJtaXRcbiAgICBjb25zdCBmb3JtID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LmZvcm1cbiAgICBpZiAoZm9ybSkge1xuICAgICAgZm9ybS5hZGRFdmVudExpc3RlbmVyKCdzdWJtaXQnLCAoKSA9PiB7XG4gICAgICAgIHRoaXMuY29udHJvbD8uY29udHJvbD8ubWFya0FzVG91Y2hlZCgpXG4gICAgICAgIHRoaXMudXBkYXRlQ29udHJvbFN0YXRlKClcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgdGhpcy51cGRhdGVDb250cm9sU3RhdGUoKVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVDb250cm9sU3RhdGUoKSB7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuY29udHJvbD8uY29udHJvbFxuICAgIGlmIChjb250cm9sKSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KFxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICdpbnZhbGlkJyxcbiAgICAgICAgKGNvbnRyb2wuZGlydHkgfHwgY29udHJvbC50b3VjaGVkKSAmJiBjb250cm9sLmludmFsaWQsXG4gICAgICApXG4gICAgfVxuICB9XG5cbiAgLy8gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW1wbGVtZW50YXRpb25cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICd2YWx1ZScsIHZhbHVlKVxuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKF86IGFueSkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdpbnB1dCcsIChldmVudDogYW55KSA9PiB7XG4gICAgICBmbihldmVudC50YXJnZXQudmFsdWUpXG4gICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKVxuICAgIH0pXG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2JsdXInLCBmbilcbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ2Rpc2FibGVkJywgaXNEaXNhYmxlZClcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Directive, ElementRef, Optional, Renderer2, Self, } from '@angular/core';
|
|
2
|
+
import { RouterLink, RouterLinkActive } from '@angular/router';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/router";
|
|
5
|
+
export class NggCoreRouterLinkDirective {
|
|
6
|
+
constructor(renderer, elementRef, routerLink, routerLinkActive) {
|
|
7
|
+
this.renderer = renderer;
|
|
8
|
+
this.elementRef = elementRef;
|
|
9
|
+
this.routerLink = routerLink;
|
|
10
|
+
this.routerLinkActive = routerLinkActive;
|
|
11
|
+
this.routerLinkActive?.isActiveChange.subscribe(() => this.setActive());
|
|
12
|
+
}
|
|
13
|
+
ngOnChanges(changes) {
|
|
14
|
+
if (changes['routerLink']) {
|
|
15
|
+
this.updateHref();
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
ngAfterViewInit() {
|
|
19
|
+
this.updateHref();
|
|
20
|
+
this.setActive();
|
|
21
|
+
}
|
|
22
|
+
setActive() {
|
|
23
|
+
if (this.routerLinkActive &&
|
|
24
|
+
this.elementRef.nativeElement?.tagName.includes('GDS-MENU-BUTTON')) {
|
|
25
|
+
this.elementRef.nativeElement.selected = this.routerLinkActive.isActive;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
updateHref() {
|
|
29
|
+
// First we need to be a bit sneaky and trick `RouterLink` into thinking we are an anchor element
|
|
30
|
+
;
|
|
31
|
+
this.routerLink.isAnchorElement = true;
|
|
32
|
+
this.routerLink.updateHref();
|
|
33
|
+
// Then we can set the href attribute
|
|
34
|
+
this.renderer.setAttribute(this.elementRef.nativeElement, 'href', this.routerLink?.href || '');
|
|
35
|
+
}
|
|
36
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.RouterLink, optional: true, self: true }, { token: i1.RouterLinkActive, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
37
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: NggCoreRouterLinkDirective, selector: "[nggCoreRouterLink]", usesOnChanges: true, ngImport: i0 }); }
|
|
38
|
+
}
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkDirective, decorators: [{
|
|
40
|
+
type: Directive,
|
|
41
|
+
args: [{
|
|
42
|
+
selector: '[nggCoreRouterLink]',
|
|
43
|
+
}]
|
|
44
|
+
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.RouterLink, decorators: [{
|
|
45
|
+
type: Self
|
|
46
|
+
}, {
|
|
47
|
+
type: Optional
|
|
48
|
+
}] }, { type: i1.RouterLinkActive, decorators: [{
|
|
49
|
+
type: Self
|
|
50
|
+
}, {
|
|
51
|
+
type: Optional
|
|
52
|
+
}] }] });
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1yb3V0ZXItbGluay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9zaGFyZWQvY29yZS1yb3V0ZXItbGluay9jb3JlLXJvdXRlci1saW5rLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFFVixRQUFRLEVBQ1IsU0FBUyxFQUNULElBQUksR0FFTCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUE7OztBQUs5RCxNQUFNLE9BQU8sMEJBQTBCO0lBQ3JDLFlBQ1UsUUFBbUIsRUFDbkIsVUFBc0IsRUFDRixVQUF1QixFQUN2QixnQkFBbUM7UUFIdkQsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ0YsZUFBVSxHQUFWLFVBQVUsQ0FBYTtRQUN2QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQW1CO1FBRS9ELElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxjQUFjLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFBO0lBQ3pFLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUE7UUFDbkIsQ0FBQztJQUNILENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFBO1FBQ2pCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQTtJQUNsQixDQUFDO0lBRU8sU0FBUztRQUNmLElBQ0UsSUFBSSxDQUFDLGdCQUFnQjtZQUNyQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEVBQ2xFLENBQUM7WUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQTtRQUN6RSxDQUFDO0lBQ0gsQ0FBQztJQUVPLFVBQVU7UUFDaEIsaUdBQWlHO1FBQ2pHLENBQUM7UUFBQyxJQUFJLENBQUMsVUFBa0IsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUMvQztRQUFDLElBQUksQ0FBQyxVQUFrQixDQUFDLFVBQVUsRUFBRSxDQUFBO1FBRXRDLHFDQUFxQztRQUNyQyxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FDeEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQzdCLE1BQU0sRUFDTixJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksSUFBSSxFQUFFLENBQzVCLENBQUE7SUFDSCxDQUFDOytHQXpDVSwwQkFBMEI7bUdBQTFCLDBCQUEwQjs7NEZBQTFCLDBCQUEwQjtrQkFIdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO2lCQUNoQzs7MEJBS0ksSUFBSTs7MEJBQUksUUFBUTs7MEJBQ2hCLElBQUk7OzBCQUFJLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIE9uQ2hhbmdlcyxcbiAgT3B0aW9uYWwsXG4gIFJlbmRlcmVyMixcbiAgU2VsZixcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFJvdXRlckxpbmssIFJvdXRlckxpbmtBY3RpdmUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInXG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tuZ2dDb3JlUm91dGVyTGlua10nLFxufSlcbmV4cG9ydCBjbGFzcyBOZ2dDb3JlUm91dGVyTGlua0RpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgQFNlbGYoKSBAT3B0aW9uYWwoKSBwcml2YXRlIHJvdXRlckxpbms/OiBSb3V0ZXJMaW5rLFxuICAgIEBTZWxmKCkgQE9wdGlvbmFsKCkgcHJpdmF0ZSByb3V0ZXJMaW5rQWN0aXZlPzogUm91dGVyTGlua0FjdGl2ZSxcbiAgKSB7XG4gICAgdGhpcy5yb3V0ZXJMaW5rQWN0aXZlPy5pc0FjdGl2ZUNoYW5nZS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zZXRBY3RpdmUoKSlcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlc1sncm91dGVyTGluayddKSB7XG4gICAgICB0aGlzLnVwZGF0ZUhyZWYoKVxuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZUhyZWYoKVxuICAgIHRoaXMuc2V0QWN0aXZlKClcbiAgfVxuXG4gIHByaXZhdGUgc2V0QWN0aXZlKCk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgIHRoaXMucm91dGVyTGlua0FjdGl2ZSAmJlxuICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ/LnRhZ05hbWUuaW5jbHVkZXMoJ0dEUy1NRU5VLUJVVFRPTicpXG4gICAgKSB7XG4gICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zZWxlY3RlZCA9IHRoaXMucm91dGVyTGlua0FjdGl2ZS5pc0FjdGl2ZVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlSHJlZigpOiB2b2lkIHtcbiAgICAvLyBGaXJzdCB3ZSBuZWVkIHRvIGJlIGEgYml0IHNuZWFreSBhbmQgdHJpY2sgYFJvdXRlckxpbmtgIGludG8gdGhpbmtpbmcgd2UgYXJlIGFuIGFuY2hvciBlbGVtZW50XG4gICAgOyh0aGlzLnJvdXRlckxpbmsgYXMgYW55KS5pc0FuY2hvckVsZW1lbnQgPSB0cnVlXG4gICAgOyh0aGlzLnJvdXRlckxpbmsgYXMgYW55KS51cGRhdGVIcmVmKClcblxuICAgIC8vIFRoZW4gd2UgY2FuIHNldCB0aGUgaHJlZiBhdHRyaWJ1dGVcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgJ2hyZWYnLFxuICAgICAgdGhpcy5yb3V0ZXJMaW5rPy5ocmVmIHx8ICcnLFxuICAgIClcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { NggCoreRouterLinkDirective } from './core-router-link.directive';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class NggCoreRouterLinkModule {
|
|
5
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
6
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkModule, declarations: [NggCoreRouterLinkDirective], exports: [NggCoreRouterLinkDirective] }); }
|
|
7
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkModule }); }
|
|
8
|
+
}
|
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkModule, decorators: [{
|
|
10
|
+
type: NgModule,
|
|
11
|
+
args: [{
|
|
12
|
+
declarations: [NggCoreRouterLinkDirective],
|
|
13
|
+
exports: [NggCoreRouterLinkDirective],
|
|
14
|
+
}]
|
|
15
|
+
}] });
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1yb3V0ZXItbGluay5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9zaGFyZWQvY29yZS1yb3V0ZXItbGluay9jb3JlLXJvdXRlci1saW5rLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBRXhDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhCQUE4QixDQUFBOztBQU16RSxNQUFNLE9BQU8sdUJBQXVCOytHQUF2Qix1QkFBdUI7Z0hBQXZCLHVCQUF1QixpQkFIbkIsMEJBQTBCLGFBQy9CLDBCQUEwQjtnSEFFekIsdUJBQXVCOzs0RkFBdkIsdUJBQXVCO2tCQUpuQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLDBCQUEwQixDQUFDO29CQUMxQyxPQUFPLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztpQkFDdEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbmltcG9ydCB7IE5nZ0NvcmVSb3V0ZXJMaW5rRGlyZWN0aXZlIH0gZnJvbSAnLi9jb3JlLXJvdXRlci1saW5rLmRpcmVjdGl2ZSdcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbTmdnQ29yZVJvdXRlckxpbmtEaXJlY3RpdmVdLFxuICBleHBvcnRzOiBbTmdnQ29yZVJvdXRlckxpbmtEaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBOZ2dDb3JlUm91dGVyTGlua01vZHVsZSB7fVxuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './core-router-link.module';
|
|
2
|
+
export * from './core-router-link.directive';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9zaGFyZWQvY29yZS1yb3V0ZXItbGluay9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDJCQUEyQixDQUFBO0FBQ3pDLGNBQWMsOEJBQThCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvcmUtcm91dGVyLWxpbmsubW9kdWxlJ1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlLXJvdXRlci1saW5rLmRpcmVjdGl2ZSdcbiJdfQ==
|
|
@@ -3,4 +3,5 @@ export * from './on-scroll.directive';
|
|
|
3
3
|
export * from './core-element';
|
|
4
4
|
export * from './core-renderer';
|
|
5
5
|
export * from './core-control';
|
|
6
|
-
|
|
6
|
+
export * from './core-router-link';
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9zaGFyZWQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQTtBQUMvQixjQUFjLHVCQUF1QixDQUFBO0FBQ3JDLGNBQWMsZ0JBQWdCLENBQUE7QUFDOUIsY0FBYyxpQkFBaUIsQ0FBQTtBQUMvQixjQUFjLGdCQUFnQixDQUFBO0FBQzlCLGNBQWMsb0JBQW9CLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NoYXJlZC5tb2R1bGUnXG5leHBvcnQgKiBmcm9tICcuL29uLXNjcm9sbC5kaXJlY3RpdmUnXG5leHBvcnQgKiBmcm9tICcuL2NvcmUtZWxlbWVudCdcbmV4cG9ydCAqIGZyb20gJy4vY29yZS1yZW5kZXJlcidcbmV4cG9ydCAqIGZyb20gJy4vY29yZS1jb250cm9sJ1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlLXJvdXRlci1saW5rJ1xuIl19
|
package/esm2022/src/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs
CHANGED
|
@@ -51,9 +51,6 @@ export class NggvTypeaheadInputComponent extends NggvInputComponent {
|
|
|
51
51
|
// Only move if parent dropdown is found
|
|
52
52
|
if (this.dropdownButton) {
|
|
53
53
|
this.renderer2.appendChild(this.dropdownButton.querySelector('button'), this.element.nativeElement);
|
|
54
|
-
// Get the height of the parent button so the input can be explicitly set to the same height since it's absolutely positioned
|
|
55
|
-
this.buttonHeight =
|
|
56
|
-
this.dropdownButton.getBoundingClientRect().height || 32; // Default to 2em;
|
|
57
54
|
this.inputMoved = true;
|
|
58
55
|
}
|
|
59
56
|
}, 0);
|
|
@@ -72,6 +69,9 @@ export class NggvTypeaheadInputComponent extends NggvInputComponent {
|
|
|
72
69
|
// different CSS used to hide (but not remove) from DOM
|
|
73
70
|
if (!this.inputMoved)
|
|
74
71
|
this.moveInput();
|
|
72
|
+
// Get the height of the parent button so the input can be explicitly set to the same height since it's absolutely positioned
|
|
73
|
+
this.buttonHeight =
|
|
74
|
+
this.dropdownButton?.getBoundingClientRect().height || 32; // Default to 2em;
|
|
75
75
|
if (this.expanded) {
|
|
76
76
|
// Weird workaround for setting focus. Didn't set focus, but wrapping in setTimeout solved it.
|
|
77
77
|
// See suggestion here: https://github.com/ionic-team/stencil/issues/3772#issuecomment-1292599609
|
|
@@ -111,11 +111,11 @@ export class NggvTypeaheadInputComponent extends NggvInputComponent {
|
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
113
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggvTypeaheadInputComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.NgControl, optional: true, self: true }, { token: TRANSLOCO_SCOPE, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
114
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NggvTypeaheadInputComponent, selector: "nggv-typeahead-input", inputs: { hostComponent: "hostComponent", resultFormatter: "resultFormatter", selectedFormatter: "selectedFormatter" }, host: { listeners: { "keyup": "onKeyUp($event)" } }, usesInheritance: true, ngImport: i0, template: "<ng-container>\n <div\n class=\"input-wrapper\"\n [ngClass]=\"{ expanded: expanded, collapsed: !expanded }\"\n [ngStyle]=\"{ 'height.px': buttonHeight }\"\n (click)=\"$event.stopPropagation()\"\n >\n <!-- INPUT FIELD -->\n <div class=\"input-group\">\n <input\n #input\n [id]=\"id + '-input'\"\n class=\"gds-field\"\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [attr.email]=\"email\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [pattern]=\"pattern\"\n [disabled]=\"disabled\"\n [autocomplete]=\"autocomplete\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.role]=\"role\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n </div>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;top:1px;left:0;width:calc(100% - 2.625em)}:host .input-wrapper{border:none;box-shadow:none}:host .input-wrapper.expanded{display:flex}:host .input-wrapper.expanded .input-group input.gds-field{height:calc(100% - 2px);width:100%;min-height:unset;margin-left:1px;border:none;box-shadow:none}:host .input-wrapper.collapsed{display:none}:host .input-wrapper .input-group{width:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
|
|
114
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NggvTypeaheadInputComponent, selector: "nggv-typeahead-input", inputs: { hostComponent: "hostComponent", resultFormatter: "resultFormatter", selectedFormatter: "selectedFormatter" }, host: { listeners: { "keyup": "onKeyUp($event)" } }, usesInheritance: true, ngImport: i0, template: "<ng-container>\n <div\n class=\"input-wrapper\"\n [ngClass]=\"{ expanded: expanded, collapsed: !expanded }\"\n [ngStyle]=\"{ 'height.px': buttonHeight }\"\n (click)=\"$event.stopPropagation()\"\n >\n <!-- INPUT FIELD -->\n <div class=\"input-group\">\n <input\n #input\n [id]=\"id + '-input'\"\n class=\"gds-field\"\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [attr.email]=\"email\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [pattern]=\"pattern\"\n [disabled]=\"disabled\"\n [autocomplete]=\"autocomplete\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.role]=\"role\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n </div>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;top:1px;left:0;width:calc(100% - 2.625em)}:host .input-wrapper{border:none;box-shadow:none}:host .input-wrapper.expanded{display:flex}:host .input-wrapper.expanded .input-group input.gds-field{height:calc(100% - 2px);width:100%;min-height:unset;margin-left:1px;padding-left:1rem;padding-right:1rem;border:none;box-shadow:none}:host .input-wrapper.collapsed{display:none}:host .input-wrapper .input-group{width:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
|
|
115
115
|
}
|
|
116
116
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggvTypeaheadInputComponent, decorators: [{
|
|
117
117
|
type: Component,
|
|
118
|
-
args: [{ selector: 'nggv-typeahead-input', template: "<ng-container>\n <div\n class=\"input-wrapper\"\n [ngClass]=\"{ expanded: expanded, collapsed: !expanded }\"\n [ngStyle]=\"{ 'height.px': buttonHeight }\"\n (click)=\"$event.stopPropagation()\"\n >\n <!-- INPUT FIELD -->\n <div class=\"input-group\">\n <input\n #input\n [id]=\"id + '-input'\"\n class=\"gds-field\"\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [attr.email]=\"email\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [pattern]=\"pattern\"\n [disabled]=\"disabled\"\n [autocomplete]=\"autocomplete\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.role]=\"role\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n </div>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;top:1px;left:0;width:calc(100% - 2.625em)}:host .input-wrapper{border:none;box-shadow:none}:host .input-wrapper.expanded{display:flex}:host .input-wrapper.expanded .input-group input.gds-field{height:calc(100% - 2px);width:100%;min-height:unset;margin-left:1px;border:none;box-shadow:none}:host .input-wrapper.collapsed{display:none}:host .input-wrapper .input-group{width:100%}\n"] }]
|
|
118
|
+
args: [{ selector: 'nggv-typeahead-input', template: "<ng-container>\n <div\n class=\"input-wrapper\"\n [ngClass]=\"{ expanded: expanded, collapsed: !expanded }\"\n [ngStyle]=\"{ 'height.px': buttonHeight }\"\n (click)=\"$event.stopPropagation()\"\n >\n <!-- INPUT FIELD -->\n <div class=\"input-group\">\n <input\n #input\n [id]=\"id + '-input'\"\n class=\"gds-field\"\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [attr.email]=\"email\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [pattern]=\"pattern\"\n [disabled]=\"disabled\"\n [autocomplete]=\"autocomplete\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.role]=\"role\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n </div>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;top:1px;left:0;width:calc(100% - 2.625em)}:host .input-wrapper{border:none;box-shadow:none}:host .input-wrapper.expanded{display:flex}:host .input-wrapper.expanded .input-group input.gds-field{height:calc(100% - 2px);width:100%;min-height:unset;margin-left:1px;padding-left:1rem;padding-right:1rem;border:none;box-shadow:none}:host .input-wrapper.collapsed{display:none}:host .input-wrapper .input-group{width:100%}\n"] }]
|
|
119
119
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.NgControl, decorators: [{
|
|
120
120
|
type: Self
|
|
121
121
|
}, {
|
|
@@ -135,4 +135,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
135
135
|
type: HostListener,
|
|
136
136
|
args: ['keyup', ['$event']]
|
|
137
137
|
}] } });
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWFoZWFkLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvdi1hbmd1bGFyL2Ryb3Bkb3duL3R5cGVhaGVhZC90eXBlYWhlYWQtaW5wdXQvdHlwZWFoZWFkLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvdi1hbmd1bGFyL2Ryb3Bkb3duL3R5cGVhaGVhZC90eXBlYWhlYWQtaW5wdXQvdHlwZWFoZWFkLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBQ1IsU0FBUyxFQUNULElBQUksR0FDTCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBa0IsTUFBTSxvQkFBb0IsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBR2hDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFBO0FBQ2hGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFBOzs7O0FBT2hFLE1BQU0sT0FBTywyQkFDWCxTQUFRLGtCQUFrQjtJQVkxQixJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxhQUFhLENBQUE7SUFDbkQsQ0FBQztJQVdELFlBQ1UsT0FBbUIsRUFDbkIsU0FBb0IsRUFDRCxTQUFvQixFQUdyQyxjQUE4QixFQUM5QixHQUFzQjtRQUVoQyxLQUFLLENBQUMsU0FBUyxFQUFFLGNBQWMsRUFBRSxH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LE9BQU8sS0FBSyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUE7UUFDckQsZ0NBQWdDO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUM1QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ssUUFBUSxDQUFDLEtBQWEsRUFBRSxhQUFzQjtRQUNwRCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQTtRQUNsQixJQUFJLGFBQWEsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQ3pCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNwQyxDQUFDO0lBQ0gsQ0FBQzsrR0FuSVUsMkJBQTJCLDBIQStCNUIsZUFBZTttR0EvQmQsMkJBQTJCLGdRQzFCeEMsaW1DQXNDQTs7NEZEWmEsMkJBQTJCO2tCQUx2QyxTQUFTOytCQUNFLHNCQUFzQjs7MEJBaUM3QixJQUFJOzswQkFBSSxRQUFROzswQkFDaEIsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyxlQUFlO3lFQTFCaEIsYUFBYTtzQkFBckIsS0FBSztnQkFHRyxlQUFlO3NCQUF2QixLQUFLO2dCQUdHLGlCQUFpQjtzQkFBekIsS0FBSztnQkEwQ04sT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5qZWN0LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBSZW5kZXJlcjIsXG4gIFNlbGYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IFRSQU5TTE9DT19TQ09QRSwgVHJhbnNsb2NvU2NvcGUgfSBmcm9tICdAanN2ZXJzZS90cmFuc2xvY28nXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzJ1xuXG5pbXBvcnQgeyBPcHRpb25CYXNlIH0gZnJvbSAnQHNlYmdyb3VwL2dyZWVuLWFuZ3VsYXIvc3JjL3YtYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTmdndklucHV0Q29tcG9uZW50IH0gZnJvbSAnQHNlYmdyb3VwL2dyZWVuLWFuZ3VsYXIvc3JjL3YtYW5ndWxhci9pbnB1dCdcbmltcG9ydCB7IE5nZ3ZEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Ryb3Bkb3duLmNvbXBvbmVudCdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmdndi10eXBlYWhlYWQtaW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vdHlwZWFoZWFkLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdHlwZWFoZWFkLWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE5nZ3ZUeXBlYWhlYWRJbnB1dENvbXBvbmVudFxuICBleHRlbmRzIE5nZ3ZJbnB1dENvbXBvbmVudFxuICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95XG57XG4gIC8qKiBSZWZlcmVuY2UgdG8gdGhlIGhvc3QgZHJvcGRvd24gKi9cbiAgQElucHV0KCkgaG9zdENvbXBvbmVudCE6IE5nZ3ZEcm9wZG93bkNvbXBvbmVudFxuXG4gIC8qKiBGb3JtYXRzIGVhY2ggaXRlbSB0aGF0IGlzIGRpc3BsYXllZCBhcyBhbiBvcHRpb24uIE9ubHkgYXBwbGllcyBmb3JtYXQgaWYgdGhlIG9wdGlvbiBpZiBpdCBpbXBsZW1lbnQgT3B0aW9uIGludGVyZmFjZS4gKi9cbiAgQElucHV0KCkgcmVzdWx0Rm9ybWF0dGVyPzogKG9wdGlvbjogT3B0aW9uQmFzZTxhbnk+KSA9PiBzdHJpbmdcblxuICAvKiogRm9ybWF0cyB0aGUgc2VsZWN0ZWQgaXRlbSBpbiB0aGUgaW5wdXQgd2hlbiBkcm9wZG93biBpcyBvcGVuZWQuIElmIG5vIGZ1bmN0aW9uIGlzIHByb3ZpZGVkLCBpdCB3aWxsIGRpc3BsYXkgdGhlIHZhbHVlIG9mIHRoZSBzZWxlY3RlZCBvYmplY3RzIGxhYmVsIHByb3BlcnR5ICovXG4gIEBJbnB1dCgpIHNlbGVjdGVkRm9ybWF0dGVyPzogKHNlbGVjdGVkOiBPcHRpb25CYXNlPGFueT4pID0+IHN0cmluZ1xuXG4gIGdldCBkcm9wZG93bkJ1dHRvbigpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuaG9zdENvbXBvbmVudC5pbnB1dFJlZj8ubmF0aXZlRWxlbWVudFxuICB9XG5cbiAgLyoqIEJvb2xlYW4gdG8gaW5kaWNhdGUgd2V0aGVyIHRoZSBkcm9wZG93biBpcyBleHBhbmRlZCBvciBub3QsIHRvIGFwcGx5IGFwcHJvcHJpYXRlIHN0eWxpbmcgKi9cbiAgZXhwYW5kZWQgPSBmYWxzZVxuXG4gIC8qKiBVc2VkIHRvIGRldGVybWluZSB0aGUgaGVpZ2h0IG9mIHRoZSBpbnB1dGluIGh0bWwgKi9cbiAgYnV0dG9uSGVpZ2h0PzogbnVtYmVyXG5cbiAgLyoqIEBpbnRlcm5hbCBVc2VkIHRvIGRldGVybWluZSB3ZXRoZXIgdGhlIGlucHV0IGhhcyBiZWVuIG1vdmVkIG9yIG5vdCAqL1xuICBpbnB1dE1vdmVkID0gZmFsc2VcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjI6IFJlbmRlcmVyMixcbiAgICBAU2VsZigpIEBPcHRpb25hbCgpIHB1YmxpYyBuZ0NvbnRyb2w6IE5nQ29udHJvbCxcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoVFJBTlNMT0NPX1NDT1BFKVxuICAgIHByb3RlY3RlZCB0cmFuc2xvY29TY29wZTogVHJhbnNsb2NvU2NvcGUsXG4gICAgcHJvdGVjdGVkIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge1xuICAgIHN1cGVyKG5nQ29udHJvbCwgdHJhbnNsb2NvU2NvcGUsIGNkcilcbiAgICBzdXBlci5uZ09uSW5pdCgpXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmF1dG9jb21wbGV0ZSA9ICdvZmYnXG4gICAgdGhpcy5kZWJvdW5jZVRpbWUgPSAwXG4gICAgdGhpcy5ob3N0Q29tcG9uZW50LnNlbGVjdE9uU2luZ2xlT3B0aW9uID0gZmFsc2VcblxuICAgIHRoaXMuaGFuZGxlRXhwYW5kZWRDaGFuZ2UoKVxuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKiBBbGxvdyBzcGFjZSB0byBiZSBpbnB1dHRlZCBhcyB0ZXh0XG4gICAqIEBwYXJhbSBldmVudCBmaXJlZCBjb250YWluaW5nIHdoaWNoIGtleSB3YXMgcmVsZWFzZWQuXG4gICAqL1xuICBASG9zdExpc3RlbmVyKCdrZXl1cCcsIFsnJGV2ZW50J10pXG4gIG9uS2V5VXAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBpZiAoZXZlbnQuY29kZSA9PT0gJ1NwYWNlJyAmJiB0aGlzLmV4cGFuZGVkKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKiBGaXJzdCB0aW1lIHRoZSBkcm9wZG93biBpcyBleHBhbmRlZCwgbW92ZSB0aGUgaW5wdXQgc3AgaXQgYmVjb21lcyBhIGNoaWxkIG9mIHRoZSBkcm9wZG93biBidXR0b25cbiAgICogdG8gYmV0dGVyIHJlZmxlY3Qgc2VtYW50aWNzIGFuZCBzdHlsaW5nLlxuICAgKi9cbiAgcHJpdmF0ZSBtb3ZlSW5wdXQoKSB7XG4gICAgLy8gV29ya2Fyb3VuZCB0byBleGVjdXRlIGNvZGUgaW4gc2V0VGltZW91dCBkdWUgdG8gaG9va3MgbWFuYWdlbWVudCBldGMuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAvLyBPbmx5IG1vdmUgaWYgcGFyZW50IGRyb3Bkb3duIGlzIGZvdW5kXG4gICAgICBpZiAodGhpcy5kcm9wZG93bkJ1dHRvbikge1xuICAgICAgICB0aGlzLnJlbmRlcmVyMi5hcHBlbmRDaGlsZChcbiAgICAgICAgICB0aGlzLmRyb3Bkb3duQnV0dG9uLnF1ZXJ5U2VsZWN0b3IoJ2J1dHRvbicpLFxuICAgICAgICAgIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LFxuICAgICAgICApXG4gICAgICAgIC8vIEdldCB0aGUgaGVpZ2h0IG9mIHRoZSBwYXJlbnQgYnV0dG9uIHNvIHRoZSBpbnB1dCBjYW4gYmUgZXhwbGljaXRseSBzZXQgdG8gdGhlIHNhbWUgaGVpZ2h0IHNpbmNlIGl0J3MgYWJzb2x1dGVseSBwb3NpdGlvbmVkXG4gICAgICAgIHRoaXMuYnV0dG9uSGVpZ2h0ID1cbiAgICAgICAgICB0aGlzLmRyb3Bkb3duQnV0dG9uLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCB8fCAzMiAvLyBEZWZhdWx0IHRvIDJlbTtcbiAgICAgICAgdGhpcy5pbnB1dE1vdmVkID0gdHJ1ZVxuICAgICAgfVxuICAgIH0sIDApXG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqIFdoZW4gZHJvcGRvd24gaXMgZXhwYW5kZWQsIGZvY3VzIG9uIHRoZSBpbnB1dC4gSWYgYSB2YWx1ZSBpcyBzZWxlY3RlZCwgc2V0IGl0IGluIHRoZSBpbnB1dC5cbiAgICogV2hlbiB0aGUgZHJvcGRvd24gaXMgY29sbGFwc2VkLCBlbXB0eSB0aGUgaW5wdXQgZnJvbSB0ZXh0LlxuICAgKi9cbiAgcHJpdmF0ZSBoYW5kbGVFeHBhbmRlZENoYW5nZSgpIHtcbiAgICB0aGlzLmhvc3RDb21wb25lbnQuZXhwYW5kZWRDaGFuZ2VcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKChzdGF0ZSkgPT4ge1xuICAgICAgICB0aGlzLmV4cGFuZGVkID0gc3RhdGVcblxuICAgICAgICAvLyBDYWxsaW5nIHRoaXMgZnVuY3Rpb24gZnJvbSBvbkluaXQgY2F1c2VkIGlzc3VlcyB3aGVuIERPTSBoYXMgbm90IGZ1bGx5IGJlZW4gaW5pdGlhbGl6ZWQgYmVjYXVzZSBvZlxuICAgICAgICAvLyBkaWZmZXJlbnQgQ1NTIHVzZWQgdG8gaGlkZSAoYnV0IG5vdCByZW1vdmUpIGZyb20gRE9NXG4gICAgICAgIGlmICghdGhpcy5pbnB1dE1vdmVkKSB0aGlzLm1vdmVJbnB1dCgpXG5cbiAgICAgICAgaWYgKHRoaXMuZXhwYW5kZWQpIHtcbiAgICAgICAgICAvLyBXZWlyZCB3b3JrYXJvdW5kIGZvciBzZXR0aW5nIGZvY3VzLiBEaWRuJ3Qgc2V0IGZvY3VzLCBidXQgd3JhcHBpbmcgaW4gc2V0VGltZW91dCBzb2x2ZWQgaXQuXG4gICAgICAgICAgLy8gU2VlIHN1Z2dlc3Rpb24gaGVyZTogaHR0cHM6Ly9naXRodWIuY29tL2lvbmljLXRlYW0vc3RlbmNpbC9pc3N1ZXMvMzc3MiNpc3N1ZWNvbW1lbnQtMTI5MjU5OTYwOVxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5zZXRGb2N1cygpKVxuICAgICAgICAgIC8vIEZvcm1hdCBhbmQgaW50ZXJwb2xhdGUgcmVzdWx0IHNpbmNlIHJldHVybiB0eXBlIGNhbiBiZSBvdGhlciB0aGFuIHN0cmluZyBmcm9tIHRoZSBmb3JtYXR0ZXJcbiAgICAgICAgICBjb25zdCBmb3JtYXR0ZWRWYWx1ZSA9IGAke3RoaXMuZm9ybWF0U2VsZWN0ZWQodGhpcy5ob3N0Q29tcG9uZW50LnN0YXRlKX1gXG4gICAgICAgICAgdGhpcy5zZXRJbnB1dChmb3JtYXR0ZWRWYWx1ZSwgZmFsc2UpXG4gICAgICAgIH0gZWxzZSB0aGlzLnNldElucHV0KCcnLCB0cnVlKVxuICAgICAgfSlcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWwgRm9ybWF0cyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRvIGRpc3BsYXkgaW4gdGhlIGlucHV0LiBJbnRlcnBvbGF0ZSB0aGUgcmV0dXJuZWQgdmFsdWVcbiAgICogc2luY2Ugd2UgZG9uJ3Qga25vdyB0aGUgcmV0dXJuIHR5cGUgb3IgbGFiZWwgdHlwZS5cbiAgICogQHBhcmFtIHZhbHVlIFRoZSBzZWxlY3RlZCB2YWx1ZVxuICAgKiBAcmV0dXJucyBUaGUgZm9ybWF0dGVkIHZhbHVlXG4gICAqL1xuICBwcml2YXRlIGZvcm1hdFNlbGVjdGVkKHZhbHVlOiBPcHRpb25CYXNlPGFueT4pIHtcbiAgICBpZiAodmFsdWU/LmtleSA9PSBudWxsKSByZXR1cm4gJydcbiAgICAvLyBJZiBubyBmb3JtYXR0ZXIgZXhpc3RzLCByZXR1cm4gdGhlIGxhYmVsIG9yIGVtcHR5IHN0cmluZ1xuICAgIGlmICghdGhpcy5zZWxlY3RlZEZvcm1hdHRlcikgcmV0dXJuIHZhbHVlLmxhYmVsID8/ICcnXG4gICAgLy8gSWYgYSBmb3JtYXR0ZXIgZXhpc3RzLCB1c2UgaXRcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZEZvcm1hdHRlcih2YWx1ZSkgPz8gJydcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBpbnB1dCBwcm9ncmFtbWF0aWNhbGx5IGluc3RlYWQgb2YgbmF0aXZlIEhUTUwgaW5wdXQgZXZlbnQuXG4gICAqIEBwYXJhbSBpbnB1dFxuICAgKi9cbiAgcHJpdmF0ZSBzZXRJbnB1dChpbnB1dDogc3RyaW5nLCB0cmlnZ2VyRmlsdGVyOiBib29sZWFuKSB7XG4gICAgdGhpcy5zdGF0ZSA9IGlucHV0XG4gICAgaWYgKHRyaWdnZXJGaWx0ZXIpIHtcbiAgICAgIHRoaXMub25DaGFuZ2UodGhpcy5zdGF0ZSlcbiAgICAgIHRoaXMuaW5wdXRDaGFuZ2UkLm5leHQodGhpcy5zdGF0ZSlcbiAgICB9XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImlucHV0LXdyYXBwZXJcIlxuICAgIFtuZ0NsYXNzXT1cInsgZXhwYW5kZWQ6IGV4cGFuZGVkLCBjb2xsYXBzZWQ6ICFleHBhbmRlZCB9XCJcbiAgICBbbmdTdHlsZV09XCJ7ICdoZWlnaHQucHgnOiBidXR0b25IZWlnaHQgfVwiXG4gICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gID5cbiAgICA8IS0tIElOUFVUIEZJRUxEIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cFwiPlxuICAgICAgPGlucHV0XG4gICAgICAgICNpbnB1dFxuICAgICAgICBbaWRdPVwiaWQgKyAnLWlucHV0J1wiXG4gICAgICAgIGNsYXNzPVwiZ2RzLWZpZWxkXCJcbiAgICAgICAgW2F0dHIudHlwZV09XCJ0eXBlXCJcbiAgICAgICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICAgICAgW2F0dHIucmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICBbYXR0ci5lbWFpbF09XCJlbWFpbFwiXG4gICAgICAgIFttaW5dPVwibWluXCJcbiAgICAgICAgW21heF09XCJtYXhcIlxuICAgICAgICBbc3RlcF09XCJzdGVwXCJcbiAgICAgICAgW2F0dHIubWF4bGVuZ3RoXT1cIm1heGxlbmd0aFwiXG4gICAgICAgIFthdHRyLm1pbmxlbmd0aF09XCJtaW5sZW5ndGhcIlxuICAgICAgICBbcGF0dGVybl09XCJwYXR0ZXJuXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgW2F1dG9jb21wbGV0ZV09XCJhdXRvY29tcGxldGVcIlxuICAgICAgICBbYXV0b2ZvY3VzXT1cImF1dG9mb2N1c1wiXG4gICAgICAgIFtyZWFkT25seV09XCJyZWFkb25seVwiXG4gICAgICAgIFthdHRyLnJvbGVdPVwicm9sZVwiXG4gICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJkZXNjcmlwdGlvblwiXG4gICAgICAgIFt2YWx1ZV09XCJzdGF0ZVwiXG4gICAgICAgIChpbnB1dCk9XCJvbklucHV0KCRldmVudClcIlxuICAgICAgICAoZm9jdXMpPVwib25Gb2N1cygkZXZlbnQpXCJcbiAgICAgICAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxuICAgICAgLz5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
138
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWFoZWFkLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvdi1hbmd1bGFyL2Ryb3Bkb3duL3R5cGVhaGVhZC90eXBlYWhlYWQtaW5wdXQvdHlwZWFoZWFkLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvdi1hbmd1bGFyL2Ryb3Bkb3duL3R5cGVhaGVhZC90eXBlYWhlYWQtaW5wdXQvdHlwZWFoZWFkLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBQ1IsU0FBUyxFQUNULElBQUksR0FDTCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBa0IsTUFBTSxvQkFBb0IsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBR2hDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFBO0FBQ2hGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFBOzs7O0FBT2hFLE1BQU0sT0FBTywyQkFDWCxTQUFRLGtCQUFrQjtJQVkxQixJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxhQUFhLENBQUE7SUFDbkQsQ0FBQztJQVdELFlBQ1UsT0FBbUIsRUFDbkIsU0FBb0IsRUFDRCxTQUFvQixFQUdyQyxjQUE4QixFQUM5QixHQUFzQjtRQUVoQyxLQUFLLENBQUMsU0FBUyxFQUFFLGNBQWMsRUFBRSxHQUFHLENBQUMsQ0FBQTtRQVI3QixZQUFPLEdBQVAsT0FBTyxDQUFZO1FBQ25CLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDRCxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBR3JDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQWhCbEMsK0ZBQStGO1FBQy9GLGFBQVEsR0FBRyxLQUFLLENBQUE7UUFLaEIseUVBQXlFO1FBQ3pFLGVBQVUsR0FBRyxLQUFLLENBQUE7UUFZaEIsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFBO0lBQ2xCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUE7UUFDekIsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUE7UUFDckIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxvQkFBb0IsR0FBRyxLQUFLLENBQUE7UUFFL0MsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUE7SUFDN0IsQ0FBQztJQUVEOzs7O09BSUc7SUFFSCxPQUFPLENBQUMsS0FBb0I7UUFDMUIsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLE9BQU8sSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDNUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFBO1FBQ3hCLENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLFNBQVM7UUFDZix3RUFBd0U7UUFDeEUsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLHdDQUF3QztZQUN4QyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDeEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQ3hCLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxFQUMzQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FDM0IsQ0FBQTtnQkFDRCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQTtZQUN4QixDQUFDO1FBQ0gsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQ1AsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxvQkFBb0I7UUFDMUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjO2FBQzlCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQy9CLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFBO1lBRXJCLHFHQUFxRztZQUNyRyx1REFBdUQ7WUFDdkQsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVO2dCQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQTtZQUV0Qyw2SEFBNkg7WUFDN0gsSUFBSSxDQUFDLFlBQVk7Z0JBQ2YsSUFBSSxDQUFDLGNBQWMsRUFBRSxxQkFBcUIsRUFBRSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUEsQ0FBQyxrQkFBa0I7WUFFOUUsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2xCLDhGQUE4RjtnQkFDOUYsaUdBQWlHO2dCQUNqRyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUE7Z0JBQ2pDLDhGQUE4RjtnQkFDOUYsTUFBTSxjQUFjLEdBQUcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQTtnQkFDekUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQUUsS0FBSyxDQUFDLENBQUE7WUFDdEMsQ0FBQzs7Z0JBQU0sSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFDaEMsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSyxjQUFjLENBQUMsS0FBc0I7UUFDM0MsSUFBSSxLQUFLLEVBQUUsR0FBRyxJQUFJLElBQUk7WUFBRSxPQUFPLEVBQUUsQ0FBQTtRQUNqQywyREFBMkQ7UUFDM0QsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUI7WUFBRSxPQUFPLEtBQUssQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFBO1FBQ3JELGdDQUFnQztRQUNoQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDNUMsQ0FBQztJQUVEOzs7T0FHRztJQUNLLFFBQVEsQ0FBQyxLQUFhLEVBQUUsYUFBc0I7UUFDcEQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUE7UUFDbEIsSUFBSSxhQUFhLEVBQUUsQ0FBQztZQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtZQUN6QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDcEMsQ0FBQztJQUNILENBQUM7K0dBcElVLDJCQUEyQiwwSEErQjVCLGVBQWU7bUdBL0JkLDJCQUEyQixnUUMxQnhDLGltQ0FzQ0E7OzRGRFphLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDRSxzQkFBc0I7OzBCQWlDN0IsSUFBSTs7MEJBQUksUUFBUTs7MEJBQ2hCLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsZUFBZTt5RUExQmhCLGFBQWE7c0JBQXJCLEtBQUs7Z0JBR0csZUFBZTtzQkFBdkIsS0FBSztnQkFHRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBMENOLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgUmVuZGVyZXIyLFxuICBTZWxmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBUUkFOU0xPQ09fU0NPUEUsIFRyYW5zbG9jb1Njb3BlIH0gZnJvbSAnQGpzdmVyc2UvdHJhbnNsb2NvJ1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcydcblxuaW1wb3J0IHsgT3B0aW9uQmFzZSB9IGZyb20gJ0BzZWJncm91cC9ncmVlbi1hbmd1bGFyL3NyYy92LWFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE5nZ3ZJbnB1dENvbXBvbmVudCB9IGZyb20gJ0BzZWJncm91cC9ncmVlbi1hbmd1bGFyL3NyYy92LWFuZ3VsYXIvaW5wdXQnXG5pbXBvcnQgeyBOZ2d2RHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9kcm9wZG93bi5jb21wb25lbnQnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25nZ3YtdHlwZWFoZWFkLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3R5cGVhaGVhZC1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3R5cGVhaGVhZC1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBOZ2d2VHlwZWFoZWFkSW5wdXRDb21wb25lbnRcbiAgZXh0ZW5kcyBOZ2d2SW5wdXRDb21wb25lbnRcbiAgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveVxue1xuICAvKiogUmVmZXJlbmNlIHRvIHRoZSBob3N0IGRyb3Bkb3duICovXG4gIEBJbnB1dCgpIGhvc3RDb21wb25lbnQhOiBOZ2d2RHJvcGRvd25Db21wb25lbnRcblxuICAvKiogRm9ybWF0cyBlYWNoIGl0ZW0gdGhhdCBpcyBkaXNwbGF5ZWQgYXMgYW4gb3B0aW9uLiBPbmx5IGFwcGxpZXMgZm9ybWF0IGlmIHRoZSBvcHRpb24gaWYgaXQgaW1wbGVtZW50IE9wdGlvbiBpbnRlcmZhY2UuICovXG4gIEBJbnB1dCgpIHJlc3VsdEZvcm1hdHRlcj86IChvcHRpb246IE9wdGlvbkJhc2U8YW55PikgPT4gc3RyaW5nXG5cbiAgLyoqIEZvcm1hdHMgdGhlIHNlbGVjdGVkIGl0ZW0gaW4gdGhlIGlucHV0IHdoZW4gZHJvcGRvd24gaXMgb3BlbmVkLiBJZiBubyBmdW5jdGlvbiBpcyBwcm92aWRlZCwgaXQgd2lsbCBkaXNwbGF5IHRoZSB2YWx1ZSBvZiB0aGUgc2VsZWN0ZWQgb2JqZWN0cyBsYWJlbCBwcm9wZXJ0eSAqL1xuICBASW5wdXQoKSBzZWxlY3RlZEZvcm1hdHRlcj86IChzZWxlY3RlZDogT3B0aW9uQmFzZTxhbnk+KSA9PiBzdHJpbmdcblxuICBnZXQgZHJvcGRvd25CdXR0b24oKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmhvc3RDb21wb25lbnQuaW5wdXRSZWY/Lm5hdGl2ZUVsZW1lbnRcbiAgfVxuXG4gIC8qKiBCb29sZWFuIHRvIGluZGljYXRlIHdldGhlciB0aGUgZHJvcGRvd24gaXMgZXhwYW5kZWQgb3Igbm90LCB0byBhcHBseSBhcHByb3ByaWF0ZSBzdHlsaW5nICovXG4gIGV4cGFuZGVkID0gZmFsc2VcblxuICAvKiogVXNlZCB0byBkZXRlcm1pbmUgdGhlIGhlaWdodCBvZiB0aGUgaW5wdXRpbiBodG1sICovXG4gIGJ1dHRvbkhlaWdodD86IG51bWJlclxuXG4gIC8qKiBAaW50ZXJuYWwgVXNlZCB0byBkZXRlcm1pbmUgd2V0aGVyIHRoZSBpbnB1dCBoYXMgYmVlbiBtb3ZlZCBvciBub3QgKi9cbiAgaW5wdXRNb3ZlZCA9IGZhbHNlXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVuZGVyZXIyOiBSZW5kZXJlcjIsXG4gICAgQFNlbGYoKSBAT3B0aW9uYWwoKSBwdWJsaWMgbmdDb250cm9sOiBOZ0NvbnRyb2wsXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KFRSQU5TTE9DT19TQ09QRSlcbiAgICBwcm90ZWN0ZWQgdHJhbnNsb2NvU2NvcGU6IFRyYW5zbG9jb1Njb3BlLFxuICAgIHByb3RlY3RlZCBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHtcbiAgICBzdXBlcihuZ0NvbnRyb2wsIHRyYW5zbG9jb1Njb3BlLCBjZHIpXG4gICAgc3VwZXIubmdPbkluaXQoKVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5hdXRvY29tcGxldGUgPSAnb2ZmJ1xuICAgIHRoaXMuZGVib3VuY2VUaW1lID0gMFxuICAgIHRoaXMuaG9zdENvbXBvbmVudC5zZWxlY3RPblNpbmdsZU9wdGlvbiA9IGZhbHNlXG5cbiAgICB0aGlzLmhhbmRsZUV4cGFuZGVkQ2hhbmdlKClcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICogQWxsb3cgc3BhY2UgdG8gYmUgaW5wdXR0ZWQgYXMgdGV4dFxuICAgKiBAcGFyYW0gZXZlbnQgZmlyZWQgY29udGFpbmluZyB3aGljaCBrZXkgd2FzIHJlbGVhc2VkLlxuICAgKi9cbiAgQEhvc3RMaXN0ZW5lcigna2V5dXAnLCBbJyRldmVudCddKVxuICBvbktleVVwKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgaWYgKGV2ZW50LmNvZGUgPT09ICdTcGFjZScgJiYgdGhpcy5leHBhbmRlZCkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICogRmlyc3QgdGltZSB0aGUgZHJvcGRvd24gaXMgZXhwYW5kZWQsIG1vdmUgdGhlIGlucHV0IHNwIGl0IGJlY29tZXMgYSBjaGlsZCBvZiB0aGUgZHJvcGRvd24gYnV0dG9uXG4gICAqIHRvIGJldHRlciByZWZsZWN0IHNlbWFudGljcyBhbmQgc3R5bGluZy5cbiAgICovXG4gIHByaXZhdGUgbW92ZUlucHV0KCkge1xuICAgIC8vIFdvcmthcm91bmQgdG8gZXhlY3V0ZSBjb2RlIGluIHNldFRpbWVvdXQgZHVlIHRvIGhvb2tzIG1hbmFnZW1lbnQgZXRjLlxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgLy8gT25seSBtb3ZlIGlmIHBhcmVudCBkcm9wZG93biBpcyBmb3VuZFxuICAgICAgaWYgKHRoaXMuZHJvcGRvd25CdXR0b24pIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlcjIuYXBwZW5kQ2hpbGQoXG4gICAgICAgICAgdGhpcy5kcm9wZG93bkJ1dHRvbi5xdWVyeVNlbGVjdG9yKCdidXR0b24nKSxcbiAgICAgICAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCxcbiAgICAgICAgKVxuICAgICAgICB0aGlzLmlucHV0TW92ZWQgPSB0cnVlXG4gICAgICB9XG4gICAgfSwgMClcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICogV2hlbiBkcm9wZG93biBpcyBleHBhbmRlZCwgZm9jdXMgb24gdGhlIGlucHV0LiBJZiBhIHZhbHVlIGlzIHNlbGVjdGVkLCBzZXQgaXQgaW4gdGhlIGlucHV0LlxuICAgKiBXaGVuIHRoZSBkcm9wZG93biBpcyBjb2xsYXBzZWQsIGVtcHR5IHRoZSBpbnB1dCBmcm9tIHRleHQuXG4gICAqL1xuICBwcml2YXRlIGhhbmRsZUV4cGFuZGVkQ2hhbmdlKCkge1xuICAgIHRoaXMuaG9zdENvbXBvbmVudC5leHBhbmRlZENoYW5nZVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUoKHN0YXRlKSA9PiB7XG4gICAgICAgIHRoaXMuZXhwYW5kZWQgPSBzdGF0ZVxuXG4gICAgICAgIC8vIENhbGxpbmcgdGhpcyBmdW5jdGlvbiBmcm9tIG9uSW5pdCBjYXVzZWQgaXNzdWVzIHdoZW4gRE9NIGhhcyBub3QgZnVsbHkgYmVlbiBpbml0aWFsaXplZCBiZWNhdXNlIG9mXG4gICAgICAgIC8vIGRpZmZlcmVudCBDU1MgdXNlZCB0byBoaWRlIChidXQgbm90IHJlbW92ZSkgZnJvbSBET01cbiAgICAgICAgaWYgKCF0aGlzLmlucHV0TW92ZWQpIHRoaXMubW92ZUlucHV0KClcblxuICAgICAgICAvLyBHZXQgdGhlIGhlaWdodCBvZiB0aGUgcGFyZW50IGJ1dHRvbiBzbyB0aGUgaW5wdXQgY2FuIGJlIGV4cGxpY2l0bHkgc2V0IHRvIHRoZSBzYW1lIGhlaWdodCBzaW5jZSBpdCdzIGFic29sdXRlbHkgcG9zaXRpb25lZFxuICAgICAgICB0aGlzLmJ1dHRvbkhlaWdodCA9XG4gICAgICAgICAgdGhpcy5kcm9wZG93bkJ1dHRvbj8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0IHx8IDMyIC8vIERlZmF1bHQgdG8gMmVtO1xuXG4gICAgICAgIGlmICh0aGlzLmV4cGFuZGVkKSB7XG4gICAgICAgICAgLy8gV2VpcmQgd29ya2Fyb3VuZCBmb3Igc2V0dGluZyBmb2N1cy4gRGlkbid0IHNldCBmb2N1cywgYnV0IHdyYXBwaW5nIGluIHNldFRpbWVvdXQgc29sdmVkIGl0LlxuICAgICAgICAgIC8vIFNlZSBzdWdnZXN0aW9uIGhlcmU6IGh0dHBzOi8vZ2l0aHViLmNvbS9pb25pYy10ZWFtL3N0ZW5jaWwvaXNzdWVzLzM3NzIjaXNzdWVjb21tZW50LTEyOTI1OTk2MDlcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2V0Rm9jdXMoKSlcbiAgICAgICAgICAvLyBGb3JtYXQgYW5kIGludGVycG9sYXRlIHJlc3VsdCBzaW5jZSByZXR1cm4gdHlwZSBjYW4gYmUgb3RoZXIgdGhhbiBzdHJpbmcgZnJvbSB0aGUgZm9ybWF0dGVyXG4gICAgICAgICAgY29uc3QgZm9ybWF0dGVkVmFsdWUgPSBgJHt0aGlzLmZvcm1hdFNlbGVjdGVkKHRoaXMuaG9zdENvbXBvbmVudC5zdGF0ZSl9YFxuICAgICAgICAgIHRoaXMuc2V0SW5wdXQoZm9ybWF0dGVkVmFsdWUsIGZhbHNlKVxuICAgICAgICB9IGVsc2UgdGhpcy5zZXRJbnB1dCgnJywgdHJ1ZSlcbiAgICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsIEZvcm1hdHMgdGhlIHNlbGVjdGVkIG9wdGlvbiB0byBkaXNwbGF5IGluIHRoZSBpbnB1dC4gSW50ZXJwb2xhdGUgdGhlIHJldHVybmVkIHZhbHVlXG4gICAqIHNpbmNlIHdlIGRvbid0IGtub3cgdGhlIHJldHVybiB0eXBlIG9yIGxhYmVsIHR5cGUuXG4gICAqIEBwYXJhbSB2YWx1ZSBUaGUgc2VsZWN0ZWQgdmFsdWVcbiAgICogQHJldHVybnMgVGhlIGZvcm1hdHRlZCB2YWx1ZVxuICAgKi9cbiAgcHJpdmF0ZSBmb3JtYXRTZWxlY3RlZCh2YWx1ZTogT3B0aW9uQmFzZTxhbnk+KSB7XG4gICAgaWYgKHZhbHVlPy5rZXkgPT0gbnVsbCkgcmV0dXJuICcnXG4gICAgLy8gSWYgbm8gZm9ybWF0dGVyIGV4aXN0cywgcmV0dXJuIHRoZSBsYWJlbCBvciBlbXB0eSBzdHJpbmdcbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWRGb3JtYXR0ZXIpIHJldHVybiB2YWx1ZS5sYWJlbCA/PyAnJ1xuICAgIC8vIElmIGEgZm9ybWF0dGVyIGV4aXN0cywgdXNlIGl0XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRGb3JtYXR0ZXIodmFsdWUpID8/ICcnXG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgaW5wdXQgcHJvZ3JhbW1hdGljYWxseSBpbnN0ZWFkIG9mIG5hdGl2ZSBIVE1MIGlucHV0IGV2ZW50LlxuICAgKiBAcGFyYW0gaW5wdXRcbiAgICovXG4gIHByaXZhdGUgc2V0SW5wdXQoaW5wdXQ6IHN0cmluZywgdHJpZ2dlckZpbHRlcjogYm9vbGVhbikge1xuICAgIHRoaXMuc3RhdGUgPSBpbnB1dFxuICAgIGlmICh0cmlnZ2VyRmlsdGVyKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMuc3RhdGUpXG4gICAgICB0aGlzLmlucHV0Q2hhbmdlJC5uZXh0KHRoaXMuc3RhdGUpXG4gICAgfVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJpbnB1dC13cmFwcGVyXCJcbiAgICBbbmdDbGFzc109XCJ7IGV4cGFuZGVkOiBleHBhbmRlZCwgY29sbGFwc2VkOiAhZXhwYW5kZWQgfVwiXG4gICAgW25nU3R5bGVdPVwieyAnaGVpZ2h0LnB4JzogYnV0dG9uSGVpZ2h0IH1cIlxuICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICA+XG4gICAgPCEtLSBJTlBVVCBGSUVMRCAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXBcIj5cbiAgICAgIDxpbnB1dFxuICAgICAgICAjaW5wdXRcbiAgICAgICAgW2lkXT1cImlkICsgJy1pbnB1dCdcIlxuICAgICAgICBjbGFzcz1cImdkcy1maWVsZFwiXG4gICAgICAgIFthdHRyLnR5cGVdPVwidHlwZVwiXG4gICAgICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgICAgIFthdHRyLnJlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgICAgW2F0dHIuZW1haWxdPVwiZW1haWxcIlxuICAgICAgICBbbWluXT1cIm1pblwiXG4gICAgICAgIFttYXhdPVwibWF4XCJcbiAgICAgICAgW3N0ZXBdPVwic3RlcFwiXG4gICAgICAgIFthdHRyLm1heGxlbmd0aF09XCJtYXhsZW5ndGhcIlxuICAgICAgICBbYXR0ci5taW5sZW5ndGhdPVwibWlubGVuZ3RoXCJcbiAgICAgICAgW3BhdHRlcm5dPVwicGF0dGVyblwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIFthdXRvY29tcGxldGVdPVwiYXV0b2NvbXBsZXRlXCJcbiAgICAgICAgW2F1dG9mb2N1c109XCJhdXRvZm9jdXNcIlxuICAgICAgICBbcmVhZE9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgICBbYXR0ci5yb2xlXT1cInJvbGVcIlxuICAgICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiZGVzY3JpcHRpb25cIlxuICAgICAgICBbdmFsdWVdPVwic3RhdGVcIlxuICAgICAgICAoaW5wdXQpPVwib25JbnB1dCgkZXZlbnQpXCJcbiAgICAgICAgKGZvY3VzKT1cIm9uRm9jdXMoJGV2ZW50KVwiXG4gICAgICAgIChibHVyKT1cIm9uQmx1cigkZXZlbnQpXCJcbiAgICAgIC8+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -51,9 +51,6 @@ export class NggvTypeaheadInputComponent extends NggvInputComponent {
|
|
|
51
51
|
// Only move if parent dropdown is found
|
|
52
52
|
if (this.dropdownButton) {
|
|
53
53
|
this.renderer2.appendChild(this.dropdownButton.querySelector('button'), this.element.nativeElement);
|
|
54
|
-
// Get the height of the parent button so the input can be explicitly set to the same height since it's absolutely positioned
|
|
55
|
-
this.buttonHeight =
|
|
56
|
-
this.dropdownButton.getBoundingClientRect().height || 32; // Default to 2em;
|
|
57
54
|
this.inputMoved = true;
|
|
58
55
|
}
|
|
59
56
|
}, 0);
|
|
@@ -72,6 +69,9 @@ export class NggvTypeaheadInputComponent extends NggvInputComponent {
|
|
|
72
69
|
// different CSS used to hide (but not remove) from DOM
|
|
73
70
|
if (!this.inputMoved)
|
|
74
71
|
this.moveInput();
|
|
72
|
+
// Get the height of the parent button so the input can be explicitly set to the same height since it's absolutely positioned
|
|
73
|
+
this.buttonHeight =
|
|
74
|
+
this.dropdownButton?.getBoundingClientRect().height || 32; // Default to 2em;
|
|
75
75
|
if (this.expanded) {
|
|
76
76
|
// Weird workaround for setting focus. Didn't set focus, but wrapping in setTimeout solved it.
|
|
77
77
|
// See suggestion here: https://github.com/ionic-team/stencil/issues/3772#issuecomment-1292599609
|
|
@@ -111,11 +111,11 @@ export class NggvTypeaheadInputComponent extends NggvInputComponent {
|
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
113
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggvTypeaheadInputComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.NgControl, optional: true, self: true }, { token: TRANSLOCO_SCOPE, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
114
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NggvTypeaheadInputComponent, selector: "nggv-typeahead-input", inputs: { hostComponent: "hostComponent", resultFormatter: "resultFormatter", selectedFormatter: "selectedFormatter" }, host: { listeners: { "keyup": "onKeyUp($event)" } }, usesInheritance: true, ngImport: i0, template: "<ng-container>\n <div\n class=\"input-wrapper\"\n [ngClass]=\"{ expanded: expanded, collapsed: !expanded }\"\n [ngStyle]=\"{ 'height.px': buttonHeight }\"\n (click)=\"$event.stopPropagation()\"\n >\n <!-- INPUT FIELD -->\n <div class=\"input-group\">\n <input\n #input\n [id]=\"id + '-input'\"\n class=\"gds-field\"\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [attr.email]=\"email\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [pattern]=\"pattern\"\n [disabled]=\"disabled\"\n [autocomplete]=\"autocomplete\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.role]=\"role\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n </div>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;top:1px;left:0;width:calc(100% - 2.625em)}:host .input-wrapper{border:none;box-shadow:none}:host .input-wrapper.expanded{display:flex}:host .input-wrapper.expanded .input-group input.gds-field{height:calc(100% - 2px);width:100%;min-height:unset;margin-left:1px;border:none;box-shadow:none}:host .input-wrapper.collapsed{display:none}:host .input-wrapper .input-group{width:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
|
|
114
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NggvTypeaheadInputComponent, selector: "nggv-typeahead-input", inputs: { hostComponent: "hostComponent", resultFormatter: "resultFormatter", selectedFormatter: "selectedFormatter" }, host: { listeners: { "keyup": "onKeyUp($event)" } }, usesInheritance: true, ngImport: i0, template: "<ng-container>\n <div\n class=\"input-wrapper\"\n [ngClass]=\"{ expanded: expanded, collapsed: !expanded }\"\n [ngStyle]=\"{ 'height.px': buttonHeight }\"\n (click)=\"$event.stopPropagation()\"\n >\n <!-- INPUT FIELD -->\n <div class=\"input-group\">\n <input\n #input\n [id]=\"id + '-input'\"\n class=\"gds-field\"\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [attr.email]=\"email\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [pattern]=\"pattern\"\n [disabled]=\"disabled\"\n [autocomplete]=\"autocomplete\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.role]=\"role\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n </div>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;top:1px;left:0;width:calc(100% - 2.625em)}:host .input-wrapper{border:none;box-shadow:none}:host .input-wrapper.expanded{display:flex}:host .input-wrapper.expanded .input-group input.gds-field{height:calc(100% - 2px);width:100%;min-height:unset;margin-left:1px;padding-left:1rem;padding-right:1rem;border:none;box-shadow:none}:host .input-wrapper.collapsed{display:none}:host .input-wrapper .input-group{width:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
|
|
115
115
|
}
|
|
116
116
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggvTypeaheadInputComponent, decorators: [{
|
|
117
117
|
type: Component,
|
|
118
|
-
args: [{ selector: 'nggv-typeahead-input', template: "<ng-container>\n <div\n class=\"input-wrapper\"\n [ngClass]=\"{ expanded: expanded, collapsed: !expanded }\"\n [ngStyle]=\"{ 'height.px': buttonHeight }\"\n (click)=\"$event.stopPropagation()\"\n >\n <!-- INPUT FIELD -->\n <div class=\"input-group\">\n <input\n #input\n [id]=\"id + '-input'\"\n class=\"gds-field\"\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [attr.email]=\"email\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [pattern]=\"pattern\"\n [disabled]=\"disabled\"\n [autocomplete]=\"autocomplete\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.role]=\"role\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n </div>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;top:1px;left:0;width:calc(100% - 2.625em)}:host .input-wrapper{border:none;box-shadow:none}:host .input-wrapper.expanded{display:flex}:host .input-wrapper.expanded .input-group input.gds-field{height:calc(100% - 2px);width:100%;min-height:unset;margin-left:1px;border:none;box-shadow:none}:host .input-wrapper.collapsed{display:none}:host .input-wrapper .input-group{width:100%}\n"] }]
|
|
118
|
+
args: [{ selector: 'nggv-typeahead-input', template: "<ng-container>\n <div\n class=\"input-wrapper\"\n [ngClass]=\"{ expanded: expanded, collapsed: !expanded }\"\n [ngStyle]=\"{ 'height.px': buttonHeight }\"\n (click)=\"$event.stopPropagation()\"\n >\n <!-- INPUT FIELD -->\n <div class=\"input-group\">\n <input\n #input\n [id]=\"id + '-input'\"\n class=\"gds-field\"\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [attr.email]=\"email\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [pattern]=\"pattern\"\n [disabled]=\"disabled\"\n [autocomplete]=\"autocomplete\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.role]=\"role\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n </div>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;top:1px;left:0;width:calc(100% - 2.625em)}:host .input-wrapper{border:none;box-shadow:none}:host .input-wrapper.expanded{display:flex}:host .input-wrapper.expanded .input-group input.gds-field{height:calc(100% - 2px);width:100%;min-height:unset;margin-left:1px;padding-left:1rem;padding-right:1rem;border:none;box-shadow:none}:host .input-wrapper.collapsed{display:none}:host .input-wrapper .input-group{width:100%}\n"] }]
|
|
119
119
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.NgControl, decorators: [{
|
|
120
120
|
type: Self
|
|
121
121
|
}, {
|
|
@@ -135,4 +135,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
135
135
|
type: HostListener,
|
|
136
136
|
args: ['keyup', ['$event']]
|
|
137
137
|
}] } });
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWFoZWFkLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvdi1hbmd1bGFyL2Ryb3Bkb3duL3R5cGVhaGVhZC90eXBlYWhlYWQtaW5wdXQvdHlwZWFoZWFkLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvdi1hbmd1bGFyL2Ryb3Bkb3duL3R5cGVhaGVhZC90eXBlYWhlYWQtaW5wdXQvdHlwZWFoZWFkLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBQ1IsU0FBUyxFQUNULElBQUksR0FDTCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBa0IsTUFBTSxvQkFBb0IsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBR2hDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFBO0FBQ2hGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFBOzs7O0FBT2hFLE1BQU0sT0FBTywyQkFDWCxTQUFRLGtCQUFrQjtJQVkxQixJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxhQUFhLENBQUE7SUFDbkQsQ0FBQztJQVdELFlBQ1UsT0FBbUIsRUFDbkIsU0FBb0IsRUFDRCxTQUFvQixFQUdyQyxjQUE4QixFQUM5QixHQUFzQjtRQUVoQyxLQUFLLENBQUMsU0FBUyxFQUFFLGNBQWMsRUFBRSxHQUFHLENB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S0FBSyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUE7UUFDckQsZ0NBQWdDO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUM1QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ssUUFBUSxDQUFDLEtBQWEsRUFBRSxhQUFzQjtRQUNwRCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQTtRQUNsQixJQUFJLGFBQWEsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQ3pCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNwQyxDQUFDO0lBQ0gsQ0FBQzsrR0FuSVUsMkJBQTJCLDBIQStCNUIsZUFBZTttR0EvQmQsMkJBQTJCLGdRQzFCeEMsaW1DQXNDQTs7NEZEWmEsMkJBQTJCO2tCQUx2QyxTQUFTOytCQUNFLHNCQUFzQjs7MEJBaUM3QixJQUFJOzswQkFBSSxRQUFROzswQkFDaEIsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyxlQUFlO3lFQTFCaEIsYUFBYTtzQkFBckIsS0FBSztnQkFHRyxlQUFlO3NCQUF2QixLQUFLO2dCQUdHLGlCQUFpQjtzQkFBekIsS0FBSztnQkEwQ04sT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5qZWN0LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBSZW5kZXJlcjIsXG4gIFNlbGYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IFRSQU5TTE9DT19TQ09QRSwgVHJhbnNsb2NvU2NvcGUgfSBmcm9tICdAanN2ZXJzZS90cmFuc2xvY28nXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzJ1xuXG5pbXBvcnQgeyBPcHRpb25CYXNlIH0gZnJvbSAnQHNlYmdyb3VwL2dyZWVuLWFuZ3VsYXIvc3JjL3YtYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTmdndklucHV0Q29tcG9uZW50IH0gZnJvbSAnQHNlYmdyb3VwL2dyZWVuLWFuZ3VsYXIvc3JjL3YtYW5ndWxhci9pbnB1dCdcbmltcG9ydCB7IE5nZ3ZEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Ryb3Bkb3duLmNvbXBvbmVudCdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmdndi10eXBlYWhlYWQtaW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vdHlwZWFoZWFkLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdHlwZWFoZWFkLWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE5nZ3ZUeXBlYWhlYWRJbnB1dENvbXBvbmVudFxuICBleHRlbmRzIE5nZ3ZJbnB1dENvbXBvbmVudFxuICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95XG57XG4gIC8qKiBSZWZlcmVuY2UgdG8gdGhlIGhvc3QgZHJvcGRvd24gKi9cbiAgQElucHV0KCkgaG9zdENvbXBvbmVudCE6IE5nZ3ZEcm9wZG93bkNvbXBvbmVudFxuXG4gIC8qKiBGb3JtYXRzIGVhY2ggaXRlbSB0aGF0IGlzIGRpc3BsYXllZCBhcyBhbiBvcHRpb24uIE9ubHkgYXBwbGllcyBmb3JtYXQgaWYgdGhlIG9wdGlvbiBpZiBpdCBpbXBsZW1lbnQgT3B0aW9uIGludGVyZmFjZS4gKi9cbiAgQElucHV0KCkgcmVzdWx0Rm9ybWF0dGVyPzogKG9wdGlvbjogT3B0aW9uQmFzZTxhbnk+KSA9PiBzdHJpbmdcblxuICAvKiogRm9ybWF0cyB0aGUgc2VsZWN0ZWQgaXRlbSBpbiB0aGUgaW5wdXQgd2hlbiBkcm9wZG93biBpcyBvcGVuZWQuIElmIG5vIGZ1bmN0aW9uIGlzIHByb3ZpZGVkLCBpdCB3aWxsIGRpc3BsYXkgdGhlIHZhbHVlIG9mIHRoZSBzZWxlY3RlZCBvYmplY3RzIGxhYmVsIHByb3BlcnR5ICovXG4gIEBJbnB1dCgpIHNlbGVjdGVkRm9ybWF0dGVyPzogKHNlbGVjdGVkOiBPcHRpb25CYXNlPGFueT4pID0+IHN0cmluZ1xuXG4gIGdldCBkcm9wZG93bkJ1dHRvbigpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuaG9zdENvbXBvbmVudC5pbnB1dFJlZj8ubmF0aXZlRWxlbWVudFxuICB9XG5cbiAgLyoqIEJvb2xlYW4gdG8gaW5kaWNhdGUgd2V0aGVyIHRoZSBkcm9wZG93biBpcyBleHBhbmRlZCBvciBub3QsIHRvIGFwcGx5IGFwcHJvcHJpYXRlIHN0eWxpbmcgKi9cbiAgZXhwYW5kZWQgPSBmYWxzZVxuXG4gIC8qKiBVc2VkIHRvIGRldGVybWluZSB0aGUgaGVpZ2h0IG9mIHRoZSBpbnB1dGluIGh0bWwgKi9cbiAgYnV0dG9uSGVpZ2h0PzogbnVtYmVyXG5cbiAgLyoqIEBpbnRlcm5hbCBVc2VkIHRvIGRldGVybWluZSB3ZXRoZXIgdGhlIGlucHV0IGhhcyBiZWVuIG1vdmVkIG9yIG5vdCAqL1xuICBpbnB1dE1vdmVkID0gZmFsc2VcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjI6IFJlbmRlcmVyMixcbiAgICBAU2VsZigpIEBPcHRpb25hbCgpIHB1YmxpYyBuZ0NvbnRyb2w6IE5nQ29udHJvbCxcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoVFJBTlNMT0NPX1NDT1BFKVxuICAgIHByb3RlY3RlZCB0cmFuc2xvY29TY29wZTogVHJhbnNsb2NvU2NvcGUsXG4gICAgcHJvdGVjdGVkIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge1xuICAgIHN1cGVyKG5nQ29udHJvbCwgdHJhbnNsb2NvU2NvcGUsIGNkcilcbiAgICBzdXBlci5uZ09uSW5pdCgpXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmF1dG9jb21wbGV0ZSA9ICdvZmYnXG4gICAgdGhpcy5kZWJvdW5jZVRpbWUgPSAwXG4gICAgdGhpcy5ob3N0Q29tcG9uZW50LnNlbGVjdE9uU2luZ2xlT3B0aW9uID0gZmFsc2VcblxuICAgIHRoaXMuaGFuZGxlRXhwYW5kZWRDaGFuZ2UoKVxuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKiBBbGxvdyBzcGFjZSB0byBiZSBpbnB1dHRlZCBhcyB0ZXh0XG4gICAqIEBwYXJhbSBldmVudCBmaXJlZCBjb250YWluaW5nIHdoaWNoIGtleSB3YXMgcmVsZWFzZWQuXG4gICAqL1xuICBASG9zdExpc3RlbmVyKCdrZXl1cCcsIFsnJGV2ZW50J10pXG4gIG9uS2V5VXAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBpZiAoZXZlbnQuY29kZSA9PT0gJ1NwYWNlJyAmJiB0aGlzLmV4cGFuZGVkKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKiBGaXJzdCB0aW1lIHRoZSBkcm9wZG93biBpcyBleHBhbmRlZCwgbW92ZSB0aGUgaW5wdXQgc3AgaXQgYmVjb21lcyBhIGNoaWxkIG9mIHRoZSBkcm9wZG93biBidXR0b25cbiAgICogdG8gYmV0dGVyIHJlZmxlY3Qgc2VtYW50aWNzIGFuZCBzdHlsaW5nLlxuICAgKi9cbiAgcHJpdmF0ZSBtb3ZlSW5wdXQoKSB7XG4gICAgLy8gV29ya2Fyb3VuZCB0byBleGVjdXRlIGNvZGUgaW4gc2V0VGltZW91dCBkdWUgdG8gaG9va3MgbWFuYWdlbWVudCBldGMuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAvLyBPbmx5IG1vdmUgaWYgcGFyZW50IGRyb3Bkb3duIGlzIGZvdW5kXG4gICAgICBpZiAodGhpcy5kcm9wZG93bkJ1dHRvbikge1xuICAgICAgICB0aGlzLnJlbmRlcmVyMi5hcHBlbmRDaGlsZChcbiAgICAgICAgICB0aGlzLmRyb3Bkb3duQnV0dG9uLnF1ZXJ5U2VsZWN0b3IoJ2J1dHRvbicpLFxuICAgICAgICAgIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LFxuICAgICAgICApXG4gICAgICAgIC8vIEdldCB0aGUgaGVpZ2h0IG9mIHRoZSBwYXJlbnQgYnV0dG9uIHNvIHRoZSBpbnB1dCBjYW4gYmUgZXhwbGljaXRseSBzZXQgdG8gdGhlIHNhbWUgaGVpZ2h0IHNpbmNlIGl0J3MgYWJzb2x1dGVseSBwb3NpdGlvbmVkXG4gICAgICAgIHRoaXMuYnV0dG9uSGVpZ2h0ID1cbiAgICAgICAgICB0aGlzLmRyb3Bkb3duQnV0dG9uLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCB8fCAzMiAvLyBEZWZhdWx0IHRvIDJlbTtcbiAgICAgICAgdGhpcy5pbnB1dE1vdmVkID0gdHJ1ZVxuICAgICAgfVxuICAgIH0sIDApXG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqIFdoZW4gZHJvcGRvd24gaXMgZXhwYW5kZWQsIGZvY3VzIG9uIHRoZSBpbnB1dC4gSWYgYSB2YWx1ZSBpcyBzZWxlY3RlZCwgc2V0IGl0IGluIHRoZSBpbnB1dC5cbiAgICogV2hlbiB0aGUgZHJvcGRvd24gaXMgY29sbGFwc2VkLCBlbXB0eSB0aGUgaW5wdXQgZnJvbSB0ZXh0LlxuICAgKi9cbiAgcHJpdmF0ZSBoYW5kbGVFeHBhbmRlZENoYW5nZSgpIHtcbiAgICB0aGlzLmhvc3RDb21wb25lbnQuZXhwYW5kZWRDaGFuZ2VcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKChzdGF0ZSkgPT4ge1xuICAgICAgICB0aGlzLmV4cGFuZGVkID0gc3RhdGVcblxuICAgICAgICAvLyBDYWxsaW5nIHRoaXMgZnVuY3Rpb24gZnJvbSBvbkluaXQgY2F1c2VkIGlzc3VlcyB3aGVuIERPTSBoYXMgbm90IGZ1bGx5IGJlZW4gaW5pdGlhbGl6ZWQgYmVjYXVzZSBvZlxuICAgICAgICAvLyBkaWZmZXJlbnQgQ1NTIHVzZWQgdG8gaGlkZSAoYnV0IG5vdCByZW1vdmUpIGZyb20gRE9NXG4gICAgICAgIGlmICghdGhpcy5pbnB1dE1vdmVkKSB0aGlzLm1vdmVJbnB1dCgpXG5cbiAgICAgICAgaWYgKHRoaXMuZXhwYW5kZWQpIHtcbiAgICAgICAgICAvLyBXZWlyZCB3b3JrYXJvdW5kIGZvciBzZXR0aW5nIGZvY3VzLiBEaWRuJ3Qgc2V0IGZvY3VzLCBidXQgd3JhcHBpbmcgaW4gc2V0VGltZW91dCBzb2x2ZWQgaXQuXG4gICAgICAgICAgLy8gU2VlIHN1Z2dlc3Rpb24gaGVyZTogaHR0cHM6Ly9naXRodWIuY29tL2lvbmljLXRlYW0vc3RlbmNpbC9pc3N1ZXMvMzc3MiNpc3N1ZWNvbW1lbnQtMTI5MjU5OTYwOVxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5zZXRGb2N1cygpKVxuICAgICAgICAgIC8vIEZvcm1hdCBhbmQgaW50ZXJwb2xhdGUgcmVzdWx0IHNpbmNlIHJldHVybiB0eXBlIGNhbiBiZSBvdGhlciB0aGFuIHN0cmluZyBmcm9tIHRoZSBmb3JtYXR0ZXJcbiAgICAgICAgICBjb25zdCBmb3JtYXR0ZWRWYWx1ZSA9IGAke3RoaXMuZm9ybWF0U2VsZWN0ZWQodGhpcy5ob3N0Q29tcG9uZW50LnN0YXRlKX1gXG4gICAgICAgICAgdGhpcy5zZXRJbnB1dChmb3JtYXR0ZWRWYWx1ZSwgZmFsc2UpXG4gICAgICAgIH0gZWxzZSB0aGlzLnNldElucHV0KCcnLCB0cnVlKVxuICAgICAgfSlcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWwgRm9ybWF0cyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRvIGRpc3BsYXkgaW4gdGhlIGlucHV0LiBJbnRlcnBvbGF0ZSB0aGUgcmV0dXJuZWQgdmFsdWVcbiAgICogc2luY2Ugd2UgZG9uJ3Qga25vdyB0aGUgcmV0dXJuIHR5cGUgb3IgbGFiZWwgdHlwZS5cbiAgICogQHBhcmFtIHZhbHVlIFRoZSBzZWxlY3RlZCB2YWx1ZVxuICAgKiBAcmV0dXJucyBUaGUgZm9ybWF0dGVkIHZhbHVlXG4gICAqL1xuICBwcml2YXRlIGZvcm1hdFNlbGVjdGVkKHZhbHVlOiBPcHRpb25CYXNlPGFueT4pIHtcbiAgICBpZiAodmFsdWU/LmtleSA9PSBudWxsKSByZXR1cm4gJydcbiAgICAvLyBJZiBubyBmb3JtYXR0ZXIgZXhpc3RzLCByZXR1cm4gdGhlIGxhYmVsIG9yIGVtcHR5IHN0cmluZ1xuICAgIGlmICghdGhpcy5zZWxlY3RlZEZvcm1hdHRlcikgcmV0dXJuIHZhbHVlLmxhYmVsID8/ICcnXG4gICAgLy8gSWYgYSBmb3JtYXR0ZXIgZXhpc3RzLCB1c2UgaXRcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZEZvcm1hdHRlcih2YWx1ZSkgPz8gJydcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBpbnB1dCBwcm9ncmFtbWF0aWNhbGx5IGluc3RlYWQgb2YgbmF0aXZlIEhUTUwgaW5wdXQgZXZlbnQuXG4gICAqIEBwYXJhbSBpbnB1dFxuICAgKi9cbiAgcHJpdmF0ZSBzZXRJbnB1dChpbnB1dDogc3RyaW5nLCB0cmlnZ2VyRmlsdGVyOiBib29sZWFuKSB7XG4gICAgdGhpcy5zdGF0ZSA9IGlucHV0XG4gICAgaWYgKHRyaWdnZXJGaWx0ZXIpIHtcbiAgICAgIHRoaXMub25DaGFuZ2UodGhpcy5zdGF0ZSlcbiAgICAgIHRoaXMuaW5wdXRDaGFuZ2UkLm5leHQodGhpcy5zdGF0ZSlcbiAgICB9XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImlucHV0LXdyYXBwZXJcIlxuICAgIFtuZ0NsYXNzXT1cInsgZXhwYW5kZWQ6IGV4cGFuZGVkLCBjb2xsYXBzZWQ6ICFleHBhbmRlZCB9XCJcbiAgICBbbmdTdHlsZV09XCJ7ICdoZWlnaHQucHgnOiBidXR0b25IZWlnaHQgfVwiXG4gICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gID5cbiAgICA8IS0tIElOUFVUIEZJRUxEIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cFwiPlxuICAgICAgPGlucHV0XG4gICAgICAgICNpbnB1dFxuICAgICAgICBbaWRdPVwiaWQgKyAnLWlucHV0J1wiXG4gICAgICAgIGNsYXNzPVwiZ2RzLWZpZWxkXCJcbiAgICAgICAgW2F0dHIudHlwZV09XCJ0eXBlXCJcbiAgICAgICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICAgICAgW2F0dHIucmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICBbYXR0ci5lbWFpbF09XCJlbWFpbFwiXG4gICAgICAgIFttaW5dPVwibWluXCJcbiAgICAgICAgW21heF09XCJtYXhcIlxuICAgICAgICBbc3RlcF09XCJzdGVwXCJcbiAgICAgICAgW2F0dHIubWF4bGVuZ3RoXT1cIm1heGxlbmd0aFwiXG4gICAgICAgIFthdHRyLm1pbmxlbmd0aF09XCJtaW5sZW5ndGhcIlxuICAgICAgICBbcGF0dGVybl09XCJwYXR0ZXJuXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgW2F1dG9jb21wbGV0ZV09XCJhdXRvY29tcGxldGVcIlxuICAgICAgICBbYXV0b2ZvY3VzXT1cImF1dG9mb2N1c1wiXG4gICAgICAgIFtyZWFkT25seV09XCJyZWFkb25seVwiXG4gICAgICAgIFthdHRyLnJvbGVdPVwicm9sZVwiXG4gICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJkZXNjcmlwdGlvblwiXG4gICAgICAgIFt2YWx1ZV09XCJzdGF0ZVwiXG4gICAgICAgIChpbnB1dCk9XCJvbklucHV0KCRldmVudClcIlxuICAgICAgICAoZm9jdXMpPVwib25Gb2N1cygkZXZlbnQpXCJcbiAgICAgICAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxuICAgICAgLz5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
138
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWFoZWFkLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvdi1hbmd1bGFyL2Ryb3Bkb3duL3R5cGVhaGVhZC90eXBlYWhlYWQtaW5wdXQvdHlwZWFoZWFkLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvdi1hbmd1bGFyL2Ryb3Bkb3duL3R5cGVhaGVhZC90eXBlYWhlYWQtaW5wdXQvdHlwZWFoZWFkLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBQ1IsU0FBUyxFQUNULElBQUksR0FDTCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBa0IsTUFBTSxvQkFBb0IsQ0FBQTtBQUNwRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBR2hDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFBO0FBQ2hGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFBOzs7O0FBT2hFLE1BQU0sT0FBTywyQkFDWCxTQUFRLGtCQUFrQjtJQVkxQixJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxhQUFhLENBQUE7SUFDbkQsQ0FBQztJQVdELFlBQ1UsT0FBbUIsRUFDbkIsU0FBb0IsRUFDRCxTQUFvQixFQUdyQyxjQUE4QixFQUM5QixHQUFzQjtRQUVoQyxLQUFLLENBQUMsU0FBUyxFQUFFLGNBQWMsRUFBRSxHQUFHLENB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QUssQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFBO1FBQ3JELGdDQUFnQztRQUNoQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDNUMsQ0FBQztJQUVEOzs7T0FHRztJQUNLLFFBQVEsQ0FBQyxLQUFhLEVBQUUsYUFBc0I7UUFDcEQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUE7UUFDbEIsSUFBSSxhQUFhLEVBQUUsQ0FBQztZQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtZQUN6QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDcEMsQ0FBQztJQUNILENBQUM7K0dBcElVLDJCQUEyQiwwSEErQjVCLGVBQWU7bUdBL0JkLDJCQUEyQixnUUMxQnhDLGltQ0FzQ0E7OzRGRFphLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDRSxzQkFBc0I7OzBCQWlDN0IsSUFBSTs7MEJBQUksUUFBUTs7MEJBQ2hCLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsZUFBZTt5RUExQmhCLGFBQWE7c0JBQXJCLEtBQUs7Z0JBR0csZUFBZTtzQkFBdkIsS0FBSztnQkFHRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBMENOLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgUmVuZGVyZXIyLFxuICBTZWxmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBUUkFOU0xPQ09fU0NPUEUsIFRyYW5zbG9jb1Njb3BlIH0gZnJvbSAnQGpzdmVyc2UvdHJhbnNsb2NvJ1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcydcblxuaW1wb3J0IHsgT3B0aW9uQmFzZSB9IGZyb20gJ0BzZWJncm91cC9ncmVlbi1hbmd1bGFyL3NyYy92LWFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE5nZ3ZJbnB1dENvbXBvbmVudCB9IGZyb20gJ0BzZWJncm91cC9ncmVlbi1hbmd1bGFyL3NyYy92LWFuZ3VsYXIvaW5wdXQnXG5pbXBvcnQgeyBOZ2d2RHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9kcm9wZG93bi5jb21wb25lbnQnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25nZ3YtdHlwZWFoZWFkLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3R5cGVhaGVhZC1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3R5cGVhaGVhZC1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBOZ2d2VHlwZWFoZWFkSW5wdXRDb21wb25lbnRcbiAgZXh0ZW5kcyBOZ2d2SW5wdXRDb21wb25lbnRcbiAgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveVxue1xuICAvKiogUmVmZXJlbmNlIHRvIHRoZSBob3N0IGRyb3Bkb3duICovXG4gIEBJbnB1dCgpIGhvc3RDb21wb25lbnQhOiBOZ2d2RHJvcGRvd25Db21wb25lbnRcblxuICAvKiogRm9ybWF0cyBlYWNoIGl0ZW0gdGhhdCBpcyBkaXNwbGF5ZWQgYXMgYW4gb3B0aW9uLiBPbmx5IGFwcGxpZXMgZm9ybWF0IGlmIHRoZSBvcHRpb24gaWYgaXQgaW1wbGVtZW50IE9wdGlvbiBpbnRlcmZhY2UuICovXG4gIEBJbnB1dCgpIHJlc3VsdEZvcm1hdHRlcj86IChvcHRpb246IE9wdGlvbkJhc2U8YW55PikgPT4gc3RyaW5nXG5cbiAgLyoqIEZvcm1hdHMgdGhlIHNlbGVjdGVkIGl0ZW0gaW4gdGhlIGlucHV0IHdoZW4gZHJvcGRvd24gaXMgb3BlbmVkLiBJZiBubyBmdW5jdGlvbiBpcyBwcm92aWRlZCwgaXQgd2lsbCBkaXNwbGF5IHRoZSB2YWx1ZSBvZiB0aGUgc2VsZWN0ZWQgb2JqZWN0cyBsYWJlbCBwcm9wZXJ0eSAqL1xuICBASW5wdXQoKSBzZWxlY3RlZEZvcm1hdHRlcj86IChzZWxlY3RlZDogT3B0aW9uQmFzZTxhbnk+KSA9PiBzdHJpbmdcblxuICBnZXQgZHJvcGRvd25CdXR0b24oKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmhvc3RDb21wb25lbnQuaW5wdXRSZWY/Lm5hdGl2ZUVsZW1lbnRcbiAgfVxuXG4gIC8qKiBCb29sZWFuIHRvIGluZGljYXRlIHdldGhlciB0aGUgZHJvcGRvd24gaXMgZXhwYW5kZWQgb3Igbm90LCB0byBhcHBseSBhcHByb3ByaWF0ZSBzdHlsaW5nICovXG4gIGV4cGFuZGVkID0gZmFsc2VcblxuICAvKiogVXNlZCB0byBkZXRlcm1pbmUgdGhlIGhlaWdodCBvZiB0aGUgaW5wdXRpbiBodG1sICovXG4gIGJ1dHRvbkhlaWdodD86IG51bWJlclxuXG4gIC8qKiBAaW50ZXJuYWwgVXNlZCB0byBkZXRlcm1pbmUgd2V0aGVyIHRoZSBpbnB1dCBoYXMgYmVlbiBtb3ZlZCBvciBub3QgKi9cbiAgaW5wdXRNb3ZlZCA9IGZhbHNlXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVuZGVyZXIyOiBSZW5kZXJlcjIsXG4gICAgQFNlbGYoKSBAT3B0aW9uYWwoKSBwdWJsaWMgbmdDb250cm9sOiBOZ0NvbnRyb2wsXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KFRSQU5TTE9DT19TQ09QRSlcbiAgICBwcm90ZWN0ZWQgdHJhbnNsb2NvU2NvcGU6IFRyYW5zbG9jb1Njb3BlLFxuICAgIHByb3RlY3RlZCBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHtcbiAgICBzdXBlcihuZ0NvbnRyb2wsIHRyYW5zbG9jb1Njb3BlLCBjZHIpXG4gICAgc3VwZXIubmdPbkluaXQoKVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5hdXRvY29tcGxldGUgPSAnb2ZmJ1xuICAgIHRoaXMuZGVib3VuY2VUaW1lID0gMFxuICAgIHRoaXMuaG9zdENvbXBvbmVudC5zZWxlY3RPblNpbmdsZU9wdGlvbiA9IGZhbHNlXG5cbiAgICB0aGlzLmhhbmRsZUV4cGFuZGVkQ2hhbmdlKClcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICogQWxsb3cgc3BhY2UgdG8gYmUgaW5wdXR0ZWQgYXMgdGV4dFxuICAgKiBAcGFyYW0gZXZlbnQgZmlyZWQgY29udGFpbmluZyB3aGljaCBrZXkgd2FzIHJlbGVhc2VkLlxuICAgKi9cbiAgQEhvc3RMaXN0ZW5lcigna2V5dXAnLCBbJyRldmVudCddKVxuICBvbktleVVwKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgaWYgKGV2ZW50LmNvZGUgPT09ICdTcGFjZScgJiYgdGhpcy5leHBhbmRlZCkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICogRmlyc3QgdGltZSB0aGUgZHJvcGRvd24gaXMgZXhwYW5kZWQsIG1vdmUgdGhlIGlucHV0IHNwIGl0IGJlY29tZXMgYSBjaGlsZCBvZiB0aGUgZHJvcGRvd24gYnV0dG9uXG4gICAqIHRvIGJldHRlciByZWZsZWN0IHNlbWFudGljcyBhbmQgc3R5bGluZy5cbiAgICovXG4gIHByaXZhdGUgbW92ZUlucHV0KCkge1xuICAgIC8vIFdvcmthcm91bmQgdG8gZXhlY3V0ZSBjb2RlIGluIHNldFRpbWVvdXQgZHVlIHRvIGhvb2tzIG1hbmFnZW1lbnQgZXRjLlxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgLy8gT25seSBtb3ZlIGlmIHBhcmVudCBkcm9wZG93biBpcyBmb3VuZFxuICAgICAgaWYgKHRoaXMuZHJvcGRvd25CdXR0b24pIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlcjIuYXBwZW5kQ2hpbGQoXG4gICAgICAgICAgdGhpcy5kcm9wZG93bkJ1dHRvbi5xdWVyeVNlbGVjdG9yKCdidXR0b24nKSxcbiAgICAgICAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCxcbiAgICAgICAgKVxuICAgICAgICB0aGlzLmlucHV0TW92ZWQgPSB0cnVlXG4gICAgICB9XG4gICAgfSwgMClcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICogV2hlbiBkcm9wZG93biBpcyBleHBhbmRlZCwgZm9jdXMgb24gdGhlIGlucHV0LiBJZiBhIHZhbHVlIGlzIHNlbGVjdGVkLCBzZXQgaXQgaW4gdGhlIGlucHV0LlxuICAgKiBXaGVuIHRoZSBkcm9wZG93biBpcyBjb2xsYXBzZWQsIGVtcHR5IHRoZSBpbnB1dCBmcm9tIHRleHQuXG4gICAqL1xuICBwcml2YXRlIGhhbmRsZUV4cGFuZGVkQ2hhbmdlKCkge1xuICAgIHRoaXMuaG9zdENvbXBvbmVudC5leHBhbmRlZENoYW5nZVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUoKHN0YXRlKSA9PiB7XG4gICAgICAgIHRoaXMuZXhwYW5kZWQgPSBzdGF0ZVxuXG4gICAgICAgIC8vIENhbGxpbmcgdGhpcyBmdW5jdGlvbiBmcm9tIG9uSW5pdCBjYXVzZWQgaXNzdWVzIHdoZW4gRE9NIGhhcyBub3QgZnVsbHkgYmVlbiBpbml0aWFsaXplZCBiZWNhdXNlIG9mXG4gICAgICAgIC8vIGRpZmZlcmVudCBDU1MgdXNlZCB0byBoaWRlIChidXQgbm90IHJlbW92ZSkgZnJvbSBET01cbiAgICAgICAgaWYgKCF0aGlzLmlucHV0TW92ZWQpIHRoaXMubW92ZUlucHV0KClcblxuICAgICAgICAvLyBHZXQgdGhlIGhlaWdodCBvZiB0aGUgcGFyZW50IGJ1dHRvbiBzbyB0aGUgaW5wdXQgY2FuIGJlIGV4cGxpY2l0bHkgc2V0IHRvIHRoZSBzYW1lIGhlaWdodCBzaW5jZSBpdCdzIGFic29sdXRlbHkgcG9zaXRpb25lZFxuICAgICAgICB0aGlzLmJ1dHRvbkhlaWdodCA9XG4gICAgICAgICAgdGhpcy5kcm9wZG93bkJ1dHRvbj8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0IHx8IDMyIC8vIERlZmF1bHQgdG8gMmVtO1xuXG4gICAgICAgIGlmICh0aGlzLmV4cGFuZGVkKSB7XG4gICAgICAgICAgLy8gV2VpcmQgd29ya2Fyb3VuZCBmb3Igc2V0dGluZyBmb2N1cy4gRGlkbid0IHNldCBmb2N1cywgYnV0IHdyYXBwaW5nIGluIHNldFRpbWVvdXQgc29sdmVkIGl0LlxuICAgICAgICAgIC8vIFNlZSBzdWdnZXN0aW9uIGhlcmU6IGh0dHBzOi8vZ2l0aHViLmNvbS9pb25pYy10ZWFtL3N0ZW5jaWwvaXNzdWVzLzM3NzIjaXNzdWVjb21tZW50LTEyOTI1OTk2MDlcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2V0Rm9jdXMoKSlcbiAgICAgICAgICAvLyBGb3JtYXQgYW5kIGludGVycG9sYXRlIHJlc3VsdCBzaW5jZSByZXR1cm4gdHlwZSBjYW4gYmUgb3RoZXIgdGhhbiBzdHJpbmcgZnJvbSB0aGUgZm9ybWF0dGVyXG4gICAgICAgICAgY29uc3QgZm9ybWF0dGVkVmFsdWUgPSBgJHt0aGlzLmZvcm1hdFNlbGVjdGVkKHRoaXMuaG9zdENvbXBvbmVudC5zdGF0ZSl9YFxuICAgICAgICAgIHRoaXMuc2V0SW5wdXQoZm9ybWF0dGVkVmFsdWUsIGZhbHNlKVxuICAgICAgICB9IGVsc2UgdGhpcy5zZXRJbnB1dCgnJywgdHJ1ZSlcbiAgICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsIEZvcm1hdHMgdGhlIHNlbGVjdGVkIG9wdGlvbiB0byBkaXNwbGF5IGluIHRoZSBpbnB1dC4gSW50ZXJwb2xhdGUgdGhlIHJldHVybmVkIHZhbHVlXG4gICAqIHNpbmNlIHdlIGRvbid0IGtub3cgdGhlIHJldHVybiB0eXBlIG9yIGxhYmVsIHR5cGUuXG4gICAqIEBwYXJhbSB2YWx1ZSBUaGUgc2VsZWN0ZWQgdmFsdWVcbiAgICogQHJldHVybnMgVGhlIGZvcm1hdHRlZCB2YWx1ZVxuICAgKi9cbiAgcHJpdmF0ZSBmb3JtYXRTZWxlY3RlZCh2YWx1ZTogT3B0aW9uQmFzZTxhbnk+KSB7XG4gICAgaWYgKHZhbHVlPy5rZXkgPT0gbnVsbCkgcmV0dXJuICcnXG4gICAgLy8gSWYgbm8gZm9ybWF0dGVyIGV4aXN0cywgcmV0dXJuIHRoZSBsYWJlbCBvciBlbXB0eSBzdHJpbmdcbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWRGb3JtYXR0ZXIpIHJldHVybiB2YWx1ZS5sYWJlbCA/PyAnJ1xuICAgIC8vIElmIGEgZm9ybWF0dGVyIGV4aXN0cywgdXNlIGl0XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRGb3JtYXR0ZXIodmFsdWUpID8/ICcnXG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgaW5wdXQgcHJvZ3JhbW1hdGljYWxseSBpbnN0ZWFkIG9mIG5hdGl2ZSBIVE1MIGlucHV0IGV2ZW50LlxuICAgKiBAcGFyYW0gaW5wdXRcbiAgICovXG4gIHByaXZhdGUgc2V0SW5wdXQoaW5wdXQ6IHN0cmluZywgdHJpZ2dlckZpbHRlcjogYm9vbGVhbikge1xuICAgIHRoaXMuc3RhdGUgPSBpbnB1dFxuICAgIGlmICh0cmlnZ2VyRmlsdGVyKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMuc3RhdGUpXG4gICAgICB0aGlzLmlucHV0Q2hhbmdlJC5uZXh0KHRoaXMuc3RhdGUpXG4gICAgfVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJpbnB1dC13cmFwcGVyXCJcbiAgICBbbmdDbGFzc109XCJ7IGV4cGFuZGVkOiBleHBhbmRlZCwgY29sbGFwc2VkOiAhZXhwYW5kZWQgfVwiXG4gICAgW25nU3R5bGVdPVwieyAnaGVpZ2h0LnB4JzogYnV0dG9uSGVpZ2h0IH1cIlxuICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICA+XG4gICAgPCEtLSBJTlBVVCBGSUVMRCAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXBcIj5cbiAgICAgIDxpbnB1dFxuICAgICAgICAjaW5wdXRcbiAgICAgICAgW2lkXT1cImlkICsgJy1pbnB1dCdcIlxuICAgICAgICBjbGFzcz1cImdkcy1maWVsZFwiXG4gICAgICAgIFthdHRyLnR5cGVdPVwidHlwZVwiXG4gICAgICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgICAgIFthdHRyLnJlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgICAgW2F0dHIuZW1haWxdPVwiZW1haWxcIlxuICAgICAgICBbbWluXT1cIm1pblwiXG4gICAgICAgIFttYXhdPVwibWF4XCJcbiAgICAgICAgW3N0ZXBdPVwic3RlcFwiXG4gICAgICAgIFthdHRyLm1heGxlbmd0aF09XCJtYXhsZW5ndGhcIlxuICAgICAgICBbYXR0ci5taW5sZW5ndGhdPVwibWlubGVuZ3RoXCJcbiAgICAgICAgW3BhdHRlcm5dPVwicGF0dGVyblwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIFthdXRvY29tcGxldGVdPVwiYXV0b2NvbXBsZXRlXCJcbiAgICAgICAgW2F1dG9mb2N1c109XCJhdXRvZm9jdXNcIlxuICAgICAgICBbcmVhZE9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgICBbYXR0ci5yb2xlXT1cInJvbGVcIlxuICAgICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiZGVzY3JpcHRpb25cIlxuICAgICAgICBbdmFsdWVdPVwic3RhdGVcIlxuICAgICAgICAoaW5wdXQpPVwib25JbnB1dCgkZXZlbnQpXCJcbiAgICAgICAgKGZvY3VzKT1cIm9uRm9jdXMoJGV2ZW50KVwiXG4gICAgICAgIChibHVyKT1cIm9uQmx1cigkZXZlbnQpXCJcbiAgICAgIC8+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|