@porscheinformatik/clr-addons 13.4.0 → 13.4.2
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/datagrid/date-filter/date-filter.component.d.ts +6 -4
- package/esm2020/datagrid/date-filter/date-filter.component.mjs +9 -5
- package/esm2020/history/history.service.mjs +3 -3
- package/fesm2015/clr-addons.mjs +9 -5
- package/fesm2015/clr-addons.mjs.map +1 -1
- package/fesm2020/clr-addons.mjs +9 -5
- package/fesm2020/clr-addons.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1,15 +1,17 @@
|
|
|
1
|
-
import { EventEmitter } from '@angular/core';
|
|
2
|
-
import { ClrCommonStringsService, ClrDatagridFilter, ClrDatagridFilterInterface } from '@clr/angular';
|
|
1
|
+
import { AfterViewInit, EventEmitter } from '@angular/core';
|
|
2
|
+
import { ClrCommonStringsService, ClrDatagridFilter, ClrDatagridFilterInterface, ClrPopoverEventsService } from '@clr/angular';
|
|
3
3
|
import { Observable } from 'rxjs';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export declare class ClrDateFilterComponent<T extends {
|
|
6
6
|
[key: string]: any;
|
|
7
|
-
}> implements ClrDatagridFilterInterface<T
|
|
7
|
+
}> implements ClrDatagridFilterInterface<T>, AfterViewInit {
|
|
8
8
|
private commonStrings;
|
|
9
|
+
private clrPopoverEventsService;
|
|
9
10
|
private nestedProp;
|
|
10
11
|
set property(value: string);
|
|
11
12
|
get property(): string;
|
|
12
|
-
constructor(
|
|
13
|
+
constructor(commonStrings: ClrCommonStringsService, clrPopoverEventsService: ClrPopoverEventsService, filterContainer: ClrDatagridFilter);
|
|
14
|
+
ngAfterViewInit(): void;
|
|
13
15
|
/**
|
|
14
16
|
* Provide a way to pass external placeholder and aria-label to the filter input
|
|
15
17
|
*/
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import { ClrCommonStringsService, ClrDatagridFilter } from '@clr/angular';
|
|
2
|
+
import { ClrCommonStringsService, ClrDatagridFilter, ClrPopoverEventsService, } from '@clr/angular';
|
|
3
3
|
import { Subject } from 'rxjs';
|
|
4
4
|
import { NestedProperty } from './nested-property';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "@clr/angular";
|
|
7
7
|
export class ClrDateFilterComponent {
|
|
8
|
-
constructor(
|
|
8
|
+
constructor(commonStrings, clrPopoverEventsService, filterContainer) {
|
|
9
9
|
this.commonStrings = commonStrings;
|
|
10
|
+
this.clrPopoverEventsService = clrPopoverEventsService;
|
|
10
11
|
this.filterValueChange = new EventEmitter();
|
|
11
12
|
/**
|
|
12
13
|
* Internal values and accessor
|
|
@@ -25,6 +26,9 @@ export class ClrDateFilterComponent {
|
|
|
25
26
|
get property() {
|
|
26
27
|
return this.nestedProp.prop;
|
|
27
28
|
}
|
|
29
|
+
ngAfterViewInit() {
|
|
30
|
+
this.clrPopoverEventsService.outsideClickClose = false;
|
|
31
|
+
}
|
|
28
32
|
get maxPlaceholderValue() {
|
|
29
33
|
return this.maxPlaceholder || this.commonStrings.keys.maxValue;
|
|
30
34
|
}
|
|
@@ -113,12 +117,12 @@ export class ClrDateFilterComponent {
|
|
|
113
117
|
return other === this;
|
|
114
118
|
}
|
|
115
119
|
}
|
|
116
|
-
ClrDateFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: ClrDateFilterComponent, deps: [{ token: i1.
|
|
120
|
+
ClrDateFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: ClrDateFilterComponent, deps: [{ token: i1.ClrCommonStringsService }, { token: i1.ClrPopoverEventsService }, { token: i1.ClrDatagridFilter }], target: i0.ɵɵFactoryTarget.Component });
|
|
117
121
|
ClrDateFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.8", type: ClrDateFilterComponent, selector: "clr-date-filter", inputs: { property: ["clrProperty", "property"], maxPlaceholder: ["clrFilterMaxPlaceholder", "maxPlaceholder"], minPlaceholder: ["clrFilterMinPlaceholder", "minPlaceholder"], value: ["clrFilterValue", "value"] }, outputs: { filterValueChange: "clrFilterValueChange" }, ngImport: i0, template: "<clr-date-container>\n <input\n #input_from\n type=\"date\"\n name=\"from\"\n class=\"datagrid-date-filter-input\"\n [(clrDate)]=\"from\"\n [placeholder]=\"minPlaceholderValue\"\n [attr.aria-label]=\"minPlaceholderValue\"\n />\n</clr-date-container>\n<clr-date-container>\n <input\n type=\"date\"\n name=\"to\"\n class=\"datagrid-date-filter-input\"\n [(clrDate)]=\"to\"\n [placeholder]=\"maxPlaceholderValue\"\n [attr.aria-label]=\"maxPlaceholderValue\"\n />\n</clr-date-container>\n", styles: [""], dependencies: [{ kind: "component", type: i1.ClrDateContainer, selector: "clr-date-container", inputs: ["clrPosition"] }, { kind: "directive", type: i1.ClrDateInput, selector: "[clrDate]", inputs: ["placeholder", "clrDate", "min", "max", "disabled"], outputs: ["clrDateChange"] }, { kind: "directive", type: i1.ClrDateInputValidator, selector: "[clrDate]" }] });
|
|
118
122
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: ClrDateFilterComponent, decorators: [{
|
|
119
123
|
type: Component,
|
|
120
124
|
args: [{ selector: 'clr-date-filter', template: "<clr-date-container>\n <input\n #input_from\n type=\"date\"\n name=\"from\"\n class=\"datagrid-date-filter-input\"\n [(clrDate)]=\"from\"\n [placeholder]=\"minPlaceholderValue\"\n [attr.aria-label]=\"minPlaceholderValue\"\n />\n</clr-date-container>\n<clr-date-container>\n <input\n type=\"date\"\n name=\"to\"\n class=\"datagrid-date-filter-input\"\n [(clrDate)]=\"to\"\n [placeholder]=\"maxPlaceholderValue\"\n [attr.aria-label]=\"maxPlaceholderValue\"\n />\n</clr-date-container>\n" }]
|
|
121
|
-
}], ctorParameters: function () { return [{ type: i1.
|
|
125
|
+
}], ctorParameters: function () { return [{ type: i1.ClrCommonStringsService }, { type: i1.ClrPopoverEventsService }, { type: i1.ClrDatagridFilter }]; }, propDecorators: { property: [{
|
|
122
126
|
type: Input,
|
|
123
127
|
args: ['clrProperty']
|
|
124
128
|
}], maxPlaceholder: [{
|
|
@@ -134,4 +138,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImpor
|
|
|
134
138
|
type: Output,
|
|
135
139
|
args: ['clrFilterValueChange']
|
|
136
140
|
}] } });
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2Nsci1hZGRvbnMvZGF0YWdyaWQvZGF0ZS1maWx0ZXIvZGF0ZS1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2Nsci1hZGRvbnMvZGF0YWdyaWQvZGF0ZS1maWx0ZXIvZGF0ZS1maWx0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQThCLE1BQU0sY0FBYyxDQUFDO0FBQ3RHLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7QUFPbkQsTUFBTSxPQUFPLHNCQUFzQjtJQVdqQyxZQUFZLGVBQWtDLEVBQVUsYUFBc0M7UUFBdEMsa0JBQWEsR0FBYixhQUFhLENBQXlCO1FBc0M5RCxzQkFBaUIsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXZFOztXQUVHO1FBQ0ssVUFBSyxHQUFnQixJQUFJLENBQUM7UUFDMUIsUUFBRyxHQUFnQixJQUFJLENBQUM7UUF3RGhDOztXQUVHO1FBQ0ssYUFBUSxHQUFHLElBQUksT0FBTyxFQUFnQixDQUFDO1FBdEc3QyxlQUFlLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFWRCxJQUEwQixRQUFRLENBQUMsS0FBYTtRQUM5QyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFD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SztRQUNkLE9BQU87WUFDTCxRQUFRLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDekIsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQ2hCLEVBQUUsRUFBRSxJQUFJLENBQUMsR0FBRztTQUNiLENBQUM7SUFDSixDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQXlDO1FBQ3JELE9BQU8sS0FBSyxLQUFLLElBQUksQ0FBQztJQUN4QixDQUFDOzttSEFuSVUsc0JBQXNCO3VHQUF0QixzQkFBc0Isb1VDVm5DLGloQkFxQkE7MkZEWGEsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNFLGlCQUFpQjs4SUFPRCxRQUFRO3NCQUFqQyxLQUFLO3VCQUFDLGFBQWE7Z0JBZWMsY0FBYztzQkFBL0MsS0FBSzt1QkFBQyx5QkFBeUI7Z0JBTUUsY0FBYztzQkFBL0MsS0FBSzt1QkFBQyx5QkFBeUI7Z0JBT3JCLEtBQUs7c0JBRGYsS0FBSzt1QkFBQyxnQkFBZ0I7Z0JBbUJTLGlCQUFpQjtzQkFBaEQsTUFBTTt1QkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2xyQ29tbW9uU3RyaW5nc1NlcnZpY2UsIENsckRhdGFncmlkRmlsdGVyLCBDbHJEYXRhZ3JpZEZpbHRlckludGVyZmFjZSB9IGZyb20gJ0BjbHIvYW5ndWxhcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBOZXN0ZWRQcm9wZXJ0eSB9IGZyb20gJy4vbmVzdGVkLXByb3BlcnR5JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2xyLWRhdGUtZmlsdGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGUtZmlsdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0ZS1maWx0ZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2xyRGF0ZUZpbHRlckNvbXBvbmVudDxUIGV4dGVuZHMgeyBba2V5OiBzdHJpbmddOiBhbnkgfT4gaW1wbGVtZW50cyBDbHJEYXRhZ3JpZEZpbHRlckludGVyZmFjZTxUPiB7XG4gIHByaXZhdGUgbmVzdGVkUHJvcDogTmVzdGVkUHJvcGVydHk8YW55PjtcblxuICBASW5wdXQoJ2NsclByb3BlcnR5Jykgc2V0IHByb3BlcnR5KHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLm5lc3RlZFByb3AgPSBuZXcgTmVzdGVkUHJvcGVydHkodmFsdWUpO1xuICB9XG5cbiAgZ2V0IHByb3BlcnR5KCkge1xuICAgIHJldHVybiB0aGlzLm5lc3RlZFByb3AucHJvcDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKGZpbHRlckNvbnRhaW5lcjogQ2xyRGF0YWdyaWRGaWx0ZXIsIHByaXZhdGUgY29tbW9uU3RyaW5nczogQ2xyQ29tbW9uU3RyaW5nc1NlcnZpY2UpIHtcbiAgICBmaWx0ZXJDb250YWluZXIuc2V0RmlsdGVyKHRoaXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIFByb3ZpZGUgYSB3YXkgdG8gcGFzcyBleHRlcm5hbCBwbGFjZWhvbGRlciBhbmQgYXJpYS1sYWJlbCB0byB0aGUgZmlsdGVyIGlucHV0XG4gICAqL1xuICBASW5wdXQoJ2NsckZpbHRlck1heFBsYWNlaG9sZGVyJykgbWF4UGxhY2Vob2xkZXI6IHN0cmluZztcblxuICBnZXQgbWF4UGxhY2Vob2xkZXJWYWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tYXhQbGFjZWhvbGRlciB8fCB0aGlzLmNvbW1vblN0cmluZ3Mua2V5cy5tYXhWYWx1ZTtcbiAgfVxuXG4gIEBJbnB1dCgnY2xyRmlsdGVyTWluUGxhY2Vob2xkZXInKSBtaW5QbGFjZWhvbGRlcjogc3RyaW5nO1xuXG4gIGdldCBtaW5QbGFjZWhvbGRlclZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLm1pblBsYWNlaG9sZGVyIHx8IHRoaXMuY29tbW9uU3RyaW5ncy5rZXlzLm1pblZhbHVlO1xuICB9XG5cbiAgQElucHV0KCdjbHJGaWx0ZXJWYWx1ZScpXG4gIHB1YmxpYyBzZXQgdmFsdWUodmFsdWVzOiBbRGF0ZSwgRGF0ZV0pIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZXMpKSB7XG4gICAgICBpZiAodmFsdWVzICYmICh2YWx1ZXNbMF0gIT09IHRoaXMuX2Zyb20gfHwgdmFsdWVzWzFdICE9PSB0aGlzLl90bykpIHtcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZXNbMF0gPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgdGhpcy5fZnJvbSA9IHZhbHVlc1swXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLl9mcm9tID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIHZhbHVlc1sxXSA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICB0aGlzLl90byA9IHZhbHVlc1sxXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLl90byA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fY2hhbmdlcy5uZXh0KHZhbHVlcyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQE91dHB1dCgnY2xyRmlsdGVyVmFsdWVDaGFuZ2UnKSBmaWx0ZXJWYWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAvKipcbiAgICogSW50ZXJuYWwgdmFsdWVzIGFuZCBhY2Nlc3NvclxuICAgKi9cbiAgcHJpdmF0ZSBfZnJvbTogRGF0ZSB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF90bzogRGF0ZSB8IG51bGwgPSBudWxsO1xuXG4gIHB1YmxpYyBnZXQgZnJvbSgpIHtcbiAgICByZXR1cm4gdGhpcy5fZnJvbTtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgZnJvbShmcm9tOiBEYXRlKSB7XG4gICAgaWYgKHR5cGVvZiBmcm9tID09PSAnb2JqZWN0JyAmJiBmcm9tICE9PSB0aGlzLl9mcm9tKSB7XG4gICAgICBpZiAoZnJvbSAmJiB0eXBlb2YgZnJvbS5zZXRIb3VycyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBmcm9tLnNldEhvdXJzKDAsIDAsIDAsIDApOyAvLyBzZXQgZnJvbS1kYXRlIHRvIHN0YXJ0IG9mIGRheVxuICAgICAgfVxuICAgICAgdGhpcy5fZnJvbSA9IGZyb207XG4gICAgICB0aGlzLl9jaGFuZ2VzLm5leHQoW3RoaXMuX2Zyb20sIHRoaXMuX3RvXSk7XG4gICAgICB0aGlzLmZpbHRlclZhbHVlQ2hhbmdlLmVtaXQoW3RoaXMuX2Zyb20sIHRoaXMuX3RvXSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCB0bygpIHtcbiAgICByZXR1cm4gdGhpcy5fdG87XG4gIH1cblxuICBwdWJsaWMgc2V0IHRvKHRvOiBEYXRlKSB7XG4gICAgaWYgKHR5cGVvZiB0byA9PT0gJ29iamVjdCcgJiYgdG8gIT09IHRoaXMuX3RvKSB7XG4gICAgICBpZiAodG8gJiYgdHlwZW9mIHRvLnNldEhvdXJzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHRvLnNldEhvdXJzKDIzLCA1OSwgNTksIDk5OSk7IC8vIHNldCB0by1kYXRlIHRvIGVuZCBvZiBkYXlcbiAgICAgIH1cbiAgICAgIHRoaXMuX3RvID0gdG87XG4gICAgICB0aGlzLl9jaGFuZ2VzLm5leHQoW3RoaXMuX2Zyb20sIHRoaXMuX3RvXSk7XG4gICAgICB0aGlzLmZpbHRlclZhbHVlQ2hhbmdlLmVtaXQoW3RoaXMuX2Zyb20sIHRoaXMuX3RvXSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgZmlsdGVyIGlzIGN1cnJlbnRseSBhY3RpdmUsIChhdCBsZWFzdCBvbmUgaW5wdXQgaXMgc2V0KVxuICAgKi9cbiAgcHVibGljIGlzQWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9mcm9tICE9PSBudWxsIHx8IHRoaXMuX3RvICE9PSBudWxsO1xuICB9XG5cbiAgYWNjZXB0cyhpdGVtOiBUKTogYm9vbGVhbiB7XG4gICAgbGV0IHByb3BWYWx1ZSA9IHRoaXMubmVzdGVkUHJvcCA/IHRoaXMubmVzdGVkUHJvcC5nZXRQcm9wVmFsdWUoaXRlbSkgOiBpdGVtO1xuICAgIGlmIChwcm9wVmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIHByb3BWYWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHByb3BWYWx1ZSA9IG5ldyBEYXRlKHByb3BWYWx1ZSk7XG4gICAgfVxuICAgIGlmICh0aGlzLl9mcm9tICE9PSBudWxsICYmICghKHByb3BWYWx1ZSBpbnN0YW5jZW9mIERhdGUpIHx8IHByb3BWYWx1ZS5nZXRUaW1lKCkgPCB0aGlzLl9mcm9tLmdldFRpbWUoKSkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgaWYgKHRoaXMuX3RvICE9PSBudWxsICYmICghKHByb3BWYWx1ZSBpbnN0YW5jZW9mIERhdGUpIHx8IHByb3BWYWx1ZS5nZXRUaW1lKCkgPiB0aGlzLl90by5nZXRUaW1lKCkpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBPYnNlcnZhYmxlIHJlcXVpcmVkIGFzIHBhcnQgb2YgdGhlIEZpbHRlciBpbnRlcmZhY2VcbiAgICovXG4gIHByaXZhdGUgX2NoYW5nZXMgPSBuZXcgU3ViamVjdDxbRGF0ZSwgRGF0ZV0+KCk7XG5cbiAgLy8gV2UgZG8gbm90IHdhbnQgdG8gZXhwb3NlIHRoZSBTdWJqZWN0IGl0c2VsZiwgYnV0IHRoZSBPYnNlcnZhYmxlIHdoaWNoIGlzIHJlYWQtb25seVxuICBwdWJsaWMgZ2V0IGNoYW5nZXMoKTogT2JzZXJ2YWJsZTxbRGF0ZSwgRGF0ZV0+IHtcbiAgICByZXR1cm4gdGhpcy5fY2hhbmdlcy5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc3RhdGUoKTogYW55IHtcbiAgICByZXR1cm4ge1xuICAgICAgcHJvcGVydHk6IHRoaXMubmVzdGVkUHJvcCxcbiAgICAgIGZyb206IHRoaXMuX2Zyb20sXG4gICAgICB0bzogdGhpcy5fdG8sXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBlcXVhbHMob3RoZXI6IENsckRhdGFncmlkRmlsdGVySW50ZXJmYWNlPFQsIGFueT4pOiBib29sZWFuIHtcbiAgICByZXR1cm4gb3RoZXIgPT09IHRoaXM7XG4gIH1cbn1cbiIsIjxjbHItZGF0ZS1jb250YWluZXI+XG4gIDxpbnB1dFxuICAgICNpbnB1dF9mcm9tXG4gICAgdHlwZT1cImRhdGVcIlxuICAgIG5hbWU9XCJmcm9tXCJcbiAgICBjbGFzcz1cImRhdGFncmlkLWRhdGUtZmlsdGVyLWlucHV0XCJcbiAgICBbKGNsckRhdGUpXT1cImZyb21cIlxuICAgIFtwbGFjZWhvbGRlcl09XCJtaW5QbGFjZWhvbGRlclZhbHVlXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIm1pblBsYWNlaG9sZGVyVmFsdWVcIlxuICAvPlxuPC9jbHItZGF0ZS1jb250YWluZXI+XG48Y2xyLWRhdGUtY29udGFpbmVyPlxuICA8aW5wdXRcbiAgICB0eXBlPVwiZGF0ZVwiXG4gICAgbmFtZT1cInRvXCJcbiAgICBjbGFzcz1cImRhdGFncmlkLWRhdGUtZmlsdGVyLWlucHV0XCJcbiAgICBbKGNsckRhdGUpXT1cInRvXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwibWF4UGxhY2Vob2xkZXJWYWx1ZVwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbF09XCJtYXhQbGFjZWhvbGRlclZhbHVlXCJcbiAgLz5cbjwvY2xyLWRhdGUtY29udGFpbmVyPlxuIl19
|
|
141
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2Nsci1hZGRvbnMvZGF0YWdyaWQvZGF0ZS1maWx0ZXIvZGF0ZS1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2Nsci1hZGRvbnMvZGF0YWdyaWQvZGF0ZS1maWx0ZXIvZGF0ZS1maWx0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEYsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFFakIsdUJBQXVCLEdBQ3hCLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7QUFPbkQsTUFBTSxPQUFPLHNCQUFzQjtJQWFqQyxZQUNVLGFBQXNDLEVBQ3RDLHVCQUFnRCxFQUN4RCxlQUFrQztRQUYxQixrQkFBYSxHQUFiLGFBQWEsQ0FBeUI7UUFDdEMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF5QjtRQTRDMUIsc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUV2RTs7V0FFRztRQUNLLFVBQUssR0FBZ0IsSUFBSSxDQUFDO1FBQzFCLFFBQUcsR0FBZ0IsSUFBSSxDQUFDO1FBd0RoQzs7V0FFRztRQUNLLGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBZ0IsQ0FBQztRQTFHN0MsZUFBZSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBZEQsSUFBMEIsUUFBUSxDQUFDLEtBQWE7UUFDOUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5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QUNkO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBT0QscUZBQXFGO0lBQ3JGLElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEMsQ0FBQztJQUVELElBQVcsS0FBSztRQUNkLE9BQU87WUFDTCxRQUFRLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDekIsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQ2hCLEVBQUUsRUFBRSxJQUFJLENBQUMsR0FBRztTQUNiLENBQUM7SUFDSixDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQXlDO1FBQ3JELE9BQU8sS0FBSyxLQUFLLElBQUksQ0FBQztJQUN4QixDQUFDOzttSEE3SVUsc0JBQXNCO3VHQUF0QixzQkFBc0Isb1VDZm5DLGloQkFxQkE7MkZETmEsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNFLGlCQUFpQjtvTEFTRCxRQUFRO3NCQUFqQyxLQUFLO3VCQUFDLGFBQWE7Z0JBdUJjLGNBQWM7c0JBQS9DLEtBQUs7dUJBQUMseUJBQXlCO2dCQU1FLGNBQWM7c0JBQS9DLEtBQUs7dUJBQUMseUJBQXlCO2dCQU9yQixLQUFLO3NCQURmLEtBQUs7dUJBQUMsZ0JBQWdCO2dCQW1CUyxpQkFBaUI7c0JBQWhELE1BQU07dUJBQUMsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIENsckNvbW1vblN0cmluZ3NTZXJ2aWNlLFxuICBDbHJEYXRhZ3JpZEZpbHRlcixcbiAgQ2xyRGF0YWdyaWRGaWx0ZXJJbnRlcmZhY2UsXG4gIENsclBvcG92ZXJFdmVudHNTZXJ2aWNlLFxufSBmcm9tICdAY2xyL2FuZ3VsYXInO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTmVzdGVkUHJvcGVydHkgfSBmcm9tICcuL25lc3RlZC1wcm9wZXJ0eSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Nsci1kYXRlLWZpbHRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRlLWZpbHRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2RhdGUtZmlsdGVyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIENsckRhdGVGaWx0ZXJDb21wb25lbnQ8VCBleHRlbmRzIHsgW2tleTogc3RyaW5nXTogYW55IH0+XG4gIGltcGxlbWVudHMgQ2xyRGF0YWdyaWRGaWx0ZXJJbnRlcmZhY2U8VD4sIEFmdGVyVmlld0luaXRcbntcbiAgcHJpdmF0ZSBuZXN0ZWRQcm9wOiBOZXN0ZWRQcm9wZXJ0eTxhbnk+O1xuXG4gIEBJbnB1dCgnY2xyUHJvcGVydHknKSBzZXQgcHJvcGVydHkodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMubmVzdGVkUHJvcCA9IG5ldyBOZXN0ZWRQcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cblxuICBnZXQgcHJvcGVydHkoKSB7XG4gICAgcmV0dXJuIHRoaXMubmVzdGVkUHJvcC5wcm9wO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjb21tb25TdHJpbmdzOiBDbHJDb21tb25TdHJpbmdzU2VydmljZSxcbiAgICBwcml2YXRlIGNsclBvcG92ZXJFdmVudHNTZXJ2aWNlOiBDbHJQb3BvdmVyRXZlbnRzU2VydmljZSxcbiAgICBmaWx0ZXJDb250YWluZXI6IENsckRhdGFncmlkRmlsdGVyXG4gICkge1xuICAgIGZpbHRlckNvbnRhaW5lci5zZXRGaWx0ZXIodGhpcyk7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2xyUG9wb3ZlckV2ZW50c1NlcnZpY2Uub3V0c2lkZUNsaWNrQ2xvc2UgPSBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcm92aWRlIGEgd2F5IHRvIHBhc3MgZXh0ZXJuYWwgcGxhY2Vob2xkZXIgYW5kIGFyaWEtbGFiZWwgdG8gdGhlIGZpbHRlciBpbnB1dFxuICAgKi9cbiAgQElucHV0KCdjbHJGaWx0ZXJNYXhQbGFjZWhvbGRlcicpIG1heFBsYWNlaG9sZGVyOiBzdHJpbmc7XG5cbiAgZ2V0IG1heFBsYWNlaG9sZGVyVmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubWF4UGxhY2Vob2xkZXIgfHwgdGhpcy5jb21tb25TdHJpbmdzLmtleXMubWF4VmFsdWU7XG4gIH1cblxuICBASW5wdXQoJ2NsckZpbHRlck1pblBsYWNlaG9sZGVyJykgbWluUGxhY2Vob2xkZXI6IHN0cmluZztcblxuICBnZXQgbWluUGxhY2Vob2xkZXJWYWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5taW5QbGFjZWhvbGRlciB8fCB0aGlzLmNvbW1vblN0cmluZ3Mua2V5cy5taW5WYWx1ZTtcbiAgfVxuXG4gIEBJbnB1dCgnY2xyRmlsdGVyVmFsdWUnKVxuICBwdWJsaWMgc2V0IHZhbHVlKHZhbHVlczogW0RhdGUsIERhdGVdKSB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWVzKSkge1xuICAgICAgaWYgKHZhbHVlcyAmJiAodmFsdWVzWzBdICE9PSB0aGlzLl9mcm9tIHx8IHZhbHVlc1sxXSAhPT0gdGhpcy5fdG8pKSB7XG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWVzWzBdID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgIHRoaXMuX2Zyb20gPSB2YWx1ZXNbMF07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5fZnJvbSA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZXNbMV0gPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgdGhpcy5fdG8gPSB2YWx1ZXNbMV07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5fdG8gPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2NoYW5nZXMubmV4dCh2YWx1ZXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBPdXRwdXQoJ2NsckZpbHRlclZhbHVlQ2hhbmdlJykgZmlsdGVyVmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLyoqXG4gICAqIEludGVybmFsIHZhbHVlcyBhbmQgYWNjZXNzb3JcbiAgICovXG4gIHByaXZhdGUgX2Zyb206IERhdGUgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfdG86IERhdGUgfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgZ2V0IGZyb20oKSB7XG4gICAgcmV0dXJuIHRoaXMuX2Zyb207XG4gIH1cblxuICBwdWJsaWMgc2V0IGZyb20oZnJvbTogRGF0ZSkge1xuICAgIGlmICh0eXBlb2YgZnJvbSA9PT0gJ29iamVjdCcgJiYgZnJvbSAhPT0gdGhpcy5fZnJvbSkge1xuICAgICAgaWYgKGZyb20gJiYgdHlwZW9mIGZyb20uc2V0SG91cnMgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgZnJvbS5zZXRIb3VycygwLCAwLCAwLCAwKTsgLy8gc2V0IGZyb20tZGF0ZSB0byBzdGFydCBvZiBkYXlcbiAgICAgIH1cbiAgICAgIHRoaXMuX2Zyb20gPSBmcm9tO1xuICAgICAgdGhpcy5fY2hhbmdlcy5uZXh0KFt0aGlzLl9mcm9tLCB0aGlzLl90b10pO1xuICAgICAgdGhpcy5maWx0ZXJWYWx1ZUNoYW5nZS5lbWl0KFt0aGlzLl9mcm9tLCB0aGlzLl90b10pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgdG8oKSB7XG4gICAgcmV0dXJuIHRoaXMuX3RvO1xuICB9XG5cbiAgcHVibGljIHNldCB0byh0bzogRGF0ZSkge1xuICAgIGlmICh0eXBlb2YgdG8gPT09ICdvYmplY3QnICYmIHRvICE9PSB0aGlzLl90bykge1xuICAgICAgaWYgKHRvICYmIHR5cGVvZiB0by5zZXRIb3VycyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0by5zZXRIb3VycygyMywgNTksIDU5LCA5OTkpOyAvLyBzZXQgdG8tZGF0ZSB0byBlbmQgb2YgZGF5XG4gICAgICB9XG4gICAgICB0aGlzLl90byA9IHRvO1xuICAgICAgdGhpcy5fY2hhbmdlcy5uZXh0KFt0aGlzLl9mcm9tLCB0aGlzLl90b10pO1xuICAgICAgdGhpcy5maWx0ZXJWYWx1ZUNoYW5nZS5lbWl0KFt0aGlzLl9mcm9tLCB0aGlzLl90b10pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGZpbHRlciBpcyBjdXJyZW50bHkgYWN0aXZlLCAoYXQgbGVhc3Qgb25lIGlucHV0IGlzIHNldClcbiAgICovXG4gIHB1YmxpYyBpc0FjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZnJvbSAhPT0gbnVsbCB8fCB0aGlzLl90byAhPT0gbnVsbDtcbiAgfVxuXG4gIGFjY2VwdHMoaXRlbTogVCk6IGJvb2xlYW4ge1xuICAgIGxldCBwcm9wVmFsdWUgPSB0aGlzLm5lc3RlZFByb3AgPyB0aGlzLm5lc3RlZFByb3AuZ2V0UHJvcFZhbHVlKGl0ZW0pIDogaXRlbTtcbiAgICBpZiAocHJvcFZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBwcm9wVmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBwcm9wVmFsdWUgPSBuZXcgRGF0ZShwcm9wVmFsdWUpO1xuICAgIH1cbiAgICBpZiAodGhpcy5fZnJvbSAhPT0gbnVsbCAmJiAoIShwcm9wVmFsdWUgaW5zdGFuY2VvZiBEYXRlKSB8fCBwcm9wVmFsdWUuZ2V0VGltZSgpIDwgdGhpcy5fZnJvbS5nZXRUaW1lKCkpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGlmICh0aGlzLl90byAhPT0gbnVsbCAmJiAoIShwcm9wVmFsdWUgaW5zdGFuY2VvZiBEYXRlKSB8fCBwcm9wVmFsdWUuZ2V0VGltZSgpID4gdGhpcy5fdG8uZ2V0VGltZSgpKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgT2JzZXJ2YWJsZSByZXF1aXJlZCBhcyBwYXJ0IG9mIHRoZSBGaWx0ZXIgaW50ZXJmYWNlXG4gICAqL1xuICBwcml2YXRlIF9jaGFuZ2VzID0gbmV3IFN1YmplY3Q8W0RhdGUsIERhdGVdPigpO1xuXG4gIC8vIFdlIGRvIG5vdCB3YW50IHRvIGV4cG9zZSB0aGUgU3ViamVjdCBpdHNlbGYsIGJ1dCB0aGUgT2JzZXJ2YWJsZSB3aGljaCBpcyByZWFkLW9ubHlcbiAgcHVibGljIGdldCBjaGFuZ2VzKCk6IE9ic2VydmFibGU8W0RhdGUsIERhdGVdPiB7XG4gICAgcmV0dXJuIHRoaXMuX2NoYW5nZXMuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHN0YXRlKCk6IGFueSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHByb3BlcnR5OiB0aGlzLm5lc3RlZFByb3AsXG4gICAgICBmcm9tOiB0aGlzLl9mcm9tLFxuICAgICAgdG86IHRoaXMuX3RvLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgZXF1YWxzKG90aGVyOiBDbHJEYXRhZ3JpZEZpbHRlckludGVyZmFjZTxULCBhbnk+KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIG90aGVyID09PSB0aGlzO1xuICB9XG59XG4iLCI8Y2xyLWRhdGUtY29udGFpbmVyPlxuICA8aW5wdXRcbiAgICAjaW5wdXRfZnJvbVxuICAgIHR5cGU9XCJkYXRlXCJcbiAgICBuYW1lPVwiZnJvbVwiXG4gICAgY2xhc3M9XCJkYXRhZ3JpZC1kYXRlLWZpbHRlci1pbnB1dFwiXG4gICAgWyhjbHJEYXRlKV09XCJmcm9tXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwibWluUGxhY2Vob2xkZXJWYWx1ZVwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbF09XCJtaW5QbGFjZWhvbGRlclZhbHVlXCJcbiAgLz5cbjwvY2xyLWRhdGUtY29udGFpbmVyPlxuPGNsci1kYXRlLWNvbnRhaW5lcj5cbiAgPGlucHV0XG4gICAgdHlwZT1cImRhdGVcIlxuICAgIG5hbWU9XCJ0b1wiXG4gICAgY2xhc3M9XCJkYXRhZ3JpZC1kYXRlLWZpbHRlci1pbnB1dFwiXG4gICAgWyhjbHJEYXRlKV09XCJ0b1wiXG4gICAgW3BsYWNlaG9sZGVyXT1cIm1heFBsYWNlaG9sZGVyVmFsdWVcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwibWF4UGxhY2Vob2xkZXJWYWx1ZVwiXG4gIC8+XG48L2Nsci1kYXRlLWNvbnRhaW5lcj5cbiJdfQ==
|
|
@@ -112,9 +112,9 @@ export class ClrHistoryService {
|
|
|
112
112
|
}
|
|
113
113
|
checkEqualContext(entry, toCompare) {
|
|
114
114
|
let equal = false;
|
|
115
|
-
if (entry && toCompare) {
|
|
115
|
+
if (entry && entry.context && toCompare) {
|
|
116
116
|
Object.keys(toCompare).forEach(key => {
|
|
117
|
-
equal = entry.context[key] === toCompare[key];
|
|
117
|
+
equal = key in entry.context && entry.context[key] === toCompare[key];
|
|
118
118
|
});
|
|
119
119
|
}
|
|
120
120
|
return equal;
|
|
@@ -207,4 +207,4 @@ ClrHistoryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", ve
|
|
|
207
207
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: ClrHistoryService, decorators: [{
|
|
208
208
|
type: Injectable
|
|
209
209
|
}], ctorParameters: function () { return []; } });
|
|
210
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlzdG9yeS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2Nsci1hZGRvbnMvaGlzdG9yeS9oaXN0b3J5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFHdkMsTUFBTSxPQUFPLGlCQUFpQjtJQVc1QjtRQVZPLG9CQUFlLEdBQUcsSUFBSSxlQUFlLENBQTRCLEVBQUUsQ0FBQyxDQUFDO1FBQzVFLGVBQVUsR0FBRyxhQUFhLENBQUM7UUFDM0IsdUJBQWtCLEdBQUcsc0JBQXNCLENBQUM7UUFHNUMsMEJBQTBCO1FBQ2xCLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFDdkIsMENBQTBDO1FBQ2xDLGVBQVUsR0FBRyxHQUFHLENBQUM7UUFHdkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLEdBQUcsR0FBRyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ2pGLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGVBQWUsQ0FBQyxZQUE2QixFQUFFLE1BQWU7UUFDNUQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3JDLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFM0UsMkVBQTJFO1FBQzNFLElBQUksWUFBWSxDQUFDLEdBQUcsSUFBSSxZQUFZLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxF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IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAyMSBQb3JzY2hlIEluZm9ybWF0aWsuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENsckhpc3RvcnlNb2RlbCwgQ2xySGlzdG9yeVNldHRpbmdzTW9kZWwgfSBmcm9tICcuL2hpc3RvcnktbW9kZWwuaW50ZXJmYWNlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ2xySGlzdG9yeVNlcnZpY2Uge1xuICBwdWJsaWMgY29va2llU2V0dGluZ3MkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDbHJIaXN0b3J5U2V0dGluZ3NNb2RlbFtdPihbXSk7XG4gIGNvb2tpZU5hbWUgPSAnY2xyLmhpc3RvcnknO1xuICBjb29raWVOYW1lU2V0dGluZ3MgPSAnY2xyLmhpc3Rvcnkuc2V0dGluZ3MnO1xuICBwcml2YXRlIGV4cGlyeURhdGU6IERhdGU7XG5cbiAgLy8gbWF4bWltdW0gaGlzdG9yeSBsZW5ndGhcbiAgcHJpdmF0ZSBtYXhTaXplID0gMTAyNDtcbiAgLy8gbWF4aW11bSB1cmwgbGVuZ3RoIGZvciB1c2FnZSBpbiBoaXN0b3J5XG4gIHByaXZhdGUgbWF4VXJsU2l6ZSA9IDI1NjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmV4cGlyeURhdGUgPSBuZXcgRGF0ZSgpO1xuICAgIHRoaXMuZXhwaXJ5RGF0ZS5zZXRUaW1lKHRoaXMuZXhwaXJ5RGF0ZS5nZXRUaW1lKCkgKyAzNjUgKiAyNCAqIDYwICogNjAgKiAxMDAwKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBuZXcgaGlzdG9yeSBlbnRyeVxuICAgKiBAcGFyYW0gaGlzdG9yeUVudHJ5IFRoZSBlbnRyeSB0byBiZSBhZGRlZFxuICAgKiBAcGFyYW0gZG9tYWluIFRoZSBvcHRpb25hbCBkb21haW4gcGFyYW0gd2hlcmUgdGhlIGNvb2tpZSBpcyBzdG9yZWRcbiAgICogQHJldHVybnMgdHJ1ZSB3aGVuIGVudHJ5IGFkZGVkLCBvdGhlcndpc2UgZmFsc2UgaXMgcmV0dXJuZWRcbiAgICovXG4gIGFkZEhpc3RvcnlFbnRyeShoaXN0b3J5RW50cnk6IENsckhpc3RvcnlNb2RlbCwgZG9tYWluPzogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgdGhpcy5yZW1vdmVGcm9tSGlzdG9yeShoaXN0b3J5RW50cnkpO1xuICAgIGxldCBoaXN0b3J5ID0gdGhpcy5nZXRIaXN0b3J5KGhpc3RvcnlFbnRyeS51c2VybmFtZSwgaGlzdG9yeUVudHJ5LmNvbnRleHQpO1xuXG4gICAgLyogb25seSBhZGQgdG8gaGlzdG9yeSBpbiBjYXNlIHVybCBkb2VzIG5vdCBleGNlZWQgbWF4VXJsU2l6ZSBjaGFyYWN0ZXJzICovXG4gICAgaWYgKGhpc3RvcnlFbnRyeS51cmwgJiYgaGlzdG9yeUVudHJ5LnVybC5sZW5ndGggPCB0aGlzLm1heFVybFNpemUpIHtcbiAgICAgIC8qIGFkZCBpdCBhcyBsYXN0IGVsZW1lbnQgKi9cbiAgICAgIGhpc3RvcnkucHVzaChoaXN0b3J5RW50cnkpO1xuICAgICAgLyogc3VwcG9ydCBhIG1heGltdW0gb2YgNCBwYWdlcyBpbiBoaXN0b3J5ICovXG4gICAgICBoaXN0b3J5ID0gaGlzdG9yeS5zbGljZSgtNCk7XG4gICAgICB0aGlzLnNldEhpc3RvcnkoaGlzdG9yeSwgZG9tYWluKTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBnZXRIaXN0b3J5RGlzcGxheSh1c2VybmFtZTogc3RyaW5nLCBjb250ZXh0OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9KTogQ2xySGlzdG9yeU1vZGVsW10ge1xuICAgIGNvbnN0IGhpc3RvcnkgPSB0aGlzLmdldEhpc3RvcnkodXNlcm5hbWUsIGNvbnRleHQpO1xuICAgIGlmIChoaXN0b3J5Lmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbnN0IGN1cnJlbnRQYWdlVGl0bGUgPSBoaXN0b3J5W2hpc3RvcnkubGVuZ3RoIC0gMV0udGl0bGU7XG4gICAgICBjb25zdCB0b0Rpc3BsYXk6IENsckhpc3RvcnlNb2RlbFtdID0gW107XG4gICAgICBjb25zdCBhbHJlYWR5RGlzcGxheTogc3RyaW5nW10gPSBbXTtcblxuICAgICAgZm9yIChsZXQgaSA9IGhpc3RvcnkubGVuZ3RoIC0gMTsgaSA+PSAwICYmIGFscmVhZHlEaXNwbGF5Lmxlbmd0aCA8IDQ7IGktLSkge1xuICAgICAgICBpZiAoIWFscmVhZHlEaXNwbGF5LmluY2x1ZGVzKGhpc3RvcnlbaV0udGl0bGUpICYmIGhpc3RvcnlbaV0udGl0bGUgIT09IGN1cnJlbnRQYWdlVGl0bGUpIHtcbiAgICAgICAgICBhbHJlYWR5RGlzcGxheS5wdXNoKGhpc3RvcnlbaV0udGl0bGUpO1xuICAgICAgICAgIHRvRGlzcGxheS5wdXNoKGhpc3RvcnlbaV0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0b0Rpc3BsYXkucmV2ZXJzZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gaGlzdG9yeTtcbiAgICB9XG4gIH1cblxuICBnZXRIaXN0b3J5KHVzZXJuYW1lOiBzdHJpbmcsIGNvbnRleHQ6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0pOiBDbHJIaXN0b3J5TW9kZWxbXSB7XG4gICAgY29uc3QgaGlzdG9yeTogQ2xySGlzdG9yeU1vZGVsW10gPSB0aGlzLmdldENvb2tpZUJ5TmFtZSh0aGlzLmNvb2tpZU5hbWUpO1xuICAgIGlmICghaGlzdG9yeSkge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbiAgICByZXR1cm4gaGlzdG9yeS5maWx0ZXIoZWxlbWVudCA9PiB0aGlzLmNoZWNrRXF1YWxDb250ZXh0KGVsZW1lbnQsIGNvbnRleHQpICYmIGVsZW1lbnQudXNlcm5hbWUgPT09IHVzZXJuYW1lKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgaGlzdG9yeVxuICAgKiBAcGFyYW0gZW50cmllc1xuICAgKiBAcGFyYW0gZG9tYWluXG4gICAqL1xuICBwcml2YXRlIHNldEhpc3RvcnkoZW50cmllczogQ2xySGlzdG9yeU1vZGVsW10sIGRvbWFpbj86IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICghZW50cmllcyB8fCBlbnRyaWVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgLy8gY2xlYXIgYWxsIGVudHJpZXNcbiAgICAgIHRoaXMuc2V0Q29va2llKHRoaXMuY29va2llTmFtZSwgdGhpcy5lbmNvZGUoW10pLCBkb21haW4pO1xuICAgIH0gZWxzZSB7XG4gICAgICBlbnRyaWVzID0gdGhpcy5yZWR1Y2VTaXplKGVudHJpZXMpO1xuICAgICAgLy8gZW5jb2RlIHRpdGxlICYgcGFnZW5hbWUgdG8gYmUgY29va2llIHNhdmluZyBzYXZlXG4gICAgICBpZiAoZW50cmllcyAmJiBlbnRyaWVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKGVudHJ5ID0+IHtcbiAgICAgICAgICBlbnRyeS50aXRsZSA9IGVuY29kZVVSSShlbnRyeS50aXRsZSk7XG4gICAgICAgICAgZW50cnkucGFnZU5hbWUgPSBlbmNvZGVVUkkoZW50cnkucGFnZU5hbWUpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIHRoaXMuc2V0Q29va2llKHRoaXMuY29va2llTmFtZSwgdGhpcy5lbmNvZGUoZW50cmllcyksIGRvbWFpbik7XG4gICAgfVxuICB9XG5cbiAgcmVkdWNlU2l6ZShlbnRyaWVzOiBDbHJIaXN0b3J5TW9kZWxbXSk6IENsckhpc3RvcnlNb2RlbFtdIHtcbiAgICBpZiAoSlNPTi5zdHJpbmdpZnkoZW50cmllcykubGVuZ3RoID4gdGhpcy5tYXhTaXplKSB7XG4gICAgICBjb25zdCByZWR1Y2VkOiBDbHJIaXN0b3J5TW9kZWxbXSA9IFtdO1xuICAgICAgZG8ge1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGVudHJpZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICByZWR1Y2VkLnB1c2goZW50cmllc1tpXSk7XG4gICAgICAgIH1cbiAgICAgIH0gd2hpbGUgKEpTT04uc3RyaW5naWZ5KHJlZHVjZWQpLmxlbmd0aCA8IHRoaXMubWF4U2l6ZSk7XG4gICAgICByZXR1cm4gcmVkdWNlZDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGVudHJpZXM7XG4gICAgfVxuICB9XG5cbiAgcmVzZXRIaXN0b3J5KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0SGlzdG9yeShudWxsKTtcbiAgfVxuXG4gIHJlbW92ZUZyb21IaXN0b3J5KGVudHJ5OiBDbHJIaXN0b3J5TW9kZWwpOiB2b2lkIHtcbiAgICBsZXQgaGlzdG9yeSA9IHRoaXMuZ2V0SGlzdG9yeShlbnRyeS51c2VybmFtZSwgZW50cnkuY29udGV4dCk7XG4gICAgLyogcmVtb3ZlIGN1cnJlbnQgZW50cnkgZnJvbSBhcnJheSAqL1xuICAgIGhpc3RvcnkgPSBoaXN0b3J5LmZpbHRlcihcbiAgICAgIGVsZW1lbnQgPT5cbiAgICAgICAgIShcbiAgICAgICAgICBlbGVtZW50LnRpdGxlID09PSBlbnRyeS50aXRsZSAmJlxuICAgICAgICAgIGVsZW1lbnQudXNlcm5hbWUgPT09IGVudHJ5LnVzZXJuYW1lICYmXG4gICAgICAgICAgdGhpcy5jaGVja0VxdWFsQ29udGV4dChlbGVtZW50LCBlbnRyeS5jb250ZXh0KVxuICAgICAgICApXG4gICAgKTtcbiAgICB0aGlzLnNldEhpc3RvcnkoaGlzdG9yeSk7XG4gIH1cblxuICBwcml2YXRlIGNoZWNrRXF1YWxDb250ZXh0KGVudHJ5OiBDbHJIaXN0b3J5TW9kZWwsIHRvQ29tcGFyZTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSk6IGJvb2xlYW4ge1xuICAgIGxldCBlcXVhbCA9IGZhbHNlO1xuICAgIGlmIChlbnRyeSAmJiB0b0NvbXBhcmUpIHtcbiAgICAgIE9iamVjdC5rZXlzKHRvQ29tcGFyZSkuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICBlcXVhbCA9IGVudHJ5LmNvbnRleHRba2V5XSA9PT0gdG9Db21wYXJlW2tleV07XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIGVxdWFsO1xuICB9XG5cbiAgaW5pdGlhbGl6ZUNvb2tpZVNldHRpbmdzKHVzZXJuYW1lOiBzdHJpbmcsIGRvbWFpbj86IHN0cmluZyk6IHZvaWQge1xuICAgIGxldCBoaXN0b3J5U2V0dGluZ3M6IENsckhpc3RvcnlTZXR0aW5nc01vZGVsW10gPSB0aGlzLmdldENvb2tpZUJ5TmFtZSh0aGlzLmNvb2tpZU5hbWVTZXR0aW5ncyk7XG4gICAgaWYgKCFoaXN0b3J5U2V0dGluZ3MgfHwgaGlzdG9yeVNldHRpbmdzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5zZXRIaXN0b3J5UGlubmVkKHVzZXJuYW1lLCBmYWxzZSwgZG9tYWluKTtcbiAgICAgIGhpc3RvcnlTZXR0aW5ncyA9IFt7IHVzZXJuYW1lOiB1c2VybmFtZSwgaGlzdG9yeVBpbm5lZDogZmFsc2UgfV07XG4gICAgfVxuICAgIGlmICghaGlzdG9yeVNldHRpbmdzLmZpbmQoaFNldHRpbmcgPT4gaFNldHRpbmcudXNlcm5hbWUgPT09IHVzZXJuYW1lKSkge1xuICAgICAgdGhpcy5zZXRIaXN0b3J5UGlubmVkKHVzZXJuYW1lLCBmYWxzZSwgZG9tYWluKTtcbiAgICAgIGhpc3RvcnlTZXR0aW5ncy5wdXNoKHsgdXNlcm5hbWU6IHVzZXJuYW1lLCBoaXN0b3J5UGlubmVkOiBmYWxzZSB9KTtcbiAgICB9XG4gICAgdGhpcy5jb29raWVTZXR0aW5ncyQubmV4dChoaXN0b3J5U2V0dGluZ3MpO1xuICB9XG5cbiAgc2V0SGlzdG9yeVBpbm5lZCh1c2VybmFtZTogc3RyaW5nLCBwaW46IGJvb2xlYW4sIGRvbWFpbj86IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IGhpc3RvcnlTZXR0aW5nczogQ2xySGlzdG9yeVNldHRpbmdzTW9kZWxbXSA9IHRoaXMuZ2V0Q29va2llQnlOYW1lKHRoaXMuY29va2llTmFtZVNldHRpbmdzKTtcbiAgICBjb25zdCBoaXN0b3J5U2V0dGluZyA9IGhpc3RvcnlTZXR0aW5ncy5maW5kKGhTZXR0aW5nID0+IGhTZXR0aW5nLnVzZXJuYW1lID09PSB1c2VybmFtZSk7XG4gICAgaWYgKGhpc3RvcnlTZXR0aW5nKSB7XG4gICAgICBoaXN0b3J5U2V0dGluZy5oaXN0b3J5UGlubmVkID0gcGluO1xuICAgIH0gZWxzZSB7XG4gICAgICBoaXN0b3J5U2V0dGluZ3MucHVzaCh7IHVzZXJuYW1lOiB1c2VybmFtZSwgaGlzdG9yeVBpbm5lZDogcGluIH0pO1xuICAgIH1cbiAgICB0aGlzLmNvb2tpZVNldHRpbmdzJC5uZXh0KGhpc3RvcnlTZXR0aW5ncyk7XG4gICAgLy8gU2V0IGl0XG4gICAgdGhpcy5zZXRDb29raWUodGhpcy5jb29raWVOYW1lU2V0dGluZ3MsIEpTT04uc3RyaW5naWZ5KGhpc3RvcnlTZXR0aW5ncyksIGRvbWFpbik7XG4gIH1cblxuICBwcml2YXRlIGdldENvb2tpZUJ5TmFtZShuYW1lOiBzdHJpbmcpOiBhbnlbXSB7XG4gICAgY29uc3QgY29va2llRW50cmllcyA9XG4gICAgICBkb2N1bWVudC5jb29raWVcbiAgICAgICAgLnNwbGl0KCc7JylcbiAgICAgICAgLm1hcChjID0+IGMudHJpbSgpKVxuICAgICAgICAuZmlsdGVyKGNvb2tpZSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGNvb2tpZS5zdWJzdHJpbmcoMCwgbmFtZS5sZW5ndGggKyAxKSA9PT0gYCR7bmFtZX09YDtcbiAgICAgICAgfSlcbiAgICAgICAgLm1hcChjb29raWUgPT4ge1xuICAgICAgICAgIHJldHVybiBuYW1lID09PSB0aGlzLmNvb2tpZU5hbWVcbiAgICAgICAgICAgID8gdGhpcy5kZWNvZGUoY29va2llLnN1YnN0cmluZyhuYW1lLmxlbmd0aCArIDEpKVxuICAgICAgICAgICAgOiBKU09OLnBhcnNlKGNvb2tpZS5zdWJzdHJpbmcobmFtZS5sZW5ndGggKyAxKSk7XG4gICAgICAgIH0pWzBdIHx8IFtdO1xuICAgIGlmIChjb29raWVFbnRyaWVzICYmIGNvb2tpZUVudHJpZXMubGVuZ3RoID4gMCkge1xuICAgICAgY29va2llRW50cmllcy5mb3JFYWNoKChlbnRyeTogYW55KSA9PiB7XG4gICAgICAgIGlmIChlbnRyeS50aXRsZSkge1xuICAgICAgICAgIGVudHJ5LnRpdGxlID0gZGVjb2RlVVJJKGVudHJ5LnRpdGxlKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZW50cnkucGFnZU5hbWUpIHtcbiAgICAgICAgICBlbnRyeS5wYWdlTmFtZSA9IGRlY29kZVVSSShlbnRyeS5wYWdlTmFtZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gY29va2llRW50cmllcztcbiAgfVxuXG4gIHByaXZhdGUgZW5jb2RlKGNvbnRlbnQ6IENsckhpc3RvcnlNb2RlbFtdKTogc3RyaW5nIHtcbiAgICBjb25zdCBqc29uU3RyaW5nID0gYnRvYShlbmNvZGVVUklDb21wb25lbnQoSlNPTi5zdHJpbmdpZnkoY29udGVudCkpKTtcbiAgICByZXR1cm4ganNvblN0cmluZy5yZXBsYWNlKC9cXCsvZywgJy0nKS5yZXBsYWNlKC9cXC8vZywgJ18nKS5yZXBsYWNlKC89L2csICchJyk7XG4gIH1cblxuICBwcml2YXRlIGRlY29kZShjb250ZW50OiBzdHJpbmcpOiBDbHJIaXN0b3J5TW9kZWxbXSB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGJhc2U2NCA9IGNvbnRlbnQucmVwbGFjZSgvLS9nLCAnKycpLnJlcGxhY2UoL18vZywgJy8nKS5yZXBsYWNlKC8hL2csICc9Jyk7XG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShkZWNvZGVVUklDb21wb25lbnQoYXRvYihiYXNlNjQpKSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldENvb2tpZShuYW1lOiBzdHJpbmcsIGNvbnRlbnQ6IHN0cmluZywgZG9tYWluOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBkb2N1bWVudC5jb29raWUgPVxuICAgICAgbmFtZSArXG4gICAgICAnPScgK1xuICAgICAgY29udGVudCArXG4gICAgICAnO2RvbWFpbj0nICtcbiAgICAgIChkb21haW4gPyBkb21haW4gOiB0aGlzLmdldERvbWFpbigpKSArXG4gICAgICAnO2V4cGlyZXM9JyArXG4gICAgICB0aGlzLmV4cGlyeURhdGUudG9VVENTdHJpbmcoKSArXG4gICAgICAnO3BhdGg9Lyc7XG4gIH1cblxuICBwcml2YXRlIGdldERvbWFpbigpOiBzdHJpbmcge1xuICAgIGNvbnN0IGRvbWFpbiA9IHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZS5zcGxpdCgnLicpO1xuICAgIC8vbG9jYWxob3N0IGZhbGxiYWNrXG4gICAgaWYgKGRvbWFpbi5sZW5ndGggPT09IDEpIHtcbiAgICAgIHJldHVybiBkb21haW5bMF07XG4gICAgfVxuICAgIGRvbWFpbi5zaGlmdCgpO1xuICAgIHJldHVybiBkb21haW4uam9pbignLicpO1xuICB9XG59XG4iXX0=
|
|
210
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlzdG9yeS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2Nsci1hZGRvbnMvaGlzdG9yeS9oaXN0b3J5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFHdkMsTUFBTSxPQUFPLGlCQUFpQjtJQVc1QjtRQVZPLG9CQUFlLEdBQUcsSUFBSSxlQUFlLENBQTRCLEVBQUUsQ0FBQyxDQUFDO1FBQzVFLGVBQVUsR0FBRyxhQUFhLENBQUM7UUFDM0IsdUJBQWtCLEdBQUcsc0JBQXNCLENBQUM7UUFHNUMsMEJBQTBCO1FBQ2xCLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFDdkIsMENBQTBDO1FBQ2xDLGVBQVUsR0FBRyxHQUFHLENBQUM7UUFHdkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLEdBQUcsR0FBRyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ2pGLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGVBQWUsQ0FBQyxZQUE2QixFQUFFLE1BQWU7UUFDNUQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3JDLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFM0UsMkVBQTJFO1FBQzNFLElBQUksWUFBWSxDQUFDLEdBQUcsSUFBSSxZQUFZLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2pFLDRCQUE0QjtZQUM1QixPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQzNCLDZDQUE2QztZQUM3QyxPQUFPLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzVCLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ2pDLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxRQUFnQixFQUFFLE9BQWtDO1FBQ3BFLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ25ELElBQUksT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDdEIsTUFBTSxnQkFBZ0IsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7WUFDM0QsTUFBTSxTQUFTLEdBQXNCLEVBQUUsQ0FBQztZQUN4QyxNQUFNLGNBQWMsR0FBYSxFQUFFLENBQUM7WUFFcEMsS0FBSyxJQUFJLENBQUMsR0FBRyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLGNBQWMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUN6RSxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxnQkFBZ0IsRUFBRTtvQkFDdkYsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ3RDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQzVCO2FBQ0Y7WUFFRCxPQUFPLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUM1QjthQUFNO1lBQ0wsT0FBTyxPQUFPLENBQUM7U0FDaEI7SUFDSCxDQUFDO0lBRUQsVUFBVSxDQUFDLFFBQWdCLEVBQUUsT0FBa0M7UUFDN0QsTUFBTSxPQUFPLEdBQXNCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBQ0QsT0FBTyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsSUFBSSxPQUFPLENBQUMsUUFBUSxLQUFLLFFBQVEsQ0FBQyxDQUFDO0lBQzlHLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssVUFBVSxDQUFDLE9BQTBCLEVBQUUsTUFBZTtRQUM1RCxJQUFJLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3BDLG9CQUFvQjtZQUNwQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUMxRDthQUFNO1lBQ0wsT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbkMsbURBQW1EO1lBQ25ELElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUNqQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO29CQUN0QixLQUFLLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ3JDLEtBQUssQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDN0MsQ0FBQyxDQUFDLENBQUM7YUFDSjtZQUNELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1NBQy9EO0lBQ0gsQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUEwQjtRQUNuQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDakQsTUFBTSxPQUFPLEdBQXNCLEVBQUUsQ0FBQztZQUN0QyxHQUFHO2dCQUNELEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO29CQUN2QyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUMxQjthQUNGLFFBQVEsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUN4RCxPQUFPLE9BQU8sQ0FBQztTQUNoQjthQUFNO1lBQ0wsT0FBTyxPQUFPLENBQUM7U0FDaEI7SUFDSCxDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEtBQXNCO1FBQ3RDLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDN0QscUNBQXFDO1FBQ3JDLE9BQU8sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUN0QixPQUFPLENBQUMsRUFBRSxDQUNSLENBQUMsQ0FDQyxPQUFPLENBQUMsS0FBSyxLQUFLLEtBQUssQ0FBQyxLQUFLO1lBQzdCLE9BQU8sQ0FBQyxRQUFRLEtBQUssS0FBSyxDQUFDLFFBQVE7WUFDbkMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQy9DLENBQ0osQ0FBQztRQUNGLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVPLGlCQUFpQixDQUFDLEtBQXNCLEVBQUUsU0FBb0M7UUFDcEYsSUFBSSxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLElBQUksS0FBSyxJQUFJLEtBQUssQ0FBQyxPQUFPLElBQUksU0FBUyxFQUFFO1lBQ3ZDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNuQyxLQUFLLEdBQUcsR0FBRyxJQUFJLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDeEUsQ0FBQyxDQUFDLENBQUM7U0FDSjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELHdCQUF3QixDQUFDLFFBQWdCLEVBQUUsTUFBZTtRQUN4RCxJQUFJLGVBQWUsR0FBOEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUMvRixJQUFJLENBQUMsZUFBZSxJQUFJLGVBQWUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3BELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQy9DLGVBQWUsR0FBRyxDQUFDLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztTQUNsRTtRQUNELElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQUMsRUFBRTtZQUNyRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztZQUMvQyxlQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztTQUNwRTtRQUNELElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxRQUFnQixFQUFFLEdBQVksRUFBRSxNQUFlO1FBQzlELE1BQU0sZUFBZSxHQUE4QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ2pHLE1BQU0sY0FBYyxHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsUUFBUSxLQUFLLFFBQVEsQ0FBQyxDQUFDO1FBQ3hGLElBQUksY0FBYyxFQUFFO1lBQ2xCLGNBQWMsQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDO1NBQ3BDO2FBQU07WUFDTCxlQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztTQUNsRTtRQUNELElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzNDLFNBQVM7UUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ25GLENBQUM7SUFFTyxlQUFlLENBQUMsSUFBWTtRQUNsQyxNQUFNLGFBQWEsR0FDakIsUUFBUSxDQUFDLE1BQU07YUFDWixLQUFLLENBQUMsR0FBRyxDQUFDO2FBQ1YsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO2FBQ2xCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNmLE9BQU8sTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksR0FBRyxDQUFDO1FBQzdELENBQUMsQ0FBQzthQUNELEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNaLE9BQU8sSUFBSSxLQUFLLElBQUksQ0FBQyxVQUFVO2dCQUM3QixDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hELENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3BELENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNoQixJQUFJLGFBQWEsSUFBSSxhQUFhLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUM3QyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBVSxFQUFFLEVBQUU7Z0JBQ25DLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRTtvQkFDZixLQUFLLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7aUJBQ3RDO2dCQUNELElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRTtvQkFDbEIsS0FBSyxDQUFDLFFBQVEsR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2lCQUM1QztZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFDRCxPQUFPLGFBQWEsQ0FBQztJQUN2QixDQUFDO0lBRU8sTUFBTSxDQUFDLE9BQTBCO1FBQ3ZDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyRSxPQUFPLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRU8sTUFBTSxDQUFDLE9BQWU7UUFDNUIsSUFBSTtZQUNGLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNoRixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNyRDtRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsT0FBTyxFQUFFLENBQUM7U0FDWDtJQUNILENBQUM7SUFFTyxTQUFTLENBQUMsSUFBWSxFQUFFLE9BQWUsRUFBRSxNQUFjO1FBQzdELFFBQVEsQ0FBQyxNQUFNO1lBQ2IsSUFBSTtnQkFDSixHQUFHO2dCQUNILE9BQU87Z0JBQ1AsVUFBVTtnQkFDVixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ3BDLFdBQVc7Z0JBQ1gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUU7Z0JBQzdCLFNBQVMsQ0FBQztJQUNkLENBQUM7SUFFTyxTQUFTO1FBQ2YsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25ELG9CQUFvQjtRQUNwQixJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3ZCLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2xCO1FBQ0QsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2YsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzFCLENBQUM7OzhHQXhOVSxpQkFBaUI7a0hBQWpCLGlCQUFpQjsyRkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDIxIFBvcnNjaGUgSW5mb3JtYXRpay4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cblxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2xySGlzdG9yeU1vZGVsLCBDbHJIaXN0b3J5U2V0dGluZ3NNb2RlbCB9IGZyb20gJy4vaGlzdG9yeS1tb2RlbC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDbHJIaXN0b3J5U2VydmljZSB7XG4gIHB1YmxpYyBjb29raWVTZXR0aW5ncyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PENsckhpc3RvcnlTZXR0aW5nc01vZGVsW10+KFtdKTtcbiAgY29va2llTmFtZSA9ICdjbHIuaGlzdG9yeSc7XG4gIGNvb2tpZU5hbWVTZXR0aW5ncyA9ICdjbHIuaGlzdG9yeS5zZXR0aW5ncyc7XG4gIHByaXZhdGUgZXhwaXJ5RGF0ZTogRGF0ZTtcblxuICAvLyBtYXhtaW11bSBoaXN0b3J5IGxlbmd0aFxuICBwcml2YXRlIG1heFNpemUgPSAxMDI0O1xuICAvLyBtYXhpbXVtIHVybCBsZW5ndGggZm9yIHVzYWdlIGluIGhpc3RvcnlcbiAgcHJpdmF0ZSBtYXhVcmxTaXplID0gMjU2O1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuZXhwaXJ5RGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgdGhpcy5leHBpcnlEYXRlLnNldFRpbWUodGhpcy5leHBpcnlEYXRlLmdldFRpbWUoKSArIDM2NSAqIDI0ICogNjAgKiA2MCAqIDEwMDApO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIG5ldyBoaXN0b3J5IGVudHJ5XG4gICAqIEBwYXJhbSBoaXN0b3J5RW50cnkgVGhlIGVudHJ5IHRvIGJlIGFkZGVkXG4gICAqIEBwYXJhbSBkb21haW4gVGhlIG9wdGlvbmFsIGRvbWFpbiBwYXJhbSB3aGVyZSB0aGUgY29va2llIGlzIHN0b3JlZFxuICAgKiBAcmV0dXJucyB0cnVlIHdoZW4gZW50cnkgYWRkZWQsIG90aGVyd2lzZSBmYWxzZSBpcyByZXR1cm5lZFxuICAgKi9cbiAgYWRkSGlzdG9yeUVudHJ5KGhpc3RvcnlFbnRyeTogQ2xySGlzdG9yeU1vZGVsLCBkb21haW4/OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICB0aGlzLnJlbW92ZUZyb21IaXN0b3J5KGhpc3RvcnlFbnRyeSk7XG4gICAgbGV0IGhpc3RvcnkgPSB0aGlzLmdldEhpc3RvcnkoaGlzdG9yeUVudHJ5LnVzZXJuYW1lLCBoaXN0b3J5RW50cnkuY29udGV4dCk7XG5cbiAgICAvKiBvbmx5IGFkZCB0byBoaXN0b3J5IGluIGNhc2UgdXJsIGRvZXMgbm90IGV4Y2VlZCBtYXhVcmxTaXplIGNoYXJhY3RlcnMgKi9cbiAgICBpZiAoaGlzdG9yeUVudHJ5LnVybCAmJiBoaXN0b3J5RW50cnkudXJsLmxlbmd0aCA8IHRoaXMubWF4VXJsU2l6ZSkge1xuICAgICAgLyogYWRkIGl0IGFzIGxhc3QgZWxlbWVudCAqL1xuICAgICAgaGlzdG9yeS5wdXNoKGhpc3RvcnlFbnRyeSk7XG4gICAgICAvKiBzdXBwb3J0IGEgbWF4aW11bSBvZiA0IHBhZ2VzIGluIGhpc3RvcnkgKi9cbiAgICAgIGhpc3RvcnkgPSBoaXN0b3J5LnNsaWNlKC00KTtcbiAgICAgIHRoaXMuc2V0SGlzdG9yeShoaXN0b3J5LCBkb21haW4pO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGdldEhpc3RvcnlEaXNwbGF5KHVzZXJuYW1lOiBzdHJpbmcsIGNvbnRleHQ6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0pOiBDbHJIaXN0b3J5TW9kZWxbXSB7XG4gICAgY29uc3QgaGlzdG9yeSA9IHRoaXMuZ2V0SGlzdG9yeSh1c2VybmFtZSwgY29udGV4dCk7XG4gICAgaWYgKGhpc3RvcnkubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgY3VycmVudFBhZ2VUaXRsZSA9IGhpc3RvcnlbaGlzdG9yeS5sZW5ndGggLSAxXS50aXRsZTtcbiAgICAgIGNvbnN0IHRvRGlzcGxheTogQ2xySGlzdG9yeU1vZGVsW10gPSBbXTtcbiAgICAgIGNvbnN0IGFscmVhZHlEaXNwbGF5OiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgICBmb3IgKGxldCBpID0gaGlzdG9yeS5sZW5ndGggLSAxOyBpID49IDAgJiYgYWxyZWFkeURpc3BsYXkubGVuZ3RoIDwgNDsgaS0tKSB7XG4gICAgICAgIGlmICghYWxyZWFkeURpc3BsYXkuaW5jbHVkZXMoaGlzdG9yeVtpXS50aXRsZSkgJiYgaGlzdG9yeVtpXS50aXRsZSAhPT0gY3VycmVudFBhZ2VUaXRsZSkge1xuICAgICAgICAgIGFscmVhZHlEaXNwbGF5LnB1c2goaGlzdG9yeVtpXS50aXRsZSk7XG4gICAgICAgICAgdG9EaXNwbGF5LnB1c2goaGlzdG9yeVtpXSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRvRGlzcGxheS5yZXZlcnNlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBoaXN0b3J5O1xuICAgIH1cbiAgfVxuXG4gIGdldEhpc3RvcnkodXNlcm5hbWU6IHN0cmluZywgY29udGV4dDogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSk6IENsckhpc3RvcnlNb2RlbFtdIHtcbiAgICBjb25zdCBoaXN0b3J5OiBDbHJIaXN0b3J5TW9kZWxbXSA9IHRoaXMuZ2V0Q29va2llQnlOYW1lKHRoaXMuY29va2llTmFtZSk7XG4gICAgaWYgKCFoaXN0b3J5KSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICAgIHJldHVybiBoaXN0b3J5LmZpbHRlcihlbGVtZW50ID0+IHRoaXMuY2hlY2tFcXVhbENvbnRleHQoZWxlbWVudCwgY29udGV4dCkgJiYgZWxlbWVudC51c2VybmFtZSA9PT0gdXNlcm5hbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBoaXN0b3J5XG4gICAqIEBwYXJhbSBlbnRyaWVzXG4gICAqIEBwYXJhbSBkb21haW5cbiAgICovXG4gIHByaXZhdGUgc2V0SGlzdG9yeShlbnRyaWVzOiBDbHJIaXN0b3J5TW9kZWxbXSwgZG9tYWluPzogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCFlbnRyaWVzIHx8IGVudHJpZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAvLyBjbGVhciBhbGwgZW50cmllc1xuICAgICAgdGhpcy5zZXRDb29raWUodGhpcy5jb29raWVOYW1lLCB0aGlzLmVuY29kZShbXSksIGRvbWFpbik7XG4gICAgfSBlbHNlIHtcbiAgICAgIGVudHJpZXMgPSB0aGlzLnJlZHVjZVNpemUoZW50cmllcyk7XG4gICAgICAvLyBlbmNvZGUgdGl0bGUgJiBwYWdlbmFtZSB0byBiZSBjb29raWUgc2F2aW5nIHNhdmVcbiAgICAgIGlmIChlbnRyaWVzICYmIGVudHJpZXMubGVuZ3RoID4gMCkge1xuICAgICAgICBlbnRyaWVzLmZvckVhY2goZW50cnkgPT4ge1xuICAgICAgICAgIGVudHJ5LnRpdGxlID0gZW5jb2RlVVJJKGVudHJ5LnRpdGxlKTtcbiAgICAgICAgICBlbnRyeS5wYWdlTmFtZSA9IGVuY29kZVVSSShlbnRyeS5wYWdlTmFtZSk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgdGhpcy5zZXRDb29raWUodGhpcy5jb29raWVOYW1lLCB0aGlzLmVuY29kZShlbnRyaWVzKSwgZG9tYWluKTtcbiAgICB9XG4gIH1cblxuICByZWR1Y2VTaXplKGVudHJpZXM6IENsckhpc3RvcnlNb2RlbFtdKTogQ2xySGlzdG9yeU1vZGVsW10ge1xuICAgIGlmIChKU09OLnN0cmluZ2lmeShlbnRyaWVzKS5sZW5ndGggPiB0aGlzLm1heFNpemUpIHtcbiAgICAgIGNvbnN0IHJlZHVjZWQ6IENsckhpc3RvcnlNb2RlbFtdID0gW107XG4gICAgICBkbyB7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZW50cmllcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIHJlZHVjZWQucHVzaChlbnRyaWVzW2ldKTtcbiAgICAgICAgfVxuICAgICAgfSB3aGlsZSAoSlNPTi5zdHJpbmdpZnkocmVkdWNlZCkubGVuZ3RoIDwgdGhpcy5tYXhTaXplKTtcbiAgICAgIHJldHVybiByZWR1Y2VkO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gZW50cmllcztcbiAgICB9XG4gIH1cblxuICByZXNldEhpc3RvcnkoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRIaXN0b3J5KG51bGwpO1xuICB9XG5cbiAgcmVtb3ZlRnJvbUhpc3RvcnkoZW50cnk6IENsckhpc3RvcnlNb2RlbCk6IHZvaWQge1xuICAgIGxldCBoaXN0b3J5ID0gdGhpcy5nZXRIaXN0b3J5KGVudHJ5LnVzZXJuYW1lLCBlbnRyeS5jb250ZXh0KTtcbiAgICAvKiByZW1vdmUgY3VycmVudCBlbnRyeSBmcm9tIGFycmF5ICovXG4gICAgaGlzdG9yeSA9IGhpc3RvcnkuZmlsdGVyKFxuICAgICAgZWxlbWVudCA9PlxuICAgICAgICAhKFxuICAgICAgICAgIGVsZW1lbnQudGl0bGUgPT09IGVudHJ5LnRpdGxlICYmXG4gICAgICAgICAgZWxlbWVudC51c2VybmFtZSA9PT0gZW50cnkudXNlcm5hbWUgJiZcbiAgICAgICAgICB0aGlzLmNoZWNrRXF1YWxDb250ZXh0KGVsZW1lbnQsIGVudHJ5LmNvbnRleHQpXG4gICAgICAgIClcbiAgICApO1xuICAgIHRoaXMuc2V0SGlzdG9yeShoaXN0b3J5KTtcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tFcXVhbENvbnRleHQoZW50cnk6IENsckhpc3RvcnlNb2RlbCwgdG9Db21wYXJlOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9KTogYm9vbGVhbiB7XG4gICAgbGV0IGVxdWFsID0gZmFsc2U7XG4gICAgaWYgKGVudHJ5ICYmIGVudHJ5LmNvbnRleHQgJiYgdG9Db21wYXJlKSB7XG4gICAgICBPYmplY3Qua2V5cyh0b0NvbXBhcmUpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgZXF1YWwgPSBrZXkgaW4gZW50cnkuY29udGV4dCAmJiBlbnRyeS5jb250ZXh0W2tleV0gPT09IHRvQ29tcGFyZVtrZXldO1xuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBlcXVhbDtcbiAgfVxuXG4gIGluaXRpYWxpemVDb29raWVTZXR0aW5ncyh1c2VybmFtZTogc3RyaW5nLCBkb21haW4/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBsZXQgaGlzdG9yeVNldHRpbmdzOiBDbHJIaXN0b3J5U2V0dGluZ3NNb2RlbFtdID0gdGhpcy5nZXRDb29raWVCeU5hbWUodGhpcy5jb29raWVOYW1lU2V0dGluZ3MpO1xuICAgIGlmICghaGlzdG9yeVNldHRpbmdzIHx8IGhpc3RvcnlTZXR0aW5ncy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuc2V0SGlzdG9yeVBpbm5lZCh1c2VybmFtZSwgZmFsc2UsIGRvbWFpbik7XG4gICAgICBoaXN0b3J5U2V0dGluZ3MgPSBbeyB1c2VybmFtZTogdXNlcm5hbWUsIGhpc3RvcnlQaW5uZWQ6IGZhbHNlIH1dO1xuICAgIH1cbiAgICBpZiAoIWhpc3RvcnlTZXR0aW5ncy5maW5kKGhTZXR0aW5nID0+IGhTZXR0aW5nLnVzZXJuYW1lID09PSB1c2VybmFtZSkpIHtcbiAgICAgIHRoaXMuc2V0SGlzdG9yeVBpbm5lZCh1c2VybmFtZSwgZmFsc2UsIGRvbWFpbik7XG4gICAgICBoaXN0b3J5U2V0dGluZ3MucHVzaCh7IHVzZXJuYW1lOiB1c2VybmFtZSwgaGlzdG9yeVBpbm5lZDogZmFsc2UgfSk7XG4gICAgfVxuICAgIHRoaXMuY29va2llU2V0dGluZ3MkLm5leHQoaGlzdG9yeVNldHRpbmdzKTtcbiAgfVxuXG4gIHNldEhpc3RvcnlQaW5uZWQodXNlcm5hbWU6IHN0cmluZywgcGluOiBib29sZWFuLCBkb21haW4/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBoaXN0b3J5U2V0dGluZ3M6IENsckhpc3RvcnlTZXR0aW5nc01vZGVsW10gPSB0aGlzLmdldENvb2tpZUJ5TmFtZSh0aGlzLmNvb2tpZU5hbWVTZXR0aW5ncyk7XG4gICAgY29uc3QgaGlzdG9yeVNldHRpbmcgPSBoaXN0b3J5U2V0dGluZ3MuZmluZChoU2V0dGluZyA9PiBoU2V0dGluZy51c2VybmFtZSA9PT0gdXNlcm5hbWUpO1xuICAgIGlmIChoaXN0b3J5U2V0dGluZykge1xuICAgICAgaGlzdG9yeVNldHRpbmcuaGlzdG9yeVBpbm5lZCA9IHBpbjtcbiAgICB9IGVsc2Uge1xuICAgICAgaGlzdG9yeVNldHRpbmdzLnB1c2goeyB1c2VybmFtZTogdXNlcm5hbWUsIGhpc3RvcnlQaW5uZWQ6IHBpbiB9KTtcbiAgICB9XG4gICAgdGhpcy5jb29raWVTZXR0aW5ncyQubmV4dChoaXN0b3J5U2V0dGluZ3MpO1xuICAgIC8vIFNldCBpdFxuICAgIHRoaXMuc2V0Q29va2llKHRoaXMuY29va2llTmFtZVNldHRpbmdzLCBKU09OLnN0cmluZ2lmeShoaXN0b3J5U2V0dGluZ3MpLCBkb21haW4pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb29raWVCeU5hbWUobmFtZTogc3RyaW5nKTogYW55W10ge1xuICAgIGNvbnN0IGNvb2tpZUVudHJpZXMgPVxuICAgICAgZG9jdW1lbnQuY29va2llXG4gICAgICAgIC5zcGxpdCgnOycpXG4gICAgICAgIC5tYXAoYyA9PiBjLnRyaW0oKSlcbiAgICAgICAgLmZpbHRlcihjb29raWUgPT4ge1xuICAgICAgICAgIHJldHVybiBjb29raWUuc3Vic3RyaW5nKDAsIG5hbWUubGVuZ3RoICsgMSkgPT09IGAke25hbWV9PWA7XG4gICAgICAgIH0pXG4gICAgICAgIC5tYXAoY29va2llID0+IHtcbiAgICAgICAgICByZXR1cm4gbmFtZSA9PT0gdGhpcy5jb29raWVOYW1lXG4gICAgICAgICAgICA/IHRoaXMuZGVjb2RlKGNvb2tpZS5zdWJzdHJpbmcobmFtZS5sZW5ndGggKyAxKSlcbiAgICAgICAgICAgIDogSlNPTi5wYXJzZShjb29raWUuc3Vic3RyaW5nKG5hbWUubGVuZ3RoICsgMSkpO1xuICAgICAgICB9KVswXSB8fCBbXTtcbiAgICBpZiAoY29va2llRW50cmllcyAmJiBjb29raWVFbnRyaWVzLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvb2tpZUVudHJpZXMuZm9yRWFjaCgoZW50cnk6IGFueSkgPT4ge1xuICAgICAgICBpZiAoZW50cnkudGl0bGUpIHtcbiAgICAgICAgICBlbnRyeS50aXRsZSA9IGRlY29kZVVSSShlbnRyeS50aXRsZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGVudHJ5LnBhZ2VOYW1lKSB7XG4gICAgICAgICAgZW50cnkucGFnZU5hbWUgPSBkZWNvZGVVUkkoZW50cnkucGFnZU5hbWUpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIGNvb2tpZUVudHJpZXM7XG4gIH1cblxuICBwcml2YXRlIGVuY29kZShjb250ZW50OiBDbHJIaXN0b3J5TW9kZWxbXSk6IHN0cmluZyB7XG4gICAgY29uc3QganNvblN0cmluZyA9IGJ0b2EoZW5jb2RlVVJJQ29tcG9uZW50KEpTT04uc3RyaW5naWZ5KGNvbnRlbnQpKSk7XG4gICAgcmV0dXJuIGpzb25TdHJpbmcucmVwbGFjZSgvXFwrL2csICctJykucmVwbGFjZSgvXFwvL2csICdfJykucmVwbGFjZSgvPS9nLCAnIScpO1xuICB9XG5cbiAgcHJpdmF0ZSBkZWNvZGUoY29udGVudDogc3RyaW5nKTogQ2xySGlzdG9yeU1vZGVsW10ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBiYXNlNjQgPSBjb250ZW50LnJlcGxhY2UoLy0vZywgJysnKS5yZXBsYWNlKC9fL2csICcvJykucmVwbGFjZSgvIS9nLCAnPScpO1xuICAgICAgcmV0dXJuIEpTT04ucGFyc2UoZGVjb2RlVVJJQ29tcG9uZW50KGF0b2IoYmFzZTY0KSkpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRDb29raWUobmFtZTogc3RyaW5nLCBjb250ZW50OiBzdHJpbmcsIGRvbWFpbjogc3RyaW5nKTogdm9pZCB7XG4gICAgZG9jdW1lbnQuY29va2llID1cbiAgICAgIG5hbWUgK1xuICAgICAgJz0nICtcbiAgICAgIGNvbnRlbnQgK1xuICAgICAgJztkb21haW49JyArXG4gICAgICAoZG9tYWluID8gZG9tYWluIDogdGhpcy5nZXREb21haW4oKSkgK1xuICAgICAgJztleHBpcmVzPScgK1xuICAgICAgdGhpcy5leHBpcnlEYXRlLnRvVVRDU3RyaW5nKCkgK1xuICAgICAgJztwYXRoPS8nO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXREb21haW4oKTogc3RyaW5nIHtcbiAgICBjb25zdCBkb21haW4gPSB3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUuc3BsaXQoJy4nKTtcbiAgICAvL2xvY2FsaG9zdCBmYWxsYmFja1xuICAgIGlmIChkb21haW4ubGVuZ3RoID09PSAxKSB7XG4gICAgICByZXR1cm4gZG9tYWluWzBdO1xuICAgIH1cbiAgICBkb21haW4uc2hpZnQoKTtcbiAgICByZXR1cm4gZG9tYWluLmpvaW4oJy4nKTtcbiAgfVxufVxuIl19
|
package/fesm2015/clr-addons.mjs
CHANGED
|
@@ -4008,9 +4008,9 @@ class ClrHistoryService {
|
|
|
4008
4008
|
}
|
|
4009
4009
|
checkEqualContext(entry, toCompare) {
|
|
4010
4010
|
let equal = false;
|
|
4011
|
-
if (entry && toCompare) {
|
|
4011
|
+
if (entry && entry.context && toCompare) {
|
|
4012
4012
|
Object.keys(toCompare).forEach(key => {
|
|
4013
|
-
equal = entry.context[key] === toCompare[key];
|
|
4013
|
+
equal = key in entry.context && entry.context[key] === toCompare[key];
|
|
4014
4014
|
});
|
|
4015
4015
|
}
|
|
4016
4016
|
return equal;
|
|
@@ -4986,8 +4986,9 @@ class NestedProperty {
|
|
|
4986
4986
|
}
|
|
4987
4987
|
|
|
4988
4988
|
class ClrDateFilterComponent {
|
|
4989
|
-
constructor(
|
|
4989
|
+
constructor(commonStrings, clrPopoverEventsService, filterContainer) {
|
|
4990
4990
|
this.commonStrings = commonStrings;
|
|
4991
|
+
this.clrPopoverEventsService = clrPopoverEventsService;
|
|
4991
4992
|
this.filterValueChange = new EventEmitter();
|
|
4992
4993
|
/**
|
|
4993
4994
|
* Internal values and accessor
|
|
@@ -5006,6 +5007,9 @@ class ClrDateFilterComponent {
|
|
|
5006
5007
|
get property() {
|
|
5007
5008
|
return this.nestedProp.prop;
|
|
5008
5009
|
}
|
|
5010
|
+
ngAfterViewInit() {
|
|
5011
|
+
this.clrPopoverEventsService.outsideClickClose = false;
|
|
5012
|
+
}
|
|
5009
5013
|
get maxPlaceholderValue() {
|
|
5010
5014
|
return this.maxPlaceholder || this.commonStrings.keys.maxValue;
|
|
5011
5015
|
}
|
|
@@ -5094,12 +5098,12 @@ class ClrDateFilterComponent {
|
|
|
5094
5098
|
return other === this;
|
|
5095
5099
|
}
|
|
5096
5100
|
}
|
|
5097
|
-
ClrDateFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: ClrDateFilterComponent, deps: [{ token: i2.
|
|
5101
|
+
ClrDateFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: ClrDateFilterComponent, deps: [{ token: i2.ClrCommonStringsService }, { token: i2.ClrPopoverEventsService }, { token: i2.ClrDatagridFilter }], target: i0.ɵɵFactoryTarget.Component });
|
|
5098
5102
|
ClrDateFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.8", type: ClrDateFilterComponent, selector: "clr-date-filter", inputs: { property: ["clrProperty", "property"], maxPlaceholder: ["clrFilterMaxPlaceholder", "maxPlaceholder"], minPlaceholder: ["clrFilterMinPlaceholder", "minPlaceholder"], value: ["clrFilterValue", "value"] }, outputs: { filterValueChange: "clrFilterValueChange" }, ngImport: i0, template: "<clr-date-container>\n <input\n #input_from\n type=\"date\"\n name=\"from\"\n class=\"datagrid-date-filter-input\"\n [(clrDate)]=\"from\"\n [placeholder]=\"minPlaceholderValue\"\n [attr.aria-label]=\"minPlaceholderValue\"\n />\n</clr-date-container>\n<clr-date-container>\n <input\n type=\"date\"\n name=\"to\"\n class=\"datagrid-date-filter-input\"\n [(clrDate)]=\"to\"\n [placeholder]=\"maxPlaceholderValue\"\n [attr.aria-label]=\"maxPlaceholderValue\"\n />\n</clr-date-container>\n", styles: [""], dependencies: [{ kind: "component", type: i2.ClrDateContainer, selector: "clr-date-container", inputs: ["clrPosition"] }, { kind: "directive", type: i2.ClrDateInput, selector: "[clrDate]", inputs: ["placeholder", "clrDate", "min", "max", "disabled"], outputs: ["clrDateChange"] }, { kind: "directive", type: i2.ClrDateInputValidator, selector: "[clrDate]" }] });
|
|
5099
5103
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: ClrDateFilterComponent, decorators: [{
|
|
5100
5104
|
type: Component,
|
|
5101
5105
|
args: [{ selector: 'clr-date-filter', template: "<clr-date-container>\n <input\n #input_from\n type=\"date\"\n name=\"from\"\n class=\"datagrid-date-filter-input\"\n [(clrDate)]=\"from\"\n [placeholder]=\"minPlaceholderValue\"\n [attr.aria-label]=\"minPlaceholderValue\"\n />\n</clr-date-container>\n<clr-date-container>\n <input\n type=\"date\"\n name=\"to\"\n class=\"datagrid-date-filter-input\"\n [(clrDate)]=\"to\"\n [placeholder]=\"maxPlaceholderValue\"\n [attr.aria-label]=\"maxPlaceholderValue\"\n />\n</clr-date-container>\n" }]
|
|
5102
|
-
}], ctorParameters: function () { return [{ type: i2.
|
|
5106
|
+
}], ctorParameters: function () { return [{ type: i2.ClrCommonStringsService }, { type: i2.ClrPopoverEventsService }, { type: i2.ClrDatagridFilter }]; }, propDecorators: { property: [{
|
|
5103
5107
|
type: Input,
|
|
5104
5108
|
args: ['clrProperty']
|
|
5105
5109
|
}], maxPlaceholder: [{
|