@wavemaker/app-ng-runtime 11.6.0-next.140456 → 11.6.0-next.140458
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.
- app-ng-runtime/build-task/bundles/index.umd.js +1 -1
- app-ng-runtime/build-task/esm2022/data/form/form-field/form-field.build.mjs +3 -3
- app-ng-runtime/build-task/fesm2022/index.mjs +1 -1
- app-ng-runtime/build-task/fesm2022/index.mjs.map +1 -1
- app-ng-runtime/components/chart/bundles/index.umd.js +1 -1
- app-ng-runtime/components/chart/esm2022/chart.utils.mjs +2 -2
- app-ng-runtime/components/chart/fesm2022/index.mjs +1 -1
- app-ng-runtime/components/chart/fesm2022/index.mjs.map +1 -1
- app-ng-runtime/components/data/form/bundles/index.umd.js +41 -24
- app-ng-runtime/components/data/form/esm2022/form-field/form-field.directive.mjs +31 -22
- app-ng-runtime/components/data/form/esm2022/form.component.mjs +22 -10
- app-ng-runtime/components/data/form/fesm2022/index.mjs +45 -24
- app-ng-runtime/components/data/form/fesm2022/index.mjs.map +1 -1
- app-ng-runtime/components/data/form/form-field/form-field.directive.d.ts +3 -1
- app-ng-runtime/components/data/form/form.component.d.ts +2 -2
- app-ng-runtime/components/data/table/bundles/index.umd.js +6 -2
- app-ng-runtime/components/data/table/esm2022/table.component.mjs +10 -7
- app-ng-runtime/components/data/table/fesm2022/index.mjs +6 -2
- app-ng-runtime/components/data/table/fesm2022/index.mjs.map +1 -1
- app-ng-runtime/components/data/table/table.component.d.ts +4 -4
- app-ng-runtime/components/input/calendar/bundles/index.umd.js +6 -0
- app-ng-runtime/components/input/calendar/calendar.component.d.ts +1 -1
- app-ng-runtime/components/input/calendar/esm2022/calendar.component.mjs +8 -2
- app-ng-runtime/components/input/calendar/fesm2022/index.mjs +6 -0
- app-ng-runtime/components/input/calendar/fesm2022/index.mjs.map +1 -1
- app-ng-runtime/components/input/default/bundles/index.umd.js +52 -30
- app-ng-runtime/components/input/default/caption-position.directive.d.ts +1 -1
- app-ng-runtime/components/input/default/esm2022/caption-position.directive.mjs +2 -2
- app-ng-runtime/components/input/default/esm2022/select/select.component.mjs +60 -37
- app-ng-runtime/components/input/default/fesm2022/index.mjs +53 -31
- app-ng-runtime/components/input/default/fesm2022/index.mjs.map +1 -1
- app-ng-runtime/components/input/default/select/select.component.d.ts +4 -1
- app-ng-runtime/components/input/epoch/base-date-time.component.d.ts +11 -11
- app-ng-runtime/components/input/epoch/bundles/index.umd.js +112 -87
- app-ng-runtime/components/input/epoch/esm2022/base-date-time.component.mjs +100 -78
- app-ng-runtime/components/input/epoch/esm2022/date/date.component.mjs +5 -5
- app-ng-runtime/components/input/epoch/esm2022/date-time/date-time.component.mjs +6 -5
- app-ng-runtime/components/input/epoch/esm2022/time/time.component.mjs +7 -5
- app-ng-runtime/components/input/epoch/fesm2022/index.mjs +112 -87
- app-ng-runtime/components/input/epoch/fesm2022/index.mjs.map +1 -1
- app-ng-runtime/components/navigation/menu/bundles/index.umd.js +15 -5
- app-ng-runtime/components/navigation/menu/esm2022/menu.component.mjs +14 -6
- app-ng-runtime/components/navigation/menu/esm2022/menu.props.mjs +2 -1
- app-ng-runtime/components/navigation/menu/esm2022/nav/nav.component.mjs +3 -3
- app-ng-runtime/components/navigation/menu/esm2022/nav/nav.props.mjs +2 -1
- app-ng-runtime/components/navigation/menu/fesm2022/index.mjs +15 -5
- app-ng-runtime/components/navigation/menu/fesm2022/index.mjs.map +1 -1
- app-ng-runtime/components/navigation/menu/menu.component.d.ts +3 -0
- app-ng-runtime/components/navigation/menu/nav/nav.component.d.ts +1 -0
- app-ng-runtime/components/navigation/popover/bundles/index.umd.js +8 -8
- app-ng-runtime/components/navigation/popover/esm2022/popover.component.mjs +11 -11
- app-ng-runtime/components/navigation/popover/fesm2022/index.mjs +8 -8
- app-ng-runtime/components/navigation/popover/fesm2022/index.mjs.map +1 -1
- app-ng-runtime/core/bundles/index.umd.js +13 -1
- app-ng-runtime/core/esm2022/utils/expression-parser.mjs +13 -2
- app-ng-runtime/core/esm2022/utils/utils.mjs +4 -3
- app-ng-runtime/core/fesm2022/index.mjs +14 -2
- app-ng-runtime/core/fesm2022/index.mjs.map +1 -1
- app-ng-runtime/package.json +1 -1
- app-ng-runtime/runtime/base/bundles/index.umd.js +4 -0
- app-ng-runtime/runtime/base/components/base-page.component.d.ts +2 -3
- app-ng-runtime/runtime/base/esm2022/components/base-page.component.mjs +7 -4
- app-ng-runtime/runtime/base/fesm2022/index.mjs +5 -1
- app-ng-runtime/runtime/base/fesm2022/index.mjs.map +1 -1
- app-ng-runtime/scripts/@wavemaker/nvd3/build/nv.d3.min.js +1 -1
- app-ng-runtime/scripts/datatable/datatable.js +5 -2
- app-ng-runtime/variables/bundles/index.umd.js +13 -7
- app-ng-runtime/variables/esm2022/util/variable/variables.utils.mjs +15 -9
- app-ng-runtime/variables/fesm2022/index.mjs +13 -7
- app-ng-runtime/variables/fesm2022/index.mjs.map +1 -1
- app-ng-runtime/variables/util/variable/variables.utils.d.ts +1 -1
|
@@ -1,53 +1,60 @@
|
|
|
1
1
|
import { Component, ElementRef, Injector, ViewChild } from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
import { DataSource, removeAttr, setAttr } from '@wm/core';
|
|
4
|
-
import {
|
|
2
|
+
import { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { App, DataSource, isIos, removeAttr, setAttr } from '@wm/core';
|
|
4
|
+
import { provideAs, provideAsWidgetRef, styler } from '@wm/components/base';
|
|
5
5
|
import { DatasetAwareFormComponent } from '../dataset-aware-form.component';
|
|
6
6
|
import { registerProps } from './select.props';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@
|
|
9
|
-
import * as i2 from "@angular/
|
|
10
|
-
import * as i3 from "@
|
|
8
|
+
import * as i1 from "@wm/core";
|
|
9
|
+
import * as i2 from "@angular/common";
|
|
10
|
+
import * as i3 from "@angular/forms";
|
|
11
|
+
import * as i4 from "@wm/components/base";
|
|
11
12
|
const _c0 = ["select"];
|
|
13
|
+
function SelectComponent_option_2_Template(rf, ctx) { if (rf & 1) {
|
|
14
|
+
i0.ɵɵelement(0, "option", 4);
|
|
15
|
+
} if (rf & 2) {
|
|
16
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
17
|
+
i0.ɵɵproperty("textContent", ctx_r1.placeholder)("hidden", !ctx_r1.placeholder);
|
|
18
|
+
} }
|
|
12
19
|
function SelectComponent_ng_container_3_optgroup_1_option_1_Template(rf, ctx) { if (rf & 1) {
|
|
13
|
-
i0.ɵɵelement(0, "option",
|
|
20
|
+
i0.ɵɵelement(0, "option", 8);
|
|
14
21
|
} if (rf & 2) {
|
|
15
|
-
const
|
|
16
|
-
i0.ɵɵproperty("value",
|
|
22
|
+
const item_r7 = ctx.$implicit;
|
|
23
|
+
i0.ɵɵproperty("value", item_r7.key)("selected", item_r7.selected)("textContent", item_r7.label);
|
|
17
24
|
} }
|
|
18
25
|
function SelectComponent_ng_container_3_optgroup_1_Template(rf, ctx) { if (rf & 1) {
|
|
19
|
-
i0.ɵɵelementStart(0, "optgroup",
|
|
20
|
-
i0.ɵɵtemplate(1, SelectComponent_ng_container_3_optgroup_1_option_1_Template, 1, 3, "option",
|
|
26
|
+
i0.ɵɵelementStart(0, "optgroup", 6);
|
|
27
|
+
i0.ɵɵtemplate(1, SelectComponent_ng_container_3_optgroup_1_option_1_Template, 1, 3, "option", 7);
|
|
21
28
|
i0.ɵɵelementEnd();
|
|
22
29
|
} if (rf & 2) {
|
|
23
|
-
const
|
|
24
|
-
i0.ɵɵproperty("label",
|
|
30
|
+
const groupObj_r5 = ctx.$implicit;
|
|
31
|
+
i0.ɵɵproperty("label", groupObj_r5.key);
|
|
25
32
|
i0.ɵɵadvance(1);
|
|
26
|
-
i0.ɵɵproperty("ngForOf",
|
|
33
|
+
i0.ɵɵproperty("ngForOf", groupObj_r5.data);
|
|
27
34
|
} }
|
|
28
35
|
function SelectComponent_ng_container_3_Template(rf, ctx) { if (rf & 1) {
|
|
29
36
|
i0.ɵɵelementContainerStart(0);
|
|
30
|
-
i0.ɵɵtemplate(1, SelectComponent_ng_container_3_optgroup_1_Template, 2, 2, "optgroup",
|
|
37
|
+
i0.ɵɵtemplate(1, SelectComponent_ng_container_3_optgroup_1_Template, 2, 2, "optgroup", 5);
|
|
31
38
|
i0.ɵɵelementContainerEnd();
|
|
32
39
|
} if (rf & 2) {
|
|
33
|
-
const
|
|
40
|
+
const ctx_r2 = i0.ɵɵnextContext();
|
|
34
41
|
i0.ɵɵadvance(1);
|
|
35
|
-
i0.ɵɵproperty("ngForOf",
|
|
42
|
+
i0.ɵɵproperty("ngForOf", ctx_r2.groupedData);
|
|
36
43
|
} }
|
|
37
44
|
function SelectComponent_ng_container_4_option_1_Template(rf, ctx) { if (rf & 1) {
|
|
38
|
-
i0.ɵɵelement(0, "option",
|
|
45
|
+
i0.ɵɵelement(0, "option", 8);
|
|
39
46
|
} if (rf & 2) {
|
|
40
|
-
const
|
|
41
|
-
i0.ɵɵproperty("value",
|
|
47
|
+
const item_r9 = ctx.$implicit;
|
|
48
|
+
i0.ɵɵproperty("value", item_r9.key)("selected", item_r9.selected)("textContent", item_r9.label);
|
|
42
49
|
} }
|
|
43
50
|
function SelectComponent_ng_container_4_Template(rf, ctx) { if (rf & 1) {
|
|
44
51
|
i0.ɵɵelementContainerStart(0);
|
|
45
|
-
i0.ɵɵtemplate(1, SelectComponent_ng_container_4_option_1_Template, 1, 3, "option",
|
|
52
|
+
i0.ɵɵtemplate(1, SelectComponent_ng_container_4_option_1_Template, 1, 3, "option", 7);
|
|
46
53
|
i0.ɵɵelementContainerEnd();
|
|
47
54
|
} if (rf & 2) {
|
|
48
|
-
const
|
|
55
|
+
const ctx_r3 = i0.ɵɵnextContext();
|
|
49
56
|
i0.ɵɵadvance(1);
|
|
50
|
-
i0.ɵɵproperty("ngForOf",
|
|
57
|
+
i0.ɵɵproperty("ngForOf", ctx_r3.datasetItems);
|
|
51
58
|
} }
|
|
52
59
|
const _c1 = function (a1) { return ["app-select form-control", a1]; };
|
|
53
60
|
const WIDGET_CONFIG = { widgetType: 'wm-select', hostClass: 'app-select-wrapper' };
|
|
@@ -58,13 +65,17 @@ export class SelectComponent extends DatasetAwareFormComponent {
|
|
|
58
65
|
this.datavalue = ds.execute(DataSource.Operation.GET_DEFAULT_LOCALE);
|
|
59
66
|
}
|
|
60
67
|
}
|
|
61
|
-
constructor(inj) {
|
|
68
|
+
constructor(inj, app) {
|
|
62
69
|
super(inj, WIDGET_CONFIG);
|
|
70
|
+
this.app = app;
|
|
63
71
|
this.acceptsArray = true;
|
|
64
72
|
}
|
|
65
73
|
ngAfterViewInit() {
|
|
66
74
|
super.ngAfterViewInit();
|
|
67
75
|
styler(this.selectEl.nativeElement, this);
|
|
76
|
+
setTimeout(() => {
|
|
77
|
+
this.checkForFloatingLabel(null);
|
|
78
|
+
}, 10);
|
|
68
79
|
}
|
|
69
80
|
// Change event is registered from the template, Prevent the framework from registering one more event
|
|
70
81
|
handleEvent(node, eventName, eventCallback, locals) {
|
|
@@ -111,6 +122,9 @@ export class SelectComponent extends DatasetAwareFormComponent {
|
|
|
111
122
|
}
|
|
112
123
|
super.onPropertyChange(key, nv, ov);
|
|
113
124
|
}
|
|
125
|
+
isIosPlatform() {
|
|
126
|
+
return isIos();
|
|
127
|
+
}
|
|
114
128
|
/**
|
|
115
129
|
* When caption floating is enabled and placeholder is given, do not show placeholder until user focuses on the field
|
|
116
130
|
* When focused add the placeholder to the option which is selected
|
|
@@ -120,16 +134,25 @@ export class SelectComponent extends DatasetAwareFormComponent {
|
|
|
120
134
|
checkForFloatingLabel($event) {
|
|
121
135
|
const captionEl = $(this.selectEl.nativeElement).closest('.app-composite-widget.caption-floating');
|
|
122
136
|
if (captionEl.length > 0) {
|
|
123
|
-
if ($event.type === 'focus' && (
|
|
124
|
-
|
|
137
|
+
if ((!$event || $event.type === 'focus') && (($(this.selectEl).find('select option:selected').text() === '' && (this.placeholder || this.datavalue || this.isIosPlatform())))) {
|
|
138
|
+
if (!$event && (this.placeholder || this.datavalue || this.isIosPlatform())) {
|
|
139
|
+
this.app.notify('captionPositionAnimate', { isSelect: true, nativeEl: captionEl });
|
|
140
|
+
}
|
|
141
|
+
if (this.placeholder) {
|
|
142
|
+
$(this.selectEl.nativeElement).find('option:first').text(this.placeholder);
|
|
143
|
+
}
|
|
125
144
|
}
|
|
126
145
|
else if (!this.datavalue) {
|
|
127
|
-
|
|
128
|
-
|
|
146
|
+
if (!this.placeholder) {
|
|
147
|
+
// $(this.selectEl.nativeElement).find('option:first').text('');
|
|
148
|
+
if (!this.isIosPlatform()) {
|
|
149
|
+
captionEl.removeClass('float-active');
|
|
150
|
+
}
|
|
151
|
+
}
|
|
129
152
|
}
|
|
130
153
|
}
|
|
131
154
|
}
|
|
132
|
-
static { this.ɵfac = function SelectComponent_Factory(t) { return new (t || SelectComponent)(i0.ɵɵdirectiveInject(i0.Injector)); }; }
|
|
155
|
+
static { this.ɵfac = function SelectComponent_Factory(t) { return new (t || SelectComponent)(i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(i1.App)); }; }
|
|
133
156
|
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SelectComponent, selectors: [["wm-select"]], viewQuery: function SelectComponent_Query(rf, ctx) { if (rf & 1) {
|
|
134
157
|
i0.ɵɵviewQuery(_c0, 7, ElementRef);
|
|
135
158
|
} if (rf & 2) {
|
|
@@ -139,23 +162,23 @@ export class SelectComponent extends DatasetAwareFormComponent {
|
|
|
139
162
|
provideAs(SelectComponent, NG_VALUE_ACCESSOR, true),
|
|
140
163
|
provideAs(SelectComponent, NG_VALIDATORS, true),
|
|
141
164
|
provideAsWidgetRef(SelectComponent)
|
|
142
|
-
]), i0.ɵɵInheritDefinitionFeature], decls: 5, vars:
|
|
165
|
+
]), i0.ɵɵInheritDefinitionFeature], decls: 5, vars: 15, consts: [["role", "listbox", "aria-haspopup", "true", "aria-expanded", "false", "focus-target", "", 3, "ngClass", "disabled", "required", "tabindex", "ngModel", "multiple", "autofocus", "ngModelChange", "change", "focus", "blur"], ["select", ""], ["value", "undefined", 3, "textContent", "hidden", 4, "ngIf"], [4, "ngIf"], ["value", "undefined", 3, "textContent", "hidden"], [3, "label", 4, "ngFor", "ngForOf"], [3, "label"], ["role", "option", 3, "value", "selected", "textContent", 4, "ngFor", "ngForOf"], ["role", "option", 3, "value", "selected", "textContent"]], template: function SelectComponent_Template(rf, ctx) { if (rf & 1) {
|
|
143
166
|
i0.ɵɵelementStart(0, "select", 0, 1);
|
|
144
167
|
i0.ɵɵlistener("ngModelChange", function SelectComponent_Template_select_ngModelChange_0_listener($event) { return ctx.modelByKey = $event; })("change", function SelectComponent_Template_select_change_0_listener($event) { return ctx.onSelectValueChange($event); })("focus", function SelectComponent_Template_select_focus_0_listener($event) { return ctx.checkForFloatingLabel($event); })("blur", function SelectComponent_Template_select_blur_0_listener($event) { ctx.invokeOnTouched($event); return ctx.checkForFloatingLabel($event); });
|
|
145
|
-
i0.ɵɵ
|
|
168
|
+
i0.ɵɵtemplate(2, SelectComponent_option_2_Template, 1, 2, "option", 2);
|
|
146
169
|
i0.ɵɵtemplate(3, SelectComponent_ng_container_3_Template, 2, 1, "ng-container", 3);
|
|
147
170
|
i0.ɵɵtemplate(4, SelectComponent_ng_container_4_Template, 2, 1, "ng-container", 3);
|
|
148
171
|
i0.ɵɵelementEnd();
|
|
149
172
|
} if (rf & 2) {
|
|
150
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(
|
|
173
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(13, _c1, ctx.class))("disabled", ctx.disabled)("required", ctx.required)("tabindex", ctx.tabindex)("ngModel", ctx.modelByKey)("multiple", ctx.multiple)("autofocus", ctx.autofocus);
|
|
151
174
|
i0.ɵɵattribute("name", ctx.name)("aria-label", ctx.hint)("aria-multiselectable", ctx.multiple);
|
|
152
175
|
i0.ɵɵadvance(2);
|
|
153
|
-
i0.ɵɵproperty("
|
|
176
|
+
i0.ɵɵproperty("ngIf", !ctx.isIosPlatform() || !!ctx.placeholder);
|
|
154
177
|
i0.ɵɵadvance(1);
|
|
155
178
|
i0.ɵɵproperty("ngIf", ctx.groupby);
|
|
156
179
|
i0.ɵɵadvance(1);
|
|
157
180
|
i0.ɵɵproperty("ngIf", !ctx.groupby);
|
|
158
|
-
} }, dependencies: [
|
|
181
|
+
} }, dependencies: [i2.NgClass, i2.NgForOf, i2.NgIf, i3.NgSelectOption, i3.ɵNgSelectMultipleOption, i3.SelectMultipleControlValueAccessor, i3.NgControlStatus, i3.RequiredValidator, i3.NgModel, i4.TextContentDirective], encapsulation: 2 }); }
|
|
159
182
|
}
|
|
160
183
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SelectComponent, [{
|
|
161
184
|
type: Component,
|
|
@@ -163,9 +186,9 @@ export class SelectComponent extends DatasetAwareFormComponent {
|
|
|
163
186
|
provideAs(SelectComponent, NG_VALUE_ACCESSOR, true),
|
|
164
187
|
provideAs(SelectComponent, NG_VALIDATORS, true),
|
|
165
188
|
provideAsWidgetRef(SelectComponent)
|
|
166
|
-
], template: "<select role=\"listbox\" aria-haspopup=\"true\" aria-expanded=\"false\" #select\n focus-target\n [ngClass]=\"['app-select form-control', class]\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [tabindex]=\"tabindex\"\n [(ngModel)]=\"modelByKey\"\n [multiple]=\"multiple\"\n (change)=\"onSelectValueChange($event)\"\n (focus)=\"checkForFloatingLabel($event)\"\n (blur)=\"invokeOnTouched($event); checkForFloatingLabel($event)\"\n [attr.name]=\"name\"\n [attr.aria-label]=\"hint\"\n [attr.aria-multiselectable]=\"multiple\"\n [autofocus]=\"autofocus\"\n>\n <option
|
|
167
|
-
}], function () { return [{ type: i0.Injector }]; }, { selectEl: [{
|
|
189
|
+
], template: "<select role=\"listbox\" aria-haspopup=\"true\" aria-expanded=\"false\" #select\n focus-target\n [ngClass]=\"['app-select form-control', class]\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [tabindex]=\"tabindex\"\n [(ngModel)]=\"modelByKey\"\n [multiple]=\"multiple\"\n (change)=\"onSelectValueChange($event)\"\n (focus)=\"checkForFloatingLabel($event)\"\n (blur)=\"invokeOnTouched($event); checkForFloatingLabel($event)\"\n [attr.name]=\"name\"\n [attr.aria-label]=\"hint\"\n [attr.aria-multiselectable]=\"multiple\"\n [autofocus]=\"autofocus\"\n>\n <option\n value=\"undefined\"\n [textContent]=\"placeholder\"\n *ngIf=\"!isIosPlatform() || !!placeholder\"\n [hidden]=\"!placeholder\"></option>\n\n <ng-container *ngIf=\"groupby\">\n <optgroup *ngFor=\"let groupObj of groupedData\"\n [label]=\"groupObj.key\">\n <option *ngFor=\"let item of groupObj.data;\"\n [value]=\"item.key\"\n [selected]=\"item.selected\"\n [textContent]=\"item.label\"\n role=\"option\"></option>\n </optgroup>\n </ng-container>\n\n <ng-container *ngIf=\"!groupby\">\n <option *ngFor=\"let item of datasetItems\"\n [value]=\"item.key\"\n [selected]=\"item.selected\"\n [textContent]=\"item.label\"\n role=\"option\"></option>\n </ng-container>\n</select>\n" }]
|
|
190
|
+
}], function () { return [{ type: i0.Injector }, { type: i1.App }]; }, { selectEl: [{
|
|
168
191
|
type: ViewChild,
|
|
169
192
|
args: ['select', { static: true, read: ElementRef }]
|
|
170
193
|
}] }); })();
|
|
171
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvd2lkZ2V0cy9pbnB1dC9kZWZhdWx0L3NyYy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvd2lkZ2V0cy9pbnB1dC9kZWZhdWx0L3NyYy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQVksU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRSxPQUFPLEVBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDekQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUU1RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7SUNpQm5DLDRCQUkyQjs7O0lBSHZCLG1DQUFrQiw4QkFBQSw4QkFBQTs7O0lBSDFCLG1DQUMyQjtJQUN2QixnR0FJMkI7SUFDL0IsaUJBQVc7OztJQU5QLHVDQUFzQjtJQUNHLGVBQWlCO0lBQWpCLDBDQUFpQjs7O0lBSGxELDZCQUE4QjtJQUMxQix5RkFPVztJQUNmLDBCQUFlOzs7SUFSb0IsZUFBYztJQUFkLDRDQUFjOzs7SUFXN0MsNEJBSTJCOzs7SUFIdkIsbUNBQWtCLDhCQUFBLDhCQUFBOzs7SUFGMUIsNkJBQStCO0lBQzNCLHFGQUkyQjtJQUMvQiwwQkFBZTs7O0lBTGMsZUFB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RVY7b0JBQ1AsU0FBUyxrQkFBa0IsaUJBQWlCLEVBQUUsSUFBSSxDQUFDO29CQUNuRCxTQUFTLGtCQUFrQixhQUFhLEVBQUUsSUFBSSxDQUFDO29CQUMvQyxrQkFBa0IsaUJBQWlCO2lCQUN0QzsyREFnQndELFFBQVE7a0JBQWhFLFNBQVM7bUJBQUMsUUFBUSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEluamVjdG9yLCBPcHRpb25hbCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SLCBOR19WQUxJREFUT1JTIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQge0RhdGFTb3VyY2UsIHJlbW92ZUF0dHIsIHNldEF0dHJ9IGZyb20gJ0B3bS9jb3JlJztcbmltcG9ydCB7IHByb3ZpZGVBc1dpZGdldFJlZiwgcHJvdmlkZUFzLCBzdHlsZXIgfSBmcm9tICdAd20vY29tcG9uZW50cy9iYXNlJztcbmltcG9ydCB7IERhdGFzZXRBd2FyZUZvcm1Db21wb25lbnQgfSBmcm9tICcuLi9kYXRhc2V0LWF3YXJlLWZvcm0uY29tcG9uZW50JztcblxuaW1wb3J0IHsgcmVnaXN0ZXJQcm9wcyB9IGZyb20gJy4vc2VsZWN0LnByb3BzJztcblxuZGVjbGFyZSBjb25zdCBfO1xuXG5jb25zdCBXSURHRVRfQ09ORklHID0ge3dpZGdldFR5cGU6ICd3bS1zZWxlY3QnLCBob3N0Q2xhc3M6ICdhcHAtc2VsZWN0LXdyYXBwZXInfTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd3bS1zZWxlY3QnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBwcm92aWRlQXMoU2VsZWN0Q29tcG9uZW50LCBOR19WQUxVRV9BQ0NFU1NPUiwgdHJ1ZSksXG4gICAgICAgIHByb3ZpZGVBcyhTZWxlY3RDb21wb25lbnQsIE5HX1ZBTElEQVRPUlMsIHRydWUpLFxuICAgICAgICBwcm92aWRlQXNXaWRnZXRSZWYoU2VsZWN0Q29tcG9uZW50KVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0Q29tcG9uZW50IGV4dGVuZHMgRGF0YXNldEF3YXJlRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICAgIHN0YXRpYyBpbml0aWFsaXplUHJvcHMgPSByZWdpc3RlclByb3BzKCk7XG5cbiAgICBwdWJsaWMgcmVhZG9ubHk6IGJvb2xlYW47XG4gICAgcHVibGljIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gICAgcHVibGljIG5hdnNlYXJjaGJhcjogYW55O1xuICAgIHB1YmxpYyBjbGFzczogYW55O1xuICAgIHB1YmxpYyByZXF1aXJlZDogYm9vbGVhbjtcbiAgICBwdWJsaWMgZGlzYWJsZWQ6IGJvb2xlYW47XG4gICAgcHVibGljIHRhYmluZGV4OiBhbnk7XG4gICAgcHVibGljIG5hbWU6IHN0cmluZztcbiAgICBwdWJsaWMgYXV0b2ZvY3VzOiBib29sZWFuO1xuICAgIHB1YmxpYyBoaW50OiBzdHJpbmc7XG5cbiAgICBAVmlld0NoaWxkKCdzZWxlY3QnLCB7IHN0YXRpYzogdHJ1ZSwgcmVhZDogRWxlbWVudFJlZiB9KSBzZWxlY3RFbDogRWxlbWVudFJlZjtcblxuICAgIHNldCBkYXRhc291cmNlKGRzKSB7XG4gICAgICAgIGlmIChkcyAmJiBkcy5leGVjdXRlICYmIGRzLmV4ZWN1dGUoRGF0YVNvdXJjZS5PcGVyYXRpb24uSVNfQk9VTkRfVE9fTE9DQUxFKSkge1xuICAgICAgICAgICAgdGhpcy5kYXRhdmFsdWUgPSBkcy5leGVjdXRlKERhdGFTb3VyY2UuT3BlcmF0aW9uLkdFVF9ERUZBVUxUX0xPQ0FMRSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihpbmo6IEluamVjdG9yKSB7XG4gICAgICAgIHN1cGVyKGluaiwgV0lER0VUX0NPTkZJRyk7XG4gICAgICAgIHRoaXMuYWNjZXB0c0FycmF5ID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xuICAgICAgICBzdHlsZXIodGhpcy5zZWxlY3RFbC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50LCB0aGlzKTtcbiAgICB9XG5cbiAgICAvLyBDaGFuZ2UgZXZlbnQgaXMgcmVnaXN0ZXJlZCBmcm9tIHRoZSB0ZW1wbGF0ZSwgUHJldmVudCB0aGUgZnJhbWV3b3JrIGZyb20gcmVnaXN0ZXJpbmcgb25lIG1vcmUgZXZlbnRcbiAgICBwcm90ZWN0ZWQgaGFuZGxlRXZlbnQobm9kZTogSFRNTEVsZW1lbnQsIGV2ZW50TmFtZTogc3RyaW5nLCBldmVudENhbGxiYWNrOiBGdW5jdGlvbiwgbG9jYWxzOiBhbnkpIHtcbiAgICAgICAgaWYgKCFfLmluY2x1ZGVzKFsnYmx1cicsICdjaGFuZ2UnXSwgZXZlbnROYW1lKSkge1xuICAgICAgICAgICAgc3VwZXIuaGFuZGxlRXZlbnQodGhpcy5zZWxlY3RFbC5uYXRpdmVFbGVtZW50LCBldmVudE5hbWUsIGV2ZW50Q2FsbGJhY2ssIGxvY2Fscyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblNlbGVjdFZhbHVlQ2hhbmdlKCRldmVudCkge1xuICAgICAgICBpZiAodGhpcy5yZWFkb25seSkge1xuICAgICAgICAgICAgaWYgKHRoaXMucGxhY2Vob2xkZXIpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdEVsLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLnBsYWNlaG9sZGVyO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdEVsLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuZGF0YXZhbHVlID0gKHRoaXMgYXMgYW55KS5wcmV2RGF0YXZhbHVlO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaW52b2tlT25Ub3VjaGVkKCk7XG4gICAgICAgIC8vIGludm9rZSBvbiBkYXRhdmFsdWUgY2hhbmdlLlxuICAgICAgICB0aGlzLmludm9rZU9uQ2hhbmdlKHRoaXMuZGF0YXZhbHVlLCAkZXZlbnQgfHwge30sIHRydWUpO1xuICAgIH1cblxuICAgIG9uUHJvcGVydHlDaGFuZ2Uoa2V5OiBzdHJpbmcsIG52OiBhbnksIG92PzogYW55KSB7XG4gICAgICAgIGlmIChrZXkgPT09ICdyZXF1aXJlZCcpICB7XG4gICAgICAgICAgICB0aGlzLl9vbkNoYW5nZSh0aGlzLmRhdGF2YWx1ZSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGtleSA9PT0gJ2NsYXNzJyB8fCAga2V5ID09PSAndGFiaW5kZXgnKSB7XG4gICAgICAgICAgICBpZihrZXkgPT09ICdjbGFzcycpIHtcbiAgICAgICAgICAgICAgICAvLyBBZnRlciBORzE1IHVwZ3JhZGUgbmctaW52YWxpZCBjbGFzcyBpcyBhZGRlZCBldmVuIHRoZSBmaWVsZCBpcyB2YWxpZCwgc28gd2UgYXJlIHJlbW92aW5nIHRoZSBuZy1pbnZhbGlkIG1hbnVhbGx5XG4gICAgICAgICAgICAgICAgY29uc3QgaXNOZ1VudG91Y2hlZFZhbGlkID0gdGhpcy5zZWxlY3RFbC5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnbmctdW50b3VjaGVkJykgJiYgdGhpcy5zZWxlY3RFbC5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnbmctdmFsaWQnKVxuICAgICAgICAgICAgICAgIGlmKGlzTmdVbnRvdWNoZWRWYWxpZCAmJiBudi5pbmNsdWRlcygnbmctdW50b3VjaGVkJykgJiYgbnYuaW5jbHVkZXMoJ25nLWludmFsaWQnKSkge1xuICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5zZWxlY3RFbC5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnbmctdW50b3VjaGVkJykgJiYgdGhpcy5zZWxlY3RFbC5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnbmctdmFsaWQnKSAmJiB0aGlzLnNlbGVjdEVsLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCduZy1pbnZhbGlkJykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdEVsLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSgnbmctaW52YWxpZCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSBpZiAoa2V5ID09PSAncmVhZG9ubHknKSB7XG4gICAgICAgICAgICAgKG52ID09PSB0cnVlKSA/IHNldEF0dHIodGhpcy5zZWxlY3RFbC5uYXRpdmVFbGVtZW50LCAncmVhZG9ubHknLCAncmVhZG9ubHknKSA6IHJlbW92ZUF0dHIodGhpcy5zZWxlY3RFbC5uYXRpdmVFbGVtZW50LCAncmVhZG9ubHknKSA7XG4gICAgICAgIH1cbiAgICAgICAgc3VwZXIub25Qcm9wZXJ0eUNoYW5nZShrZXksIG52LCBvdik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogV2hlbiBjYXB0aW9uIGZsb2F0aW5nIGlzIGVuYWJsZWQgYW5kIHBsYWNlaG9sZGVyIGlzIGdpdmVuLCBkbyBub3Qgc2hvdyBwbGFjZWhvbGRlciB1bnRpbCB1c2VyIGZvY3VzZXMgb24gdGhlIGZpZWxkXG4gICAgICogV2hlbiBmb2N1c2VkIGFkZCB0aGUgcGxhY2Vob2xkZXIgdG8gdGhlIG9wdGlvbiB3aGljaCBpcyBzZWxlY3RlZFxuICAgICAqIE9uIGJsdXIsIHJlbW92ZSB0aGUgcGxhY2Vob2xkZXIgYW5kIGRvIG5vdCBhbmltYXRlIHRoZSBsYWJlbFxuICAgICAqIEBwYXJhbSAkZXZlbnQgZXZlbnQgcmVjZWl2ZWQgd2lsbCBiZSBlaXRoZXIgYSBibHVyIG9yIGZvY3VzIGV2ZW50XG4gICAgICovXG4gICAgY2hlY2tGb3JGbG9hdGluZ0xhYmVsKCRldmVudCkge1xuICAgICAgICBjb25zdCBjYXB0aW9uRWwgPSAkKHRoaXMuc2VsZWN0RWwubmF0aXZlRWxlbWVudCkuY2xvc2VzdCgnLmFwcC1jb21wb3NpdGUtd2lkZ2V0LmNhcHRpb24tZmxvYXRpbmcnKTtcbiAgICAgICAgaWYgKGNhcHRpb25FbC5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBpZiAoJGV2ZW50LnR5cGUgPT09ICdmb2N1cycgJiYgKCF0aGlzLmRhdGF2YWx1ZSB8fCAodGhpcy5kYXRhdmFsdWUgJiYgJCh0aGlzLnNlbGVjdEVsKS5maW5kKCdzZWxlY3Qgb3B0aW9uOnNlbGVjdGVkJykudGV4dCgpID09PSAnJyAmJiB0aGlzLnBsYWNlaG9sZGVyKSkpIHtcbiAgICAgICAgICAgICAgICAkKHRoaXMuc2VsZWN0RWwubmF0aXZlRWxlbWVudCkuZmluZCgnb3B0aW9uOmZpcnN0JykudGV4dCh0aGlzLnBsYWNlaG9sZGVyKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoIXRoaXMuZGF0YXZhbHVlKSB7XG4gICAgICAgICAgICAgICAgJCh0aGlzLnNlbGVjdEVsLm5hdGl2ZUVsZW1lbnQpLmZpbmQoJ29wdGlvbjpzZWxlY3RlZCcpLnRleHQoJycpO1xuICAgICAgICAgICAgICAgIGNhcHRpb25FbC5yZW1vdmVDbGFzcygnZmxvYXQtYWN0aXZlJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8c2VsZWN0IHJvbGU9XCJsaXN0Ym94XCIgYXJpYS1oYXNwb3B1cD1cInRydWVcIiBhcmlhLWV4cGFuZGVkPVwiZmFsc2VcIiAjc2VsZWN0XG4gICAgICAgIGZvY3VzLXRhcmdldFxuICAgICAgICBbbmdDbGFzc109XCJbJ2FwcC1zZWxlY3QgZm9ybS1jb250cm9sJywgY2xhc3NdXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgICAgW3RhYmluZGV4XT1cInRhYmluZGV4XCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJtb2RlbEJ5S2V5XCJcbiAgICAgICAgW211bHRpcGxlXT1cIm11bHRpcGxlXCJcbiAgICAgICAgKGNoYW5nZSk9XCJvblNlbGVjdFZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAoZm9jdXMpPVwiY2hlY2tGb3JGbG9hdGluZ0xhYmVsKCRldmVudClcIlxuICAgICAgICAoYmx1cik9XCJpbnZva2VPblRvdWNoZWQoJGV2ZW50KTsgY2hlY2tGb3JGbG9hdGluZ0xhYmVsKCRldmVudClcIlxuICAgICAgICBbYXR0ci5uYW1lXT1cIm5hbWVcIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImhpbnRcIlxuICAgICAgICBbYXR0ci5hcmlhLW11bHRpc2VsZWN0YWJsZV09XCJtdWx0aXBsZVwiXG4gICAgICAgIFthdXRvZm9jdXNdPVwiYXV0b2ZvY3VzXCJcbj5cbiAgICA8b3B0aW9uIHNlbGVjdGVkXG4gICAgdmFsdWU9XCJ1bmRlZmluZWRcIlxuICAgIFt0ZXh0Q29udGVudF09XCJwbGFjZWhvbGRlclwiXG4gICAgW2hpZGRlbl09XCIhcGxhY2Vob2xkZXJcIj48L29wdGlvbj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJncm91cGJ5XCI+XG4gICAgICAgIDxvcHRncm91cCAqbmdGb3I9XCJsZXQgZ3JvdXBPYmogb2YgZ3JvdXBlZERhdGFcIlxuICAgICAgICAgICAgW2xhYmVsXT1cImdyb3VwT2JqLmtleVwiPlxuICAgICAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBncm91cE9iai5kYXRhO1wiXG4gICAgICAgICAgICAgICAgW3ZhbHVlXT1cIml0ZW0ua2V5XCJcbiAgICAgICAgICAgICAgICBbc2VsZWN0ZWRdPVwiaXRlbS5zZWxlY3RlZFwiXG4gICAgICAgICAgICAgICAgW3RleHRDb250ZW50XT1cIml0ZW0ubGFiZWxcIlxuICAgICAgICAgICAgICAgIHJvbGU9XCJvcHRpb25cIj48L29wdGlvbj5cbiAgICAgICAgPC9vcHRncm91cD5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhZ3JvdXBieVwiPlxuICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRhdGFzZXRJdGVtc1wiXG4gICAgICAgICAgICBbdmFsdWVdPVwiaXRlbS5rZXlcIlxuICAgICAgICAgICAgW3NlbGVjdGVkXT1cIml0ZW0uc2VsZWN0ZWRcIlxuICAgICAgICAgICAgW3RleHRDb250ZW50XT1cIml0ZW0ubGFiZWxcIlxuICAgICAgICAgICAgcm9sZT1cIm9wdGlvblwiPjwvb3B0aW9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9zZWxlY3Q+XG4iXX0=
|
|
194
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvd2lkZ2V0cy9pbnB1dC9kZWZhdWx0L3NyYy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvd2lkZ2V0cy9pbnB1dC9kZWZhdWx0L3NyYy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hGLE9BQU8sRUFBQyxhQUFhLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRSxPQUFPLEVBQUMsR0FBRyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUNyRSxPQUFPLEVBQUMsU0FBUyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzFFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBRTFFLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7SUNTekMsNEJBSWlDOzs7SUFGakMsZ0RBQTJCLCtCQUFBOzs7SUFPbkIsNEJBSTJCOzs7SUFIdkIsbUNBQWtCLDhCQUFBLDhCQUFBOzs7SUFIMUIsbUNBQzJCO0lBQ3ZCLGdHQUkyQjtJQUMvQixpQkFBVzs7O0lBTlAsdUNBQXNCO0lBQ0csZUFBaUI7SUFBakIsMENBQWlCOzs7SUFIbEQsNkJBQThCO0lBQzFCLHlGQU9XO0lBQ2YsMEJBQWU7OztJQVJvQixlQUFjO0lBQWQsNENBQWM7OztJQVc3Qyw0QkFJMkI7OztJQUh2QixtQ0FBa0IsOEJBQUEs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Q3pDO2lCQUNKO2FBRUo7U0FDSjtJQUNMLENBQUM7Z0ZBakhRLGVBQWU7b0VBQWYsZUFBZTttQ0FlbUIsVUFBVTs7Ozs4Q0FyQjFDO2dCQUNQLFNBQVMsQ0FBQyxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxDQUFDO2dCQUNuRCxTQUFTLENBQUMsZUFBZSxFQUFFLGFBQWEsRUFBRSxJQUFJLENBQUM7Z0JBQy9DLGtCQUFrQixDQUFDLGVBQWUsQ0FBQzthQUN0QztZQ3BCTCxvQ0FlQztZQVRPLDZJQUF3Qix1RkFFZCwrQkFBMkIsSUFGYixxRkFHZixpQ0FBNkIsSUFIZCw0RUFJaEIsMkJBQXVCLFNBQUUsaUNBQTZCLElBSnRDO1lBVTVCLHNFQUlpQztZQUVqQyxrRkFTZTtZQUVmLGtGQU1lO1lBQ25CLGlCQUFTOztZQXRDRCxnRUFBOEMsMEJBQUEsMEJBQUEsMEJBQUEsMkJBQUEsMEJBQUEsNEJBQUE7WUFTOUMsZ0NBQWtCLHdCQUFBLHNDQUFBO1lBUXJCLGVBQXVDO1lBQXZDLGdFQUF1QztZQUd6QixlQUFhO1lBQWIsa0NBQWE7WUFXYixlQUFjO1lBQWQsbUNBQWM7Ozt1RkRYcEIsZUFBZTtjQVQzQixTQUFTOzJCQUNJLFdBQVcsYUFFVjtvQkFDUCxTQUFTLGtCQUFrQixpQkFBaUIsRUFBRSxJQUFJLENBQUM7b0JBQ25ELFNBQVMsa0JBQWtCLGFBQWEsRUFBRSxJQUFJLENBQUM7b0JBQy9DLGtCQUFrQixpQkFBaUI7aUJBQ3RDOzZFQWlCd0QsUUFBUTtrQkFBaEUsU0FBUzttQkFBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5qZWN0b3IsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7QXBwLCBEYXRhU291cmNlLCBpc0lvcywgcmVtb3ZlQXR0ciwgc2V0QXR0cn0gZnJvbSAnQHdtL2NvcmUnO1xuaW1wb3J0IHtwcm92aWRlQXMsIHByb3ZpZGVBc1dpZGdldFJlZiwgc3R5bGVyfSBmcm9tICdAd20vY29tcG9uZW50cy9iYXNlJztcbmltcG9ydCB7RGF0YXNldEF3YXJlRm9ybUNvbXBvbmVudH0gZnJvbSAnLi4vZGF0YXNldC1hd2FyZS1mb3JtLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7cmVnaXN0ZXJQcm9wc30gZnJvbSAnLi9zZWxlY3QucHJvcHMnO1xuXG5kZWNsYXJlIGNvbnN0IF87XG5cbmNvbnN0IFdJREdFVF9DT05GSUcgPSB7d2lkZ2V0VHlwZTogJ3dtLXNlbGVjdCcsIGhvc3RDbGFzczogJ2FwcC1zZWxlY3Qtd3JhcHBlcid9O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3dtLXNlbGVjdCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHByb3ZpZGVBcyhTZWxlY3RDb21wb25lbnQsIE5HX1ZBTFVFX0FDQ0VTU09SLCB0cnVlKSxcbiAgICAgICAgcHJvdmlkZUFzKFNlbGVjdENvbXBvbmVudCwgTkdfVkFMSURBVE9SUywgdHJ1ZSksXG4gICAgICAgIHByb3ZpZGVBc1dpZGdldFJlZihTZWxlY3RDb21wb25lbnQpXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBTZWxlY3RDb21wb25lbnQgZXh0ZW5kcyBEYXRhc2V0QXdhcmVGb3JtQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgc3RhdGljIGluaXRpYWxpemVQcm9wcyA9IHJlZ2lzdGVyUHJvcHMoKTtcblxuICAgIHB1YmxpYyByZWFkb25seTogYm9vbGVhbjtcbiAgICBwdWJsaWMgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgICBwdWJsaWMgbmF2c2VhcmNoYmFyOiBhbnk7XG4gICAgcHVibGljIGNsYXNzOiBhbnk7XG4gICAgcHVibGljIHJlcXVpcmVkOiBib29sZWFuO1xuICAgIHB1YmxpYyBkaXNhYmxlZDogYm9vbGVhbjtcbiAgICBwdWJsaWMgdGFiaW5kZXg6IGFueTtcbiAgICBwdWJsaWMgbmFtZTogc3RyaW5nO1xuICAgIHB1YmxpYyBhdXRvZm9jdXM6IGJvb2xlYW47XG4gICAgcHVibGljIGhpbnQ6IHN0cmluZztcbiAgICBwcml2YXRlIGFwcDogQXBwO1xuXG4gICAgQFZpZXdDaGlsZCgnc2VsZWN0JywgeyBzdGF0aWM6IHRydWUsIHJlYWQ6IEVsZW1lbnRSZWYgfSkgc2VsZWN0RWw6IEVsZW1lbnRSZWY7XG5cbiAgICBzZXQgZGF0YXNvdXJjZShkcykge1xuICAgICAgICBpZiAoZHMgJiYgZHMuZXhlY3V0ZSAmJiBkcy5leGVjdXRlKERhdGFTb3VyY2UuT3BlcmF0aW9uLklTX0JPVU5EX1RPX0xPQ0FMRSkpIHtcbiAgICAgICAgICAgIHRoaXMuZGF0YXZhbHVlID0gZHMuZXhlY3V0ZShEYXRhU291cmNlLk9wZXJhdGlvbi5HRVRfREVGQVVMVF9MT0NBTEUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoaW5qOiBJbmplY3RvciwgYXBwOiBBcHApIHtcbiAgICAgICAgc3VwZXIoaW5qLCBXSURHRVRfQ09ORklHKTtcbiAgICAgICAgdGhpcy5hcHAgPSBhcHA7XG4gICAgICAgIHRoaXMuYWNjZXB0c0FycmF5ID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xuICAgICAgICBzdHlsZXIodGhpcy5zZWxlY3RFbC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50LCB0aGlzKTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNoZWNrRm9yRmxvYXRpbmdMYWJlbChudWxsKTtcbiAgICAgICAgfSwgMTApXG5cbiAgICB9XG5cbiAgICAvLyBDaGFuZ2UgZXZlbnQgaXMgcmVnaXN0ZXJlZCBmcm9tIHRoZSB0ZW1wbGF0ZSwgUHJldmVudCB0aGUgZnJhbWV3b3JrIGZyb20gcmVnaXN0ZXJpbmcgb25lIG1vcmUgZXZlbnRcbiAgICBwcm90ZWN0ZWQgaGFuZGxlRXZlbnQobm9kZTogSFRNTEVsZW1lbnQsIGV2ZW50TmFtZTogc3RyaW5nLCBldmVudENhbGxiYWNrOiBGdW5jdGlvbiwgbG9jYWxzOiBhbnkpIHtcbiAgICAgICAgaWYgKCFfLmluY2x1ZGVzKFsnYmx1cicsICdjaGFuZ2UnXSwgZXZlbnROYW1lKSkge1xuICAgICAgICAgICAgc3VwZXIuaGFuZGxlRXZlbnQodGhpcy5zZWxlY3RFbC5uYXRpdmVFbGVtZW50LCBldmVudE5hbWUsIGV2ZW50Q2FsbGJhY2ssIGxvY2Fscyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblNlbGVjdFZhbHVlQ2hhbmdlKCRldmVudCkge1xuICAgICAgICBpZiAodGhpcy5yZWFkb25seSkge1xuICAgICAgICAgICAgaWYgKHRoaXMucGxhY2Vob2xkZXIpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdEVsLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLnBsYWNlaG9sZGVyO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdEVsLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuZGF0YXZhbHVlID0gKHRoaXMgYXMgYW55KS5wcmV2RGF0YXZhbHVlO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaW52b2tlT25Ub3VjaGVkKCk7XG4gICAgICAgIC8vIGludm9rZSBvbiBkYXRhdmFsdWUgY2hhbmdlLlxuICAgICAgICB0aGlzLmludm9rZU9uQ2hhbmdlKHRoaXMuZGF0YXZhbHVlLCAkZXZlbnQgfHwge30sIHRydWUpO1xuICAgIH1cblxuICAgIG9uUHJvcGVydHlDaGFuZ2Uoa2V5OiBzdHJpbmcsIG52OiBhbnksIG92PzogYW55KSB7XG4gICAgICAgIGlmIChrZXkgPT09ICdyZXF1aXJlZCcpICB7XG4gICAgICAgICAgICB0aGlzLl9vbkNoYW5nZSh0aGlzLmRhdGF2YWx1ZSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGtleSA9PT0gJ2NsYXNzJyB8fCAga2V5ID09PSAndGFiaW5kZXgnKSB7XG4gICAgICAgICAgICBpZihrZXkgPT09ICdjbGFzcycpIHtcbiAgICAgICAgICAgICAgICAvLyBBZnRlciBORzE1IHVwZ3JhZGUgbmctaW52YWxpZCBjbGFzcyBpcyBhZGRlZCBldmVuIHRoZSBmaWVsZCBpcyB2YWxpZCwgc28gd2UgYXJlIHJlbW92aW5nIHRoZSBuZy1pbnZhbGlkIG1hbnVhbGx5XG4gICAgICAgICAgICAgICAgY29uc3QgaXNOZ1VudG91Y2hlZFZhbGlkID0gdGhpcy5zZWxlY3RFbC5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnbmctdW50b3VjaGVkJykgJiYgdGhpcy5zZWxlY3RFbC5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnbmctdmFsaWQnKVxuICAgICAgICAgICAgICAgIGlmKGlzTmdVbnRvdWNoZWRWYWxpZCAmJiBudi5pbmNsdWRlcygnbmctdW50b3VjaGVkJykgJiYgbnYuaW5jbHVkZXMoJ25nLWludmFsaWQnKSkge1xuICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYodGhpcy5zZWxlY3RFbC5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnbmctdW50b3VjaGVkJykgJiYgdGhpcy5zZWxlY3RFbC5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnbmctdmFsaWQnKSAmJiB0aGlzLnNlbGVjdEVsLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCduZy1pbnZhbGlkJykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdEVsLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSgnbmctaW52YWxpZCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSBpZiAoa2V5ID09PSAncmVhZG9ubHknKSB7XG4gICAgICAgICAgICAgKG52ID09PSB0cnVlKSA/IHNldEF0dHIodGhpcy5zZWxlY3RFbC5uYXRpdmVFbGVtZW50LCAncmVhZG9ubHknLCAncmVhZG9ubHknKSA6IHJlbW92ZUF0dHIodGhpcy5zZWxlY3RFbC5uYXRpdmVFbGVtZW50LCAncmVhZG9ubHknKSA7XG4gICAgICAgIH1cbiAgICAgICAgc3VwZXIub25Qcm9wZXJ0eUNoYW5nZShrZXksIG52LCBvdik7XG4gICAgfVxuXG4gICAgaXNJb3NQbGF0Zm9ybSgpIHtcbiAgICAgICAgcmV0dXJuIGlzSW9zKCk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFdoZW4gY2FwdGlvbiBmbG9hdGluZyBpcyBlbmFibGVkIGFuZCBwbGFjZWhvbGRlciBpcyBnaXZlbiwgZG8gbm90IHNob3cgcGxhY2Vob2xkZXIgdW50aWwgdXNlciBmb2N1c2VzIG9uIHRoZSBmaWVsZFxuICAgICAqIFdoZW4gZm9jdXNlZCBhZGQgdGhlIHBsYWNlaG9sZGVyIHRvIHRoZSBvcHRpb24gd2hpY2ggaXMgc2VsZWN0ZWRcbiAgICAgKiBPbiBibHVyLCByZW1vdmUgdGhlIHBsYWNlaG9sZGVyIGFuZCBkbyBub3QgYW5pbWF0ZSB0aGUgbGFiZWxcbiAgICAgKiBAcGFyYW0gJGV2ZW50IGV2ZW50IHJlY2VpdmVkIHdpbGwgYmUgZWl0aGVyIGEgYmx1ciBvciBmb2N1cyBldmVudFxuICAgICAqL1xuICAgIGNoZWNrRm9yRmxvYXRpbmdMYWJlbCgkZXZlbnQpIHtcbiAgICAgICAgY29uc3QgY2FwdGlvbkVsID0gJCh0aGlzLnNlbGVjdEVsLm5hdGl2ZUVsZW1lbnQpLmNsb3Nlc3QoJy5hcHAtY29tcG9zaXRlLXdpZGdldC5jYXB0aW9uLWZsb2F0aW5nJyk7XG4gICAgICAgIGlmIChjYXB0aW9uRWwubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgaWYgKCghJGV2ZW50IHx8ICRldmVudC50eXBlID09PSAnZm9jdXMnKSAmJiAoKCQodGhpcy5zZWxlY3RFbCkuZmluZCgnc2VsZWN0IG9wdGlvbjpzZWxlY3RlZCcpLnRleHQoKSA9PT0gJycgJiYgKHRoaXMucGxhY2Vob2xkZXIgfHwgdGhpcy5kYXRhdmFsdWUgfHwgdGhpcy5pc0lvc1BsYXRmb3JtKCkpKSkpIHtcbiAgICAgICAgICAgICAgICBpZiAoISRldmVudCAmJiAodGhpcy5wbGFjZWhvbGRlciB8fCB0aGlzLmRhdGF2YWx1ZSB8fCB0aGlzLmlzSW9zUGxhdGZvcm0oKSkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hcHAubm90aWZ5KCdjYXB0aW9uUG9zaXRpb25BbmltYXRlJywge2lzU2VsZWN0OiB0cnVlLCBuYXRpdmVFbDogY2FwdGlvbkVsfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0aGlzLnBsYWNlaG9sZGVyKSB7XG4gICAgICAgICAgICAgICAgICAgICQodGhpcy5zZWxlY3RFbC5uYXRpdmVFbGVtZW50KS5maW5kKCdvcHRpb246Zmlyc3QnKS50ZXh0KHRoaXMucGxhY2Vob2xkZXIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSBpZiAoIXRoaXMuZGF0YXZhbHVlKSB7XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLnBsYWNlaG9sZGVyKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vICAkKHRoaXMuc2VsZWN0RWwubmF0aXZlRWxlbWVudCkuZmluZCgnb3B0aW9uOmZpcnN0JykudGV4dCgnJyk7XG4gICAgICAgICAgICAgICAgICAgIGlmICghdGhpcy5pc0lvc1BsYXRmb3JtKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhcHRpb25FbC5yZW1vdmVDbGFzcygnZmxvYXQtYWN0aXZlJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxzZWxlY3Qgcm9sZT1cImxpc3Rib3hcIiBhcmlhLWhhc3BvcHVwPVwidHJ1ZVwiIGFyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiICNzZWxlY3RcbiAgICAgICAgZm9jdXMtdGFyZ2V0XG4gICAgICAgIFtuZ0NsYXNzXT1cIlsnYXBwLXNlbGVjdCBmb3JtLWNvbnRyb2wnLCBjbGFzc11cIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICBbdGFiaW5kZXhdPVwidGFiaW5kZXhcIlxuICAgICAgICBbKG5nTW9kZWwpXT1cIm1vZGVsQnlLZXlcIlxuICAgICAgICBbbXVsdGlwbGVdPVwibXVsdGlwbGVcIlxuICAgICAgICAoY2hhbmdlKT1cIm9uU2VsZWN0VmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIChmb2N1cyk9XCJjaGVja0ZvckZsb2F0aW5nTGFiZWwoJGV2ZW50KVwiXG4gICAgICAgIChibHVyKT1cImludm9rZU9uVG91Y2hlZCgkZXZlbnQpOyBjaGVja0ZvckZsb2F0aW5nTGFiZWwoJGV2ZW50KVwiXG4gICAgICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiaGludFwiXG4gICAgICAgIFthdHRyLmFyaWEtbXVsdGlzZWxlY3RhYmxlXT1cIm11bHRpcGxlXCJcbiAgICAgICAgW2F1dG9mb2N1c109XCJhdXRvZm9jdXNcIlxuPlxuICAgIDxvcHRpb25cbiAgICB2YWx1ZT1cInVuZGVmaW5lZFwiXG4gICAgW3RleHRDb250ZW50XT1cInBsYWNlaG9sZGVyXCJcbiAgICAqbmdJZj1cIiFpc0lvc1BsYXRmb3JtKCkgfHwgISFwbGFjZWhvbGRlclwiXG4gICAgW2hpZGRlbl09XCIhcGxhY2Vob2xkZXJcIj48L29wdGlvbj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJncm91cGJ5XCI+XG4gICAgICAgIDxvcHRncm91cCAqbmdGb3I9XCJsZXQgZ3JvdXBPYmogb2YgZ3JvdXBlZERhdGFcIlxuICAgICAgICAgICAgW2xhYmVsXT1cImdyb3VwT2JqLmtleVwiPlxuICAgICAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBncm91cE9iai5kYXRhO1wiXG4gICAgICAgICAgICAgICAgW3ZhbHVlXT1cIml0ZW0ua2V5XCJcbiAgICAgICAgICAgICAgICBbc2VsZWN0ZWRdPVwiaXRlbS5zZWxlY3RlZFwiXG4gICAgICAgICAgICAgICAgW3RleHRDb250ZW50XT1cIml0ZW0ubGFiZWxcIlxuICAgICAgICAgICAgICAgIHJvbGU9XCJvcHRpb25cIj48L29wdGlvbj5cbiAgICAgICAgPC9vcHRncm91cD5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhZ3JvdXBieVwiPlxuICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRhdGFzZXRJdGVtc1wiXG4gICAgICAgICAgICBbdmFsdWVdPVwiaXRlbS5rZXlcIlxuICAgICAgICAgICAgW3NlbGVjdGVkXT1cIml0ZW0uc2VsZWN0ZWRcIlxuICAgICAgICAgICAgW3RleHRDb250ZW50XT1cIml0ZW0ubGFiZWxcIlxuICAgICAgICAgICAgcm9sZT1cIm9wdGlvblwiPjwvb3B0aW9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9zZWxlY3Q+XG4iXX0=
|
|
@@ -9,7 +9,7 @@ import { IMaskDirective, IMaskModule } from 'angular-imask';
|
|
|
9
9
|
import * as i2 from '@wm/components/base';
|
|
10
10
|
import { register, PROP_STRING, PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, DISPLAY_TYPE, StylableComponent, styler, provideAsWidgetRef, APPLY_STYLES_TYPE, WidgetConfig, registerFormWidget, provideAs, extractDataAsArray, ToDatePipe, ALLFIELDS, getOrderedDataset, convertDataToObject, transformDataWithKeys, transformFormData, getUniqObjsByDataField, groupData, handleHeaderClick, toggleAllHeaders, WidgetRef, INPUTMODE, WmComponentsModule } from '@wm/components/base';
|
|
11
11
|
import * as i1$1 from '@wm/core';
|
|
12
|
-
import { DataSource, FormWidgetType, isDefined, toggleClass, AppDefaults, debounce, $appDigest, noop, isEqualWithFields, toBoolean, setListClass, switchClass, addForIdAttributes, addClass, setAttr, removeAttr, setCSS } from '@wm/core';
|
|
12
|
+
import { DataSource, FormWidgetType, isDefined, toggleClass, AppDefaults, debounce, $appDigest, noop, isEqualWithFields, toBoolean, setListClass, switchClass, addForIdAttributes, addClass, setAttr, removeAttr, isIos, setCSS } from '@wm/core';
|
|
13
13
|
import { Subject } from 'rxjs';
|
|
14
14
|
|
|
15
15
|
const registerProps$e = () => {
|
|
@@ -2064,45 +2064,51 @@ const registerProps$7 = () => {
|
|
|
2064
2064
|
};
|
|
2065
2065
|
|
|
2066
2066
|
const _c0$7 = ["select"];
|
|
2067
|
+
function SelectComponent_option_2_Template(rf, ctx) { if (rf & 1) {
|
|
2068
|
+
i0.ɵɵelement(0, "option", 4);
|
|
2069
|
+
} if (rf & 2) {
|
|
2070
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
2071
|
+
i0.ɵɵproperty("textContent", ctx_r1.placeholder)("hidden", !ctx_r1.placeholder);
|
|
2072
|
+
} }
|
|
2067
2073
|
function SelectComponent_ng_container_3_optgroup_1_option_1_Template(rf, ctx) { if (rf & 1) {
|
|
2068
|
-
i0.ɵɵelement(0, "option",
|
|
2074
|
+
i0.ɵɵelement(0, "option", 8);
|
|
2069
2075
|
} if (rf & 2) {
|
|
2070
|
-
const
|
|
2071
|
-
i0.ɵɵproperty("value",
|
|
2076
|
+
const item_r7 = ctx.$implicit;
|
|
2077
|
+
i0.ɵɵproperty("value", item_r7.key)("selected", item_r7.selected)("textContent", item_r7.label);
|
|
2072
2078
|
} }
|
|
2073
2079
|
function SelectComponent_ng_container_3_optgroup_1_Template(rf, ctx) { if (rf & 1) {
|
|
2074
|
-
i0.ɵɵelementStart(0, "optgroup",
|
|
2075
|
-
i0.ɵɵtemplate(1, SelectComponent_ng_container_3_optgroup_1_option_1_Template, 1, 3, "option",
|
|
2080
|
+
i0.ɵɵelementStart(0, "optgroup", 6);
|
|
2081
|
+
i0.ɵɵtemplate(1, SelectComponent_ng_container_3_optgroup_1_option_1_Template, 1, 3, "option", 7);
|
|
2076
2082
|
i0.ɵɵelementEnd();
|
|
2077
2083
|
} if (rf & 2) {
|
|
2078
|
-
const
|
|
2079
|
-
i0.ɵɵproperty("label",
|
|
2084
|
+
const groupObj_r5 = ctx.$implicit;
|
|
2085
|
+
i0.ɵɵproperty("label", groupObj_r5.key);
|
|
2080
2086
|
i0.ɵɵadvance(1);
|
|
2081
|
-
i0.ɵɵproperty("ngForOf",
|
|
2087
|
+
i0.ɵɵproperty("ngForOf", groupObj_r5.data);
|
|
2082
2088
|
} }
|
|
2083
2089
|
function SelectComponent_ng_container_3_Template(rf, ctx) { if (rf & 1) {
|
|
2084
2090
|
i0.ɵɵelementContainerStart(0);
|
|
2085
|
-
i0.ɵɵtemplate(1, SelectComponent_ng_container_3_optgroup_1_Template, 2, 2, "optgroup",
|
|
2091
|
+
i0.ɵɵtemplate(1, SelectComponent_ng_container_3_optgroup_1_Template, 2, 2, "optgroup", 5);
|
|
2086
2092
|
i0.ɵɵelementContainerEnd();
|
|
2087
2093
|
} if (rf & 2) {
|
|
2088
|
-
const
|
|
2094
|
+
const ctx_r2 = i0.ɵɵnextContext();
|
|
2089
2095
|
i0.ɵɵadvance(1);
|
|
2090
|
-
i0.ɵɵproperty("ngForOf",
|
|
2096
|
+
i0.ɵɵproperty("ngForOf", ctx_r2.groupedData);
|
|
2091
2097
|
} }
|
|
2092
2098
|
function SelectComponent_ng_container_4_option_1_Template(rf, ctx) { if (rf & 1) {
|
|
2093
|
-
i0.ɵɵelement(0, "option",
|
|
2099
|
+
i0.ɵɵelement(0, "option", 8);
|
|
2094
2100
|
} if (rf & 2) {
|
|
2095
|
-
const
|
|
2096
|
-
i0.ɵɵproperty("value",
|
|
2101
|
+
const item_r9 = ctx.$implicit;
|
|
2102
|
+
i0.ɵɵproperty("value", item_r9.key)("selected", item_r9.selected)("textContent", item_r9.label);
|
|
2097
2103
|
} }
|
|
2098
2104
|
function SelectComponent_ng_container_4_Template(rf, ctx) { if (rf & 1) {
|
|
2099
2105
|
i0.ɵɵelementContainerStart(0);
|
|
2100
|
-
i0.ɵɵtemplate(1, SelectComponent_ng_container_4_option_1_Template, 1, 3, "option",
|
|
2106
|
+
i0.ɵɵtemplate(1, SelectComponent_ng_container_4_option_1_Template, 1, 3, "option", 7);
|
|
2101
2107
|
i0.ɵɵelementContainerEnd();
|
|
2102
2108
|
} if (rf & 2) {
|
|
2103
|
-
const
|
|
2109
|
+
const ctx_r3 = i0.ɵɵnextContext();
|
|
2104
2110
|
i0.ɵɵadvance(1);
|
|
2105
|
-
i0.ɵɵproperty("ngForOf",
|
|
2111
|
+
i0.ɵɵproperty("ngForOf", ctx_r3.datasetItems);
|
|
2106
2112
|
} }
|
|
2107
2113
|
const _c1$6 = function (a1) { return ["app-select form-control", a1]; };
|
|
2108
2114
|
const WIDGET_CONFIG$7 = { widgetType: 'wm-select', hostClass: 'app-select-wrapper' };
|
|
@@ -2113,13 +2119,17 @@ class SelectComponent extends DatasetAwareFormComponent {
|
|
|
2113
2119
|
this.datavalue = ds.execute(DataSource.Operation.GET_DEFAULT_LOCALE);
|
|
2114
2120
|
}
|
|
2115
2121
|
}
|
|
2116
|
-
constructor(inj) {
|
|
2122
|
+
constructor(inj, app) {
|
|
2117
2123
|
super(inj, WIDGET_CONFIG$7);
|
|
2124
|
+
this.app = app;
|
|
2118
2125
|
this.acceptsArray = true;
|
|
2119
2126
|
}
|
|
2120
2127
|
ngAfterViewInit() {
|
|
2121
2128
|
super.ngAfterViewInit();
|
|
2122
2129
|
styler(this.selectEl.nativeElement, this);
|
|
2130
|
+
setTimeout(() => {
|
|
2131
|
+
this.checkForFloatingLabel(null);
|
|
2132
|
+
}, 10);
|
|
2123
2133
|
}
|
|
2124
2134
|
// Change event is registered from the template, Prevent the framework from registering one more event
|
|
2125
2135
|
handleEvent(node, eventName, eventCallback, locals) {
|
|
@@ -2166,6 +2176,9 @@ class SelectComponent extends DatasetAwareFormComponent {
|
|
|
2166
2176
|
}
|
|
2167
2177
|
super.onPropertyChange(key, nv, ov);
|
|
2168
2178
|
}
|
|
2179
|
+
isIosPlatform() {
|
|
2180
|
+
return isIos();
|
|
2181
|
+
}
|
|
2169
2182
|
/**
|
|
2170
2183
|
* When caption floating is enabled and placeholder is given, do not show placeholder until user focuses on the field
|
|
2171
2184
|
* When focused add the placeholder to the option which is selected
|
|
@@ -2175,16 +2188,25 @@ class SelectComponent extends DatasetAwareFormComponent {
|
|
|
2175
2188
|
checkForFloatingLabel($event) {
|
|
2176
2189
|
const captionEl = $(this.selectEl.nativeElement).closest('.app-composite-widget.caption-floating');
|
|
2177
2190
|
if (captionEl.length > 0) {
|
|
2178
|
-
if ($event.type === 'focus' && (
|
|
2179
|
-
|
|
2191
|
+
if ((!$event || $event.type === 'focus') && (($(this.selectEl).find('select option:selected').text() === '' && (this.placeholder || this.datavalue || this.isIosPlatform())))) {
|
|
2192
|
+
if (!$event && (this.placeholder || this.datavalue || this.isIosPlatform())) {
|
|
2193
|
+
this.app.notify('captionPositionAnimate', { isSelect: true, nativeEl: captionEl });
|
|
2194
|
+
}
|
|
2195
|
+
if (this.placeholder) {
|
|
2196
|
+
$(this.selectEl.nativeElement).find('option:first').text(this.placeholder);
|
|
2197
|
+
}
|
|
2180
2198
|
}
|
|
2181
2199
|
else if (!this.datavalue) {
|
|
2182
|
-
|
|
2183
|
-
|
|
2200
|
+
if (!this.placeholder) {
|
|
2201
|
+
// $(this.selectEl.nativeElement).find('option:first').text('');
|
|
2202
|
+
if (!this.isIosPlatform()) {
|
|
2203
|
+
captionEl.removeClass('float-active');
|
|
2204
|
+
}
|
|
2205
|
+
}
|
|
2184
2206
|
}
|
|
2185
2207
|
}
|
|
2186
2208
|
}
|
|
2187
|
-
static { this.ɵfac = function SelectComponent_Factory(t) { return new (t || SelectComponent)(i0.ɵɵdirectiveInject(i0.Injector)); }; }
|
|
2209
|
+
static { this.ɵfac = function SelectComponent_Factory(t) { return new (t || SelectComponent)(i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(i1$1.App)); }; }
|
|
2188
2210
|
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SelectComponent, selectors: [["wm-select"]], viewQuery: function SelectComponent_Query(rf, ctx) { if (rf & 1) {
|
|
2189
2211
|
i0.ɵɵviewQuery(_c0$7, 7, ElementRef);
|
|
2190
2212
|
} if (rf & 2) {
|
|
@@ -2194,18 +2216,18 @@ class SelectComponent extends DatasetAwareFormComponent {
|
|
|
2194
2216
|
provideAs(SelectComponent, NG_VALUE_ACCESSOR, true),
|
|
2195
2217
|
provideAs(SelectComponent, NG_VALIDATORS, true),
|
|
2196
2218
|
provideAsWidgetRef(SelectComponent)
|
|
2197
|
-
]), i0.ɵɵInheritDefinitionFeature], decls: 5, vars:
|
|
2219
|
+
]), i0.ɵɵInheritDefinitionFeature], decls: 5, vars: 15, consts: [["role", "listbox", "aria-haspopup", "true", "aria-expanded", "false", "focus-target", "", 3, "ngClass", "disabled", "required", "tabindex", "ngModel", "multiple", "autofocus", "ngModelChange", "change", "focus", "blur"], ["select", ""], ["value", "undefined", 3, "textContent", "hidden", 4, "ngIf"], [4, "ngIf"], ["value", "undefined", 3, "textContent", "hidden"], [3, "label", 4, "ngFor", "ngForOf"], [3, "label"], ["role", "option", 3, "value", "selected", "textContent", 4, "ngFor", "ngForOf"], ["role", "option", 3, "value", "selected", "textContent"]], template: function SelectComponent_Template(rf, ctx) { if (rf & 1) {
|
|
2198
2220
|
i0.ɵɵelementStart(0, "select", 0, 1);
|
|
2199
2221
|
i0.ɵɵlistener("ngModelChange", function SelectComponent_Template_select_ngModelChange_0_listener($event) { return ctx.modelByKey = $event; })("change", function SelectComponent_Template_select_change_0_listener($event) { return ctx.onSelectValueChange($event); })("focus", function SelectComponent_Template_select_focus_0_listener($event) { return ctx.checkForFloatingLabel($event); })("blur", function SelectComponent_Template_select_blur_0_listener($event) { ctx.invokeOnTouched($event); return ctx.checkForFloatingLabel($event); });
|
|
2200
|
-
i0.ɵɵ
|
|
2222
|
+
i0.ɵɵtemplate(2, SelectComponent_option_2_Template, 1, 2, "option", 2);
|
|
2201
2223
|
i0.ɵɵtemplate(3, SelectComponent_ng_container_3_Template, 2, 1, "ng-container", 3);
|
|
2202
2224
|
i0.ɵɵtemplate(4, SelectComponent_ng_container_4_Template, 2, 1, "ng-container", 3);
|
|
2203
2225
|
i0.ɵɵelementEnd();
|
|
2204
2226
|
} if (rf & 2) {
|
|
2205
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(
|
|
2227
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(13, _c1$6, ctx.class))("disabled", ctx.disabled)("required", ctx.required)("tabindex", ctx.tabindex)("ngModel", ctx.modelByKey)("multiple", ctx.multiple)("autofocus", ctx.autofocus);
|
|
2206
2228
|
i0.ɵɵattribute("name", ctx.name)("aria-label", ctx.hint)("aria-multiselectable", ctx.multiple);
|
|
2207
2229
|
i0.ɵɵadvance(2);
|
|
2208
|
-
i0.ɵɵproperty("
|
|
2230
|
+
i0.ɵɵproperty("ngIf", !ctx.isIosPlatform() || !!ctx.placeholder);
|
|
2209
2231
|
i0.ɵɵadvance(1);
|
|
2210
2232
|
i0.ɵɵproperty("ngIf", ctx.groupby);
|
|
2211
2233
|
i0.ɵɵadvance(1);
|
|
@@ -2218,8 +2240,8 @@ class SelectComponent extends DatasetAwareFormComponent {
|
|
|
2218
2240
|
provideAs(SelectComponent, NG_VALUE_ACCESSOR, true),
|
|
2219
2241
|
provideAs(SelectComponent, NG_VALIDATORS, true),
|
|
2220
2242
|
provideAsWidgetRef(SelectComponent)
|
|
2221
|
-
], template: "<select role=\"listbox\" aria-haspopup=\"true\" aria-expanded=\"false\" #select\n focus-target\n [ngClass]=\"['app-select form-control', class]\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [tabindex]=\"tabindex\"\n [(ngModel)]=\"modelByKey\"\n [multiple]=\"multiple\"\n (change)=\"onSelectValueChange($event)\"\n (focus)=\"checkForFloatingLabel($event)\"\n (blur)=\"invokeOnTouched($event); checkForFloatingLabel($event)\"\n [attr.name]=\"name\"\n [attr.aria-label]=\"hint\"\n [attr.aria-multiselectable]=\"multiple\"\n [autofocus]=\"autofocus\"\n>\n <option
|
|
2222
|
-
}], function () { return [{ type: i0.Injector }]; }, { selectEl: [{
|
|
2243
|
+
], template: "<select role=\"listbox\" aria-haspopup=\"true\" aria-expanded=\"false\" #select\n focus-target\n [ngClass]=\"['app-select form-control', class]\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [tabindex]=\"tabindex\"\n [(ngModel)]=\"modelByKey\"\n [multiple]=\"multiple\"\n (change)=\"onSelectValueChange($event)\"\n (focus)=\"checkForFloatingLabel($event)\"\n (blur)=\"invokeOnTouched($event); checkForFloatingLabel($event)\"\n [attr.name]=\"name\"\n [attr.aria-label]=\"hint\"\n [attr.aria-multiselectable]=\"multiple\"\n [autofocus]=\"autofocus\"\n>\n <option\n value=\"undefined\"\n [textContent]=\"placeholder\"\n *ngIf=\"!isIosPlatform() || !!placeholder\"\n [hidden]=\"!placeholder\"></option>\n\n <ng-container *ngIf=\"groupby\">\n <optgroup *ngFor=\"let groupObj of groupedData\"\n [label]=\"groupObj.key\">\n <option *ngFor=\"let item of groupObj.data;\"\n [value]=\"item.key\"\n [selected]=\"item.selected\"\n [textContent]=\"item.label\"\n role=\"option\"></option>\n </optgroup>\n </ng-container>\n\n <ng-container *ngIf=\"!groupby\">\n <option *ngFor=\"let item of datasetItems\"\n [value]=\"item.key\"\n [selected]=\"item.selected\"\n [textContent]=\"item.label\"\n role=\"option\"></option>\n </ng-container>\n</select>\n" }]
|
|
2244
|
+
}], function () { return [{ type: i0.Injector }, { type: i1$1.App }]; }, { selectEl: [{
|
|
2223
2245
|
type: ViewChild,
|
|
2224
2246
|
args: ['select', { static: true, read: ElementRef }]
|
|
2225
2247
|
}] }); })();
|
|
@@ -3104,7 +3126,7 @@ class CaptionPositionDirective {
|
|
|
3104
3126
|
// isSelectMultiple is set to true when for select widget, multiple option is enabled
|
|
3105
3127
|
// Checking inputEl focus - when form is represented as dialog and the first field is automatically in focus
|
|
3106
3128
|
const isInputElFocused = this.inputEl && this.inputEl.is(':focus');
|
|
3107
|
-
if (data.displayVal || data.isFocused || data.isSelectMultiple || isInputElFocused) {
|
|
3129
|
+
if (data.isSelect || data.displayVal || data.isFocused || data.isSelectMultiple || isInputElFocused) {
|
|
3108
3130
|
data.nativeEl.addClass('float-active');
|
|
3109
3131
|
if (!data.displayVal && isInputElFocused) {
|
|
3110
3132
|
this.inputEl.attr('placeholder', this.placeholder);
|