aril 2.0.1-dev.3 → 2.0.1-dev.5
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/boot/bridge/src/mfe-bridge.d.ts +33 -0
- package/boot/config/apps/src/interfaces.d.ts +7 -1
- package/boot/config/apps/src/route-close.service.d.ts +8 -3
- package/boot/config/apps/src/route-permissions.d.ts +2 -2
- package/esm2022/boot/bridge/src/mfe-bridge.mjs +18 -1
- package/esm2022/boot/config/api/src/interfaces.mjs +3 -2
- package/esm2022/boot/config/apps/src/apps.service.mjs +2 -2
- package/esm2022/boot/config/apps/src/custom-route-reuse-strategy.class.mjs +4 -4
- package/esm2022/boot/config/apps/src/interfaces.mjs +2 -1
- package/esm2022/boot/config/apps/src/route-close.service.mjs +11 -4
- package/esm2022/boot/config/apps/src/route-permissions.mjs +24 -6
- package/esm2022/boot/config/plugins/src/plugins.service.mjs +7 -5
- package/esm2022/boot/host/src/bootstrap.mjs +5 -3
- package/esm2022/boot/mfe/src/bootstrap.mjs +15 -3
- package/esm2022/http/index.mjs +1 -2
- package/esm2022/http/src/serviceBase.mjs +4 -4
- package/esm2022/http/src/serviceStateMethods.mjs +9 -1
- package/esm2022/keycloak/src/auth.interceptor.mjs +5 -2
- package/esm2022/selection/aril-selection.mjs +5 -0
- package/esm2022/selection/index.mjs +2 -0
- package/esm2022/selection/src/interfaces.mjs +2 -0
- package/esm2022/selection/src/selection-group.service.mjs +195 -0
- package/esm2022/theme/layout/app/profileSidebar/modals/edit-profile-modal/edit-profile-modal.component.mjs +2 -2
- package/esm2022/theme/layout/index.mjs +4 -2
- package/esm2022/theme/layout/service/breadcrumb-publisher.service.mjs +12 -4
- package/esm2022/theme/layout/service/interfaces/interfaces.mjs +1 -1
- package/esm2022/ui/button/index.mjs +1 -2
- package/esm2022/ui/button/src/button.component.mjs +5 -2
- package/esm2022/ui/charts/index.mjs +1 -11
- package/esm2022/ui/lib/index.mjs +1 -4
- package/esm2022/ui/lib/src/form/form-error-message.directive.mjs +9 -5
- package/esm2022/ui/multiSelect/src/multi-select.component.mjs +25 -25
- package/esm2022/ui/relativeDateSelector/src/relative-date-selector.component.mjs +2 -2
- package/esm2022/ui/selectBox/src/select-box.component.mjs +11 -34
- package/esm2022/ui/table/src/table.component.mjs +10 -5
- package/esm2022/ui/value/src/value.component.mjs +3 -2
- package/esm2022/ui-business/enumPicker/src/enum-picker.component.mjs +14 -6
- package/esm2022/util/activity/aril-util-activity.mjs +5 -0
- package/esm2022/util/activity/index.mjs +4 -0
- package/esm2022/util/activity/src/activity.constants.mjs +4 -0
- package/esm2022/util/activity/src/activity.service.mjs +218 -0
- package/esm2022/util/activity/src/activity.types.mjs +2 -0
- package/esm2022/util/block/src/block.mjs +9 -25
- package/esm2022/util/pub-sub/src/pub-sub.service.mjs +10 -5
- package/fesm2022/{aril-app.component-s14ruALV.mjs → aril-app.component-MjG_tPEe.mjs} +2 -1
- package/fesm2022/{aril-app.component-s14ruALV.mjs.map → aril-app.component-MjG_tPEe.mjs.map} +1 -1
- package/fesm2022/aril-boot-bridge.mjs +17 -0
- package/fesm2022/aril-boot-bridge.mjs.map +1 -1
- package/fesm2022/aril-boot-config-api.mjs +2 -1
- package/fesm2022/aril-boot-config-api.mjs.map +1 -1
- package/fesm2022/aril-boot-config-apps.mjs +36 -12
- package/fesm2022/aril-boot-config-apps.mjs.map +1 -1
- package/fesm2022/aril-boot-config-plugins.mjs +6 -4
- package/fesm2022/aril-boot-config-plugins.mjs.map +1 -1
- package/fesm2022/aril-boot-host.mjs +4 -2
- package/fesm2022/aril-boot-host.mjs.map +1 -1
- package/fesm2022/{aril-boot-mfe-app.component-AS4MzEo2.mjs → aril-boot-mfe-app.component-DtspQ3J8.mjs} +3 -2
- package/fesm2022/{aril-boot-mfe-app.component-AS4MzEo2.mjs.map → aril-boot-mfe-app.component-DtspQ3J8.mjs.map} +1 -1
- package/fesm2022/{aril-boot-mfe-aril-boot-mfe-Ui9Cv3UC.mjs → aril-boot-mfe-aril-boot-mfe-lovoFcgw.mjs} +16 -4
- package/fesm2022/aril-boot-mfe-aril-boot-mfe-lovoFcgw.mjs.map +1 -0
- package/fesm2022/aril-boot-mfe.mjs +2 -1
- package/fesm2022/aril-boot-mfe.mjs.map +1 -1
- package/fesm2022/aril-http.mjs +11 -7
- package/fesm2022/aril-http.mjs.map +1 -1
- package/fesm2022/aril-keycloak.mjs +4 -1
- package/fesm2022/aril-keycloak.mjs.map +1 -1
- package/fesm2022/aril-selection.mjs +202 -0
- package/fesm2022/aril-selection.mjs.map +1 -0
- package/fesm2022/aril-theme-layout.mjs +14 -66
- package/fesm2022/aril-theme-layout.mjs.map +1 -1
- package/fesm2022/aril-ui-business-enumPicker.mjs +14 -6
- package/fesm2022/aril-ui-business-enumPicker.mjs.map +1 -1
- package/fesm2022/aril-ui-button.mjs +5 -17
- package/fesm2022/aril-ui-button.mjs.map +1 -1
- package/fesm2022/aril-ui-charts.mjs +4 -1302
- package/fesm2022/aril-ui-charts.mjs.map +1 -1
- package/fesm2022/aril-ui-lib.mjs +10 -98
- package/fesm2022/aril-ui-lib.mjs.map +1 -1
- package/fesm2022/aril-ui-multiSelect.mjs +24 -24
- package/fesm2022/aril-ui-multiSelect.mjs.map +1 -1
- package/fesm2022/aril-ui-relativeDateSelector.mjs +1 -1
- package/fesm2022/aril-ui-relativeDateSelector.mjs.map +1 -1
- package/fesm2022/aril-ui-selectBox.mjs +10 -33
- package/fesm2022/aril-ui-selectBox.mjs.map +1 -1
- package/fesm2022/aril-ui-table.mjs +9 -4
- package/fesm2022/aril-ui-table.mjs.map +1 -1
- package/fesm2022/aril-ui-value.mjs +2 -1
- package/fesm2022/aril-ui-value.mjs.map +1 -1
- package/fesm2022/aril-util-activity.mjs +228 -0
- package/fesm2022/aril-util-activity.mjs.map +1 -0
- package/fesm2022/aril-util-block.mjs +9 -25
- package/fesm2022/aril-util-block.mjs.map +1 -1
- package/fesm2022/aril-util-pub-sub.mjs +9 -4
- package/fesm2022/aril-util-pub-sub.mjs.map +1 -1
- package/fesm2022/aril.mjs +18 -5
- package/fesm2022/aril.mjs.map +1 -1
- package/http/index.d.ts +0 -1
- package/http/src/serviceStateMethods.d.ts +1 -0
- package/package.json +210 -234
- package/scripts/mf-shared.js +47 -0
- package/selection/index.d.ts +1 -0
- package/selection/src/interfaces.d.ts +8 -0
- package/{theme/layout/service → selection/src}/selection-group.service.d.ts +9 -5
- package/theme/layout/index.d.ts +1 -1
- package/theme/layout/index.ts +3 -1
- package/theme/layout/service/breadcrumb-publisher.service.ts +18 -8
- package/theme/layout/service/interfaces/interfaces.d.ts +3 -17
- package/theme/layout/service/interfaces/interfaces.ts +6 -18
- package/ui/button/index.d.ts +0 -1
- package/ui/button/src/button.component.d.ts +2 -0
- package/ui/charts/index.d.ts +0 -10
- package/ui/lib/index.d.ts +0 -3
- package/ui/lib/src/form/form-error-message.directive.d.ts +4 -3
- package/ui/multiSelect/src/multi-select.component.d.ts +4 -5
- package/ui/selectBox/src/select-box.component.d.ts +2 -7
- package/ui/table/src/table.component.d.ts +3 -2
- package/util/activity/index.d.ts +3 -0
- package/util/activity/src/activity.constants.d.ts +3 -0
- package/util/activity/src/activity.service.d.ts +35 -0
- package/util/activity/src/activity.types.d.ts +13 -0
- package/util/block/src/block.d.ts +4 -10
- package/util/pub-sub/src/pub-sub.service.d.ts +2 -2
- package/esm2022/http/src/serviceMockBase.mjs +0 -4
- package/esm2022/theme/layout/service/selection-group.service.mjs +0 -65
- package/esm2022/ui/button/src/split-button.component.mjs +0 -18
- package/esm2022/ui/charts/src/amCharts/column/column-chart.component.mjs +0 -124
- package/esm2022/ui/charts/src/amCharts/line/line-chart.component.mjs +0 -164
- package/esm2022/ui/charts/src/amCharts/pie/pie-chart.component.mjs +0 -116
- package/esm2022/ui/charts/src/highCharts/area/area-chart.component.mjs +0 -114
- package/esm2022/ui/charts/src/highCharts/bar/bar-chart.component.mjs +0 -100
- package/esm2022/ui/charts/src/highCharts/column/column-chart.component.mjs +0 -117
- package/esm2022/ui/charts/src/highCharts/heatmap/heatMap-chart.component.mjs +0 -252
- package/esm2022/ui/charts/src/highCharts/line/line-chart-series.component.mjs +0 -89
- package/esm2022/ui/charts/src/highCharts/line/line-chart.component.mjs +0 -82
- package/esm2022/ui/charts/src/highCharts/pie/pie-chart.component.mjs +0 -137
- package/esm2022/ui/charts/src/theme/theme.mjs +0 -54
- package/esm2022/ui/dxEditor/aril-ui-dxEditor.mjs +0 -5
- package/esm2022/ui/dxEditor/index.mjs +0 -2
- package/esm2022/ui/dxEditor/src/dx-editor.component.mjs +0 -26
- package/esm2022/ui/lib/src/form/form-field-builder.mjs +0 -23
- package/esm2022/ui/lib/src/input/common-input-validators.service.mjs +0 -49
- package/esm2022/ui/lib/src/input/input-disabled.directive.mjs +0 -25
- package/esm2022/ui/overlayPanel/aril-ui-overlayPanel.mjs +0 -5
- package/esm2022/ui/overlayPanel/index.mjs +0 -2
- package/esm2022/ui/overlayPanel/src/overlay-panel.component.mjs +0 -20
- package/esm2022/ui/tooltip/aril-ui-tooltip.mjs +0 -5
- package/esm2022/ui/tooltip/index.mjs +0 -2
- package/esm2022/ui/tooltip/src/tooltip-component.mjs +0 -23
- package/esm2022/ui/treeTable/aril-ui-treeTable.mjs +0 -5
- package/esm2022/ui/treeTable/index.mjs +0 -2
- package/esm2022/ui/treeTable/src/tree-table.component.mjs +0 -55
- package/esm2022/ui-business/operation-types-dialog/aril-ui-business-operation-types-dialog.mjs +0 -5
- package/esm2022/ui-business/operation-types-dialog/index.mjs +0 -2
- package/esm2022/ui-business/operation-types-dialog/src/operation-types-dialog.component.mjs +0 -76
- package/esm2022/util/unwrap/aril-util-unwrap.mjs +0 -5
- package/esm2022/util/unwrap/index.mjs +0 -2
- package/esm2022/util/unwrap/src/unwrap-tag.directive.mjs +0 -24
- package/fesm2022/aril-boot-mfe-aril-boot-mfe-Ui9Cv3UC.mjs.map +0 -1
- package/fesm2022/aril-ui-business-operation-types-dialog.mjs +0 -83
- package/fesm2022/aril-ui-business-operation-types-dialog.mjs.map +0 -1
- package/fesm2022/aril-ui-dxEditor.mjs +0 -33
- package/fesm2022/aril-ui-dxEditor.mjs.map +0 -1
- package/fesm2022/aril-ui-overlayPanel.mjs +0 -27
- package/fesm2022/aril-ui-overlayPanel.mjs.map +0 -1
- package/fesm2022/aril-ui-tooltip.mjs +0 -30
- package/fesm2022/aril-ui-tooltip.mjs.map +0 -1
- package/fesm2022/aril-ui-treeTable.mjs +0 -62
- package/fesm2022/aril-ui-treeTable.mjs.map +0 -1
- package/fesm2022/aril-util-unwrap.mjs +0 -31
- package/fesm2022/aril-util-unwrap.mjs.map +0 -1
- package/http/src/serviceMockBase.d.ts +0 -6
- package/theme/layout/service/selection-group.service.ts +0 -73
- package/ui/button/src/split-button.component.d.ts +0 -8
- package/ui/charts/src/amCharts/column/column-chart.component.d.ts +0 -25
- package/ui/charts/src/amCharts/line/line-chart.component.d.ts +0 -26
- package/ui/charts/src/amCharts/pie/pie-chart.component.d.ts +0 -24
- package/ui/charts/src/highCharts/area/area-chart.component.d.ts +0 -20
- package/ui/charts/src/highCharts/bar/bar-chart.component.d.ts +0 -26
- package/ui/charts/src/highCharts/column/column-chart.component.d.ts +0 -28
- package/ui/charts/src/highCharts/heatmap/heatMap-chart.component.d.ts +0 -32
- package/ui/charts/src/highCharts/line/line-chart-series.component.d.ts +0 -21
- package/ui/charts/src/highCharts/line/line-chart.component.d.ts +0 -21
- package/ui/charts/src/highCharts/pie/pie-chart.component.d.ts +0 -27
- package/ui/charts/src/theme/theme.d.ts +0 -5
- package/ui/dxEditor/index.d.ts +0 -1
- package/ui/dxEditor/src/dx-editor.component.d.ts +0 -11
- package/ui/lib/src/form/form-field-builder.d.ts +0 -8
- package/ui/lib/src/input/common-input-validators.service.d.ts +0 -20
- package/ui/lib/src/input/input-disabled.directive.d.ts +0 -9
- package/ui/overlayPanel/index.d.ts +0 -1
- package/ui/overlayPanel/src/overlay-panel.component.d.ts +0 -8
- package/ui/tooltip/index.d.ts +0 -1
- package/ui/tooltip/src/tooltip-component.d.ts +0 -14
- package/ui/treeTable/index.d.ts +0 -1
- package/ui/treeTable/src/tree-table.component.d.ts +0 -21
- package/ui-business/operation-types-dialog/index.d.ts +0 -1
- package/ui-business/operation-types-dialog/src/operation-types-dialog.component.d.ts +0 -28
- package/util/unwrap/index.d.ts +0 -1
- package/util/unwrap/src/unwrap-tag.directive.d.ts +0 -9
|
@@ -1,19 +1,17 @@
|
|
|
1
|
-
import { Component, effect, input
|
|
1
|
+
import { Component, computed, effect, input } from '@angular/core';
|
|
2
2
|
import { ReactiveFormsModule } from '@angular/forms';
|
|
3
3
|
import { MultiSelectModule } from 'primeng/multiselect';
|
|
4
|
-
import { firstValueFrom } from 'rxjs';
|
|
5
|
-
import { API_CONFIGS } from 'aril/boot/config/api';
|
|
6
4
|
import { BaseInputComponent, ValueAccessorDirective } from 'aril/ui/lib';
|
|
7
5
|
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "
|
|
6
|
+
import * as i1 from "aril/selection";
|
|
9
7
|
import * as i2 from "@ngneat/transloco";
|
|
10
8
|
import * as i3 from "aril/ui/lib";
|
|
11
9
|
import * as i4 from "@angular/forms";
|
|
12
10
|
import * as i5 from "primeng/multiselect";
|
|
13
11
|
export class MultiSelectComponent extends BaseInputComponent {
|
|
14
|
-
constructor(
|
|
12
|
+
constructor(selectionGroupService, translocoService) {
|
|
15
13
|
super();
|
|
16
|
-
this.
|
|
14
|
+
this.selectionGroupService = selectionGroupService;
|
|
17
15
|
this.translocoService = translocoService;
|
|
18
16
|
this.options = input([]);
|
|
19
17
|
this.optionLabel = input('text');
|
|
@@ -27,31 +25,33 @@ export class MultiSelectComponent extends BaseInputComponent {
|
|
|
27
25
|
this.tooltipPosition = input('top');
|
|
28
26
|
this.groupName = input('');
|
|
29
27
|
this.parentSelectionKey = input(null);
|
|
30
|
-
this.selectionItems = signal(null);
|
|
31
28
|
this.showClear = input(false);
|
|
29
|
+
// Enum item'ları artık merkezi SelectionGroupService cache'inden okunur (localStorage + cross-MFE
|
|
30
|
+
// dedupe). groupName yoksa null döner → template options() input'una düşer. Aynı groupName~parent
|
|
31
|
+
// için tekrar HTTP atılmaz; parentSelectionKey değişiminde stale-response race'ini servis yönetir.
|
|
32
|
+
this.selectionItems = computed(() => {
|
|
33
|
+
const groupName = this.groupName();
|
|
34
|
+
if (!groupName)
|
|
35
|
+
return null;
|
|
36
|
+
const key = `${groupName}~${this.parentSelectionKey() ?? 'ALL'}`;
|
|
37
|
+
const group = this.selectionGroupService.selectionGroups()[key];
|
|
38
|
+
return (group?.selectionItems?.map((item) => ({
|
|
39
|
+
key: item.selectionKey,
|
|
40
|
+
text: item.selectionDisplay,
|
|
41
|
+
parentSelectionKey: item.parentSelectionKey
|
|
42
|
+
})) ?? null);
|
|
43
|
+
});
|
|
32
44
|
effect(() => {
|
|
33
|
-
|
|
34
|
-
|
|
45
|
+
const groupName = this.groupName();
|
|
46
|
+
if (groupName)
|
|
47
|
+
this.selectionGroupService.fetchEnum(groupName, this.parentSelectionKey() ?? 'ALL');
|
|
35
48
|
});
|
|
36
49
|
}
|
|
37
|
-
|
|
38
|
-
const payload = {
|
|
39
|
-
groupName: this.groupName(),
|
|
40
|
-
parentSelectionKey: this.parentSelectionKey()
|
|
41
|
-
};
|
|
42
|
-
const hostApi = API_CONFIGS.api.replace(/\/[^\/]+\/v1$/, `/host/v1`);
|
|
43
|
-
const selectionGroup = await firstValueFrom(this.http.post(hostApi + '/selection-group/load', payload));
|
|
44
|
-
this.selectionItems.set(selectionGroup?.selectionItems.map((item) => ({
|
|
45
|
-
key: item.selectionKey,
|
|
46
|
-
text: item.selectionDisplay,
|
|
47
|
-
parentSelectionKey: item.parentSelectionKey
|
|
48
|
-
})));
|
|
49
|
-
}
|
|
50
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: MultiSelectComponent, deps: [{ token: i1.HttpClient }, { token: i2.TranslocoService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
50
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: MultiSelectComponent, deps: [{ token: i1.SelectionGroupService }, { token: i2.TranslocoService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
51
51
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.1.2", type: MultiSelectComponent, isStandalone: true, selector: "aril-multi-select[ngModel], aril-multi-select[formControl], aril-multi-select[formControlName]", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, optionLabel: { classPropertyName: "optionLabel", publicName: "optionLabel", isSignal: true, isRequired: false, transformFunction: null }, optionValue: { classPropertyName: "optionValue", publicName: "optionValue", isSignal: true, isRequired: false, transformFunction: null }, defaultLabel: { classPropertyName: "defaultLabel", publicName: "defaultLabel", isSignal: true, isRequired: false, transformFunction: null }, selectedItemsLabel: { classPropertyName: "selectedItemsLabel", publicName: "selectedItemsLabel", isSignal: true, isRequired: false, transformFunction: null }, appendTo: { classPropertyName: "appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, tooltip: { classPropertyName: "tooltip", publicName: "tooltip", isSignal: true, isRequired: false, transformFunction: null }, tooltipPosition: { classPropertyName: "tooltipPosition", publicName: "tooltipPosition", isSignal: true, isRequired: false, transformFunction: null }, groupName: { classPropertyName: "groupName", publicName: "groupName", isSignal: true, isRequired: false, transformFunction: null }, parentSelectionKey: { classPropertyName: "parentSelectionKey", publicName: "parentSelectionKey", isSignal: true, isRequired: false, transformFunction: null }, showClear: { classPropertyName: "showClear", publicName: "showClear", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, hostDirectives: [{ directive: i3.ValueAccessorDirective }], ngImport: i0, template: "<p-multiSelect\r\n\t[options]=\"selectionItems() || options()\"\r\n\t[optionLabel]=\"optionLabel()\"\r\n\t[optionValue]=\"optionValue()\"\r\n\t[defaultLabel]=\"defaultLabel()\"\r\n\t[selectedItemsLabel]=\"selectedItemsLabel()\"\r\n\t[style]=\"style()\"\r\n\t[styleClass]=\"styleClass()\"\r\n\t[tooltip]=\"tooltip()\"\r\n\t[tooltipPosition]=\"tooltipPosition()\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n\t[appendTo]=\"appendTo()\"\r\n\t[showClear]=\"showClear()\" />\r\n", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MultiSelectModule }, { kind: "component", type: i5.MultiSelect, selector: "p-multiSelect", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }] }); }
|
|
52
52
|
}
|
|
53
53
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: MultiSelectComponent, decorators: [{
|
|
54
54
|
type: Component,
|
|
55
55
|
args: [{ standalone: true, selector: 'aril-multi-select[ngModel], aril-multi-select[formControl], aril-multi-select[formControlName]', imports: [ReactiveFormsModule, MultiSelectModule], hostDirectives: [ValueAccessorDirective], template: "<p-multiSelect\r\n\t[options]=\"selectionItems() || options()\"\r\n\t[optionLabel]=\"optionLabel()\"\r\n\t[optionValue]=\"optionValue()\"\r\n\t[defaultLabel]=\"defaultLabel()\"\r\n\t[selectedItemsLabel]=\"selectedItemsLabel()\"\r\n\t[style]=\"style()\"\r\n\t[styleClass]=\"styleClass()\"\r\n\t[tooltip]=\"tooltip()\"\r\n\t[tooltipPosition]=\"tooltipPosition()\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n\t[appendTo]=\"appendTo()\"\r\n\t[showClear]=\"showClear()\" />\r\n" }]
|
|
56
|
-
}], ctorParameters: () => [{ type: i1.
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
}], ctorParameters: () => [{ type: i1.SelectionGroupService }, { type: i2.TranslocoService }] });
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdWkvbXVsdGlTZWxlY3Qvc3JjL211bHRpLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3VpL211bHRpU2VsZWN0L3NyYy9tdWx0aS1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUt4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7Ozs7QUFXekUsTUFBTSxPQUFPLG9CQUFxQixTQUFRLGtCQUFrQjtJQWdDM0QsWUFDa0IscUJBQTRDLEVBQ3RELGdCQUFrQztRQUV6QyxLQUFLLEVBQUUsQ0FBQztRQUhTLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDdEQscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQWpDMUMsWUFBTyxHQUFHLEtBQUssQ0FBSyxFQUFFLENBQUMsQ0FBQztRQUN4QixnQkFBVyxHQUFHLEtBQUssQ0FBUyxNQUFNLENBQUMsQ0FBQztRQUNwQyxnQkFBVyxHQUFHLEtBQUssQ0FBUyxLQUFLLENBQUMsQ0FBQztRQUNuQyxpQkFBWSxHQUFHLEtBQUssQ0FBUyxTQUFTLENBQUMsQ0FBQztRQUN4Qyx1QkFBa0IsR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyx1Q0FBdUM7UUFDL0UsYUFBUSxHQUFHLEtBQUssQ0FBUyxNQUFNLENBQUMsQ0FBQztRQUNqQyxVQUFLLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQzFCLGVBQVUsR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDL0IsWUFBTyxHQUFHLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUM1QixvQkFBZSxHQUFHLEtBQUssQ0FBTSxLQUFLLENBQUMsQ0FBQztRQUNwQyxjQUFTLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RCLHVCQUFrQixHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxjQUFTLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBRWxDLGtHQUFrRztRQUNsRyxrR0FBa0c7UUFDbEcsbUdBQW1HO1FBQ25HLG1CQUFjLEdBQUcsUUFBUSxDQUF5QixHQUFHLEVBQUU7WUFDdEQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ25DLElBQUksQ0FBQyxTQUFTO2dCQUFFLE9BQU8sSUFBSSxDQUFDO1lBQzVCLE1BQU0sR0FBRyxHQUFHLEdBQUcsU0FBUyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ2pFLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNoRSxPQUFPLENBQ04sS0FBSyxFQUFFLGNBQWMsRUFBRSxHQUFHLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQzFDLEdBQUcsRUFBRSxJQUFJLENBQUMsWUFBWTtnQkFDdEIsSUFBSSxFQUFFLElBQUksQ0FBQyxnQkFBZ0I7Z0JBQzNCLGtCQUFrQixFQUFFLElBQUksQ0FBQyxrQkFBa0I7YUFDM0MsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUNYLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQU9GLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDWCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbkMsSUFBSSxTQUFTO2dCQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLEtBQUssQ0FBQyxDQUFDO1FBQ3BHLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQzs4R0F6Q1csb0JBQW9CO2tHQUFwQixvQkFBb0Isay9EQ25CakMsd2hCQWNBLDJDREVXLG1CQUFtQix5VEFBRSxpQkFBaUI7OzJGQUdwQyxvQkFBb0I7a0JBUGhDLFNBQVM7aUNBQ0csSUFBSSxZQUNOLGdHQUFnRyxXQUVqRyxDQUFDLG1CQUFtQixFQUFFLGlCQUFpQixDQUFDLGtCQUNqQyxDQUFDLHNCQUFzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBjb21wdXRlZCwgZWZmZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuaW1wb3J0IHsgTXVsdGlTZWxlY3RNb2R1bGUgfSBmcm9tICdwcmltZW5nL211bHRpc2VsZWN0JztcclxuXHJcbmltcG9ydCB7IFRyYW5zbG9jb1NlcnZpY2UgfSBmcm9tICdAbmduZWF0L3RyYW5zbG9jbyc7XHJcblxyXG5pbXBvcnQgeyBTZWxlY3Rpb25Hcm91cFNlcnZpY2UgfSBmcm9tICdhcmlsL3NlbGVjdGlvbic7XHJcbmltcG9ydCB7IEJhc2VJbnB1dENvbXBvbmVudCwgVmFsdWVBY2Nlc3NvckRpcmVjdGl2ZSB9IGZyb20gJ2FyaWwvdWkvbGliJztcclxuXHJcbmltcG9ydCB7IFNlbGVjdEJveEl0ZW0gfSBmcm9tICcuL2ludGVyZmFjZXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c3RhbmRhbG9uZTogdHJ1ZSxcclxuXHRzZWxlY3RvcjogJ2FyaWwtbXVsdGktc2VsZWN0W25nTW9kZWxdLCBhcmlsLW11bHRpLXNlbGVjdFtmb3JtQ29udHJvbF0sIGFyaWwtbXVsdGktc2VsZWN0W2Zvcm1Db250cm9sTmFtZV0nLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9tdWx0aS1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxyXG5cdGltcG9ydHM6IFtSZWFjdGl2ZUZvcm1zTW9kdWxlLCBNdWx0aVNlbGVjdE1vZHVsZV0sXHJcblx0aG9zdERpcmVjdGl2ZXM6IFtWYWx1ZUFjY2Vzc29yRGlyZWN0aXZlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTXVsdGlTZWxlY3RDb21wb25lbnQgZXh0ZW5kcyBCYXNlSW5wdXRDb21wb25lbnQge1xyXG5cdG9wdGlvbnMgPSBpbnB1dDxbXT4oW10pO1xyXG5cdG9wdGlvbkxhYmVsID0gaW5wdXQ8c3RyaW5nPigndGV4dCcpO1xyXG5cdG9wdGlvblZhbHVlID0gaW5wdXQ8c3RyaW5nPigna2V5Jyk7XHJcblx0ZGVmYXVsdExhYmVsID0gaW5wdXQ8c3RyaW5nPignU2XDp2luaXonKTtcclxuXHRzZWxlY3RlZEl0ZW1zTGFiZWwgPSBpbnB1dDxzdHJpbmc+KCcnKTsgLy8gZGVmYXVsdCB2YWx1ZSAtPiAoezB9IGl0ZW1zIHNlbGVjdGVkXHJcblx0YXBwZW5kVG8gPSBpbnB1dDxzdHJpbmc+KCdib2R5Jyk7XHJcblx0c3R5bGUgPSBpbnB1dDxvYmplY3Q+KHt9KTtcclxuXHRzdHlsZUNsYXNzID0gaW5wdXQ8c3RyaW5nPignJyk7XHJcblx0dG9vbHRpcCA9IGlucHV0PHN0cmluZz4oJycpO1xyXG5cdHRvb2x0aXBQb3NpdGlvbiA9IGlucHV0PGFueT4oJ3RvcCcpO1xyXG5cdGdyb3VwTmFtZSA9IGlucHV0KCcnKTtcclxuXHRwYXJlbnRTZWxlY3Rpb25LZXkgPSBpbnB1dChudWxsKTtcclxuXHRzaG93Q2xlYXIgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XHJcblxyXG5cdC8vIEVudW0gaXRlbSdsYXLEsSBhcnTEsWsgbWVya2V6aSBTZWxlY3Rpb25Hcm91cFNlcnZpY2UgY2FjaGUnaW5kZW4gb2t1bnVyIChsb2NhbFN0b3JhZ2UgKyBjcm9zcy1NRkVcclxuXHQvLyBkZWR1cGUpLiBncm91cE5hbWUgeW9rc2EgbnVsbCBkw7ZuZXIg4oaSIHRlbXBsYXRlIG9wdGlvbnMoKSBpbnB1dCd1bmEgZMO8xZ9lci4gQXluxLEgZ3JvdXBOYW1lfnBhcmVudFxyXG5cdC8vIGnDp2luIHRla3JhciBIVFRQIGF0xLFsbWF6OyBwYXJlbnRTZWxlY3Rpb25LZXkgZGXEn2nFn2ltaW5kZSBzdGFsZS1yZXNwb25zZSByYWNlJ2luaSBzZXJ2aXMgecO2bmV0aXIuXHJcblx0c2VsZWN0aW9uSXRlbXMgPSBjb21wdXRlZDxTZWxlY3RCb3hJdGVtW10gfCBudWxsPigoKSA9PiB7XHJcblx0XHRjb25zdCBncm91cE5hbWUgPSB0aGlzLmdyb3VwTmFtZSgpO1xyXG5cdFx0aWYgKCFncm91cE5hbWUpIHJldHVybiBudWxsO1xyXG5cdFx0Y29uc3Qga2V5ID0gYCR7Z3JvdXBOYW1lfX4ke3RoaXMucGFyZW50U2VsZWN0aW9uS2V5KCkgPz8gJ0FMTCd9YDtcclxuXHRcdGNvbnN0IGdyb3VwID0gdGhpcy5zZWxlY3Rpb25Hcm91cFNlcnZpY2Uuc2VsZWN0aW9uR3JvdXBzKClba2V5XTtcclxuXHRcdHJldHVybiAoXHJcblx0XHRcdGdyb3VwPy5zZWxlY3Rpb25JdGVtcz8ubWFwKChpdGVtOiBhbnkpID0+ICh7XHJcblx0XHRcdFx0a2V5OiBpdGVtLnNlbGVjdGlvbktleSxcclxuXHRcdFx0XHR0ZXh0OiBpdGVtLnNlbGVjdGlvbkRpc3BsYXksXHJcblx0XHRcdFx0cGFyZW50U2VsZWN0aW9uS2V5OiBpdGVtLnBhcmVudFNlbGVjdGlvbktleVxyXG5cdFx0XHR9KSkgPz8gbnVsbFxyXG5cdFx0KTtcclxuXHR9KTtcclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IHNlbGVjdGlvbkdyb3VwU2VydmljZTogU2VsZWN0aW9uR3JvdXBTZXJ2aWNlLFxyXG5cdFx0cHVibGljIHRyYW5zbG9jb1NlcnZpY2U6IFRyYW5zbG9jb1NlcnZpY2VcclxuXHQpIHtcclxuXHRcdHN1cGVyKCk7XHJcblx0XHRlZmZlY3QoKCkgPT4ge1xyXG5cdFx0XHRjb25zdCBncm91cE5hbWUgPSB0aGlzLmdyb3VwTmFtZSgpO1xyXG5cdFx0XHRpZiAoZ3JvdXBOYW1lKSB0aGlzLnNlbGVjdGlvbkdyb3VwU2VydmljZS5mZXRjaEVudW0oZ3JvdXBOYW1lLCB0aGlzLnBhcmVudFNlbGVjdGlvbktleSgpID8/ICdBTEwnKTtcclxuXHRcdH0pO1xyXG5cdH1cclxufVxyXG4iLCI8cC1tdWx0aVNlbGVjdFxyXG5cdFtvcHRpb25zXT1cInNlbGVjdGlvbkl0ZW1zKCkgfHwgb3B0aW9ucygpXCJcclxuXHRbb3B0aW9uTGFiZWxdPVwib3B0aW9uTGFiZWwoKVwiXHJcblx0W29wdGlvblZhbHVlXT1cIm9wdGlvblZhbHVlKClcIlxyXG5cdFtkZWZhdWx0TGFiZWxdPVwiZGVmYXVsdExhYmVsKClcIlxyXG5cdFtzZWxlY3RlZEl0ZW1zTGFiZWxdPVwic2VsZWN0ZWRJdGVtc0xhYmVsKClcIlxyXG5cdFtzdHlsZV09XCJzdHlsZSgpXCJcclxuXHRbc3R5bGVDbGFzc109XCJzdHlsZUNsYXNzKClcIlxyXG5cdFt0b29sdGlwXT1cInRvb2x0aXAoKVwiXHJcblx0W3Rvb2x0aXBQb3NpdGlvbl09XCJ0b29sdGlwUG9zaXRpb24oKVwiXHJcblx0W2Zvcm1Db250cm9sXT1cIm5nQ29udHJvbC5jb250cm9sXCJcclxuXHQobmdNb2RlbENoYW5nZSk9XCJuZ0NvbnRyb2wudmlld1RvTW9kZWxVcGRhdGUoJGV2ZW50KVwiXHJcblx0W2FwcGVuZFRvXT1cImFwcGVuZFRvKClcIlxyXG5cdFtzaG93Q2xlYXJdPVwic2hvd0NsZWFyKClcIiAvPlxyXG4iXX0=
|
|
@@ -223,7 +223,7 @@ export class RelativeDateSelectorComponent extends BaseInputComponent {
|
|
|
223
223
|
return `relativeDateSelector.units.${unitNameMap[unit]}${suffix}`;
|
|
224
224
|
}
|
|
225
225
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RelativeDateSelectorComponent, deps: [{ token: i1.TranslocoService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
226
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: RelativeDateSelectorComponent, isStandalone: true, selector: "aril-relative-date-picker[ngModel], aril-relative-date-picker[formControl], aril-relative-date-picker[formControlName]", viewQueries: [{ propertyName: "overlayPanel", first: true, predicate: ["op"], descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i2.ValueAccessorDirective }], ngImport: i0, template: "<div class=\"relative-date-selector\">\r\n\t<div class=\"input-wrapper flex align-items-center\" (click)=\"onInputClick($event)\">\r\n\t\t<input\r\n\t\t\ttype=\"text\"\r\n\t\t\treadonly\r\n\t\t\t[value]=\"getDisplayValue()\"\r\n\t\t\tclass=\"p-inputtext p-component\"\r\n\t\t\t[class.p-invalid]=\"ngControl.invalid && ngControl.touched\"\r\n\t\t\t[placeholder]=\"translocoService.translate('relativeDateSelector.placeholder')\"\r\n\t\t\t[pTooltip]=\"ngControl.invalid && ngControl.touched ? (ngControl.control.value | inputErrorMessage: ngControl) : ''\"\r\n\t\t\t[tooltipOptions]=\"tooltipOptions\" />\r\n\t\t<div class=\"calendar-icon-wrapper flex align-items-center justify-content-center\" (click)=\"toggleQuickSelect($event)\">\r\n\t\t\t<i class=\"pi pi-calendar calendar-icon\"></i>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<p-overlayPanel\r\n\t\t#op\r\n\t\t[style]=\"{ minWidth: '350px', maxHeight: '600px', overflow: 'visible' }\"\r\n\t\t[dismissable]=\"true\"\r\n\t\t(onHide)=\"showOverlayPanel.set(false)\">\r\n\t\t<p-tabView (onChange)=\"onTabChange($event)\" [activeIndex]=\"activeTabIndex()\">\r\n\t\t\t<p-tabPanel [header]=\"translocoService.translate('relativeDateSelector.absolute')\">\r\n\t\t\t\t<div class=\"flex justify-content-center\">\r\n\t\t\t\t\t<aril-calendar\r\n\t\t\t\t\t\t[(ngModel)]=\"absoluteDate\"\r\n\t\t\t\t\t\t(ngModelChange)=\"onAbsoluteDateChange($event)\"\r\n\t\t\t\t\t\t[inline]=\"true\"\r\n\t\t\t\t\t\t[showTime]=\"true\"\r\n\t\t\t\t\t\t[showSeconds]=\"true\">\r\n\t\t\t\t\t</aril-calendar>\r\n\t\t\t\t</div>\r\n\t\t\t</p-tabPanel>\r\n\r\n\t\t\t<p-tabPanel [header]=\"translocoService.translate('relativeDateSelector.relative')\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<div class=\"flex flex-column gap-2 m-2\">\r\n\t\t\t\t\t\t<aril-number\r\n\t\t\t\t\t\t\t[(ngModel)]=\"relativeValue\"\r\n\t\t\t\t\t\t\t(ngModelChange)=\"onRelativeChange()\"\r\n\t\t\t\t\t\t\t[min]=\"1\"\r\n\t\t\t\t\t\t\t[showButtons]=\"true\"\r\n\t\t\t\t\t\t\t[placeholder]=\"translocoService.translate('relativeDateSelector.valuePlaceholder')\">\r\n\t\t\t\t\t\t</aril-number>\r\n\r\n\t\t\t\t\t\t<aril-select-box\r\n\t\t\t\t\t\t\t[(ngModel)]=\"relativeUnit\"\r\n\t\t\t\t\t\t\t(ngModelChange)=\"onRelativeChange()\"\r\n\t\t\t\t\t\t\t[items]=\"relativeUnits\"\r\n\t\t\t\t\t\t\t[itemKey]=\"'value'\"\r\n\t\t\t\t\t\t\t[itemText]=\"'label'\"\r\n\t\t\t\t\t\t\t[placeholder]=\"translocoService.translate('relativeDateSelector.selectUnit')\">\r\n\t\t\t\t\t\t</aril-select-box>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"m-2\">\r\n\t\t\t\t\t\t<small class=\"text-muted\">\r\n\t\t\t\t\t\t\t<strong>{{ translocoService.translate('relativeDateSelector.examples') }}:</strong> {{ translocoService.translate('relativeDateSelector.examplesText') }}\r\n\t\t\t\t\t\t</small>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</p-tabPanel>\r\n\t\t</p-tabView>\r\n\t</p-overlayPanel>\r\n\r\n\t<!-- Quick Select Panel -->\r\n\t@if (showQuickSelect()) {\r\n\t\t<div class=\"quick-select-panel mt-2\">\r\n\t\t\t<div class=\"quick-select-header flex justify-content-between align-items-center p-3\">\r\n\t\t\t\t<span class=\"title\">{{ translocoService.translate('relativeDateSelector.quickSelect') }}</span>\r\n\t\t\t\t<div class=\"flex align-items-center gap-2\">\r\n\t\t\t\t\t<i class=\"pi pi-times cursor-pointer\" (click)=\"showQuickSelect.set(false)\"></i>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"quick-select-body p-3\">\r\n\t\t\t\t<!-- Custom Quick Select Inputs -->\r\n\t\t\t\t<div class=\"quick-select-custom mb-3 pb-3\">\r\n\t\t\t\t\t<div class=\"flex gap-2 align-items-center mb-3\">\r\n\t\t\t\t\t\t<aril-select-box\r\n\t\t\t\t\t\t\t[(ngModel)]=\"quickSelectDirection\"\r\n\t\t\t\t\t\t\t[items]=\"quickSelectDirections\"\r\n\t\t\t\t\t\t\t[itemKey]=\"'value'\"\r\n\t\t\t\t\t\t\t[itemText]=\"'label'\">\r\n\t\t\t\t\t\t</aril-select-box>\r\n\r\n\t\t\t\t\t\t<aril-number [(ngModel)]=\"quickSelectValue\" [min]=\"1\" [showButtons]=\"true\"> </aril-number>\r\n\r\n\t\t\t\t\t\t<aril-select-box\r\n\t\t\t\t\t\t\t[(ngModel)]=\"quickSelectUnit\"\r\n\t\t\t\t\t\t\t[items]=\"quickSelectUnits\"\r\n\t\t\t\t\t\t\t[itemKey]=\"'value'\"\r\n\t\t\t\t\t\t\t[itemText]=\"'label'\">\r\n\t\t\t\t\t\t</aril-select-box>\r\n\r\n\t\t\t\t\t\t<aril-button\r\n\t\t\t\t\t\t\t[label]=\"translocoService.translate('relativeDateSelector.apply')\"\r\n\t\t\t\t\t\t\tcolor=\"primary\"\r\n\t\t\t\t\t\t\t(clickEvent)=\"applyQuickSelectCustom()\"\r\n\t\t\t\t\t\t\t[style]=\"{ 'min-width': '80px' }\">\r\n\t\t\t\t\t\t</aril-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<!-- Commonly Used Options -->\r\n\t\t\t\t<div class=\"quick-select-section\">\r\n\t\t\t\t\t<span class=\"title-section mb-2\">{{ translocoService.translate('relativeDateSelector.commonlyUsed') }}</span>\r\n\t\t\t\t\t<div class=\"quick-select-options\">\r\n\t\t\t\t\t\t@for (option of commonlyUsedOptions; track option.value) {\r\n\t\t\t\t\t\t\t<button type=\"button\" class=\"quick-select-option\" (click)=\"applyQuickSelect(option)\">\r\n\t\t\t\t\t\t\t\t{{ option.label }}\r\n\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t}\r\n</div>\r\n", styles: [".relative-date-selector{position:relative}.relative-date-selector .input-wrapper{position:relative;cursor:pointer}.relative-date-selector .input-wrapper input{width:100%;padding-right:3rem;cursor:pointer;transition:all var(--transition-duration) ease}.relative-date-selector .input-wrapper input:hover{border-color:var(--focus-border-color)}.relative-date-selector .input-wrapper input:focus{box-shadow:var(--focus-ring);border-color:var(--focus-border-color)}.relative-date-selector .input-wrapper input.p-invalid{border-color:var(--error-300)}.relative-date-selector .input-wrapper .calendar-icon-wrapper{position:absolute;right:.5rem;width:2rem;height:2rem;background:var(--surface-100);border:1px solid var(--surface-border);border-radius:var(--border-radius);cursor:pointer;transition:all var(--transition-duration) ease;z-index:2}.relative-date-selector .input-wrapper .calendar-icon-wrapper:hover{background:var(--surface-200);border-color:var(--primary-color);transform:scale(1.05)}.relative-date-selector .input-wrapper .calendar-icon-wrapper:hover .calendar-icon{color:var(--primary-color)}.relative-date-selector .input-wrapper .calendar-icon-wrapper:active{transform:scale(.98)}.relative-date-selector .input-wrapper .calendar-icon-wrapper .calendar-icon{font-size:.9375rem;color:var(--text-color-secondary);transition:color var(--transition-duration) ease}.relative-date-selector .quick-select-panel{position:absolute;top:100%;right:0;background:var(--surface-0);border:1px solid var(--surface-border);border-radius:8px;box-shadow:0 4px 20px #00000014;z-index:1000;width:460px;max-height:520px;overflow:hidden;animation:slideDown var(--transition-duration) ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.relative-date-selector .quick-select-panel .quick-select-header{border-bottom:1px solid var(--surface-200);background:var(--surface-100)}.relative-date-selector .quick-select-panel .quick-select-header .title{margin:0;font-size:13px;font-weight:700;color:var(--surface-600)}.relative-date-selector .quick-select-panel .quick-select-header i{cursor:pointer;color:var(--text-color-secondary);font-size:.875rem;transition:all var(--transition-duration) ease}.relative-date-selector .quick-select-panel .quick-select-header i:hover{color:var(--text-color);transform:scale(1.1)}.relative-date-selector .quick-select-panel .quick-select-body{max-height:440px;overflow-y:auto}.relative-date-selector .quick-select-panel .quick-select-custom{border-bottom:1px solid var(--surface-200)}.relative-date-selector .quick-select-panel .quick-select-section .title-section{display:inline-block;font-size:.8rem;font-weight:600;color:var(--text-color-secondary);text-transform:uppercase;letter-spacing:.5px}.relative-date-selector .quick-select-panel .quick-select-options{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.relative-date-selector .quick-select-panel .quick-select-options .quick-select-option{padding:.625rem 1rem;background:var(--surface-100);border:1px solid var(--surface-200);text-align:left;cursor:pointer;border-radius:var(--border-radius);transition:all var(--transition-duration) ease;color:var(--text-color);font-size:.875rem;font-weight:500}.relative-date-selector .quick-select-panel .quick-select-options .quick-select-option:hover{transform:translateY(-1px)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: OverlayPanelModule }, { kind: "component", type: i4.OverlayPanel, selector: "p-overlayPanel", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "ngmodule", type: TabViewModule }, { kind: "component", type: i5.TabView, selector: "p-tabView", inputs: ["style", "styleClass", "controlClose", "scrollable", "activeIndex", "selectOnFocus", "nextButtonAriaLabel", "prevButtonAriaLabel", "autoHideButtons", "tabindex"], outputs: ["onChange", "onClose", "activeIndexChange"] }, { kind: "component", type: i5.TabPanel, selector: "p-tabPanel", inputs: ["closable", "headerStyle", "headerStyleClass", "cache", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "selected", "disabled", "header", "leftIcon", "rightIcon"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i6.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "ngmodule", type: TranslocoModule }, { kind: "component", type: CalendarComponent, selector: "aril-calendar[ngModel], aril-calendar[formControl], aril-calendar[formControlName]", inputs: ["minDate", "maxDate", "inputStyle", "inputStyleClass", "autoZIndex", "inline", "showIcon", "showTime", "showWeek", "showSeconds", "disabledDates", "numberOfMonthToShow", "appendTo", "dataType", "placeholder", "view", "selectionMode", "rangeConfig", "tabindex", "showOnFocus", "timeOnly", "keepInvalid"] }, { kind: "component", type: ButtonComponent, selector: "aril-button:not([click])", inputs: ["label", "loading", "disabled", "raised", "rounded", "text", "outlined", "badge", "size", "icon", "iconPos", "color"], outputs: ["clickEvent"] }, { kind: "component", type: NumberComponent, selector: "aril-number[ngModel], aril-number[formControl], aril-number[formControlName]", inputs: ["min", "max", "showButtons", "placeholder", "prefix", "locale", "suffix", "maxlength", "showClear", "useGrouping", "maxDigits", "minDigits", "tabindex", "inputStyle", "buttonLayout"] }, { kind: "component", type: SelectBoxComponent, selector: "aril-select-box[ngModel], aril-select-box[formControl], aril-select-box[formControlName]", inputs: ["itemKey", "itemText", "groupName", "parentSelectionKey", "tabindex", "items", "grouped", "showClearButton", "placeholder", "searchExpr"], outputs: ["onSelectionChanged"] }, { kind: "pipe", type: InputErrorMessagePipe, name: "inputErrorMessage" }] }); }
|
|
226
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: RelativeDateSelectorComponent, isStandalone: true, selector: "aril-relative-date-picker[ngModel], aril-relative-date-picker[formControl], aril-relative-date-picker[formControlName]", viewQueries: [{ propertyName: "overlayPanel", first: true, predicate: ["op"], descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i2.ValueAccessorDirective }], ngImport: i0, template: "<div class=\"relative-date-selector\">\r\n\t<div class=\"input-wrapper flex align-items-center\" (click)=\"onInputClick($event)\">\r\n\t\t<input\r\n\t\t\ttype=\"text\"\r\n\t\t\treadonly\r\n\t\t\t[value]=\"getDisplayValue()\"\r\n\t\t\tclass=\"p-inputtext p-component\"\r\n\t\t\t[class.p-invalid]=\"ngControl.invalid && ngControl.touched\"\r\n\t\t\t[placeholder]=\"translocoService.translate('relativeDateSelector.placeholder')\"\r\n\t\t\t[pTooltip]=\"ngControl.invalid && ngControl.touched ? (ngControl.control.value | inputErrorMessage: ngControl) : ''\"\r\n\t\t\t[tooltipOptions]=\"tooltipOptions\" />\r\n\t\t<div class=\"calendar-icon-wrapper flex align-items-center justify-content-center\" (click)=\"toggleQuickSelect($event)\">\r\n\t\t\t<i class=\"pi pi-calendar calendar-icon\"></i>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<p-overlayPanel\r\n\t\t#op\r\n\t\t[style]=\"{ minWidth: '350px', maxHeight: '600px', overflow: 'visible' }\"\r\n\t\t[dismissable]=\"true\"\r\n\t\t(onHide)=\"showOverlayPanel.set(false)\">\r\n\t\t<p-tabView (onChange)=\"onTabChange($event)\" [activeIndex]=\"activeTabIndex()\">\r\n\t\t\t<p-tabPanel [header]=\"translocoService.translate('relativeDateSelector.absolute')\">\r\n\t\t\t\t<div class=\"flex justify-content-center\">\r\n\t\t\t\t\t<aril-calendar\r\n\t\t\t\t\t\t[(ngModel)]=\"absoluteDate\"\r\n\t\t\t\t\t\t(ngModelChange)=\"onAbsoluteDateChange($event)\"\r\n\t\t\t\t\t\t[inline]=\"true\"\r\n\t\t\t\t\t\t[showTime]=\"true\"\r\n\t\t\t\t\t\t[showSeconds]=\"true\">\r\n\t\t\t\t\t</aril-calendar>\r\n\t\t\t\t</div>\r\n\t\t\t</p-tabPanel>\r\n\r\n\t\t\t<p-tabPanel [header]=\"translocoService.translate('relativeDateSelector.relative')\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<div class=\"flex flex-column gap-2 m-2\">\r\n\t\t\t\t\t\t<aril-number\r\n\t\t\t\t\t\t\t[(ngModel)]=\"relativeValue\"\r\n\t\t\t\t\t\t\t(ngModelChange)=\"onRelativeChange()\"\r\n\t\t\t\t\t\t\t[min]=\"1\"\r\n\t\t\t\t\t\t\t[showButtons]=\"true\"\r\n\t\t\t\t\t\t\t[placeholder]=\"translocoService.translate('relativeDateSelector.valuePlaceholder')\">\r\n\t\t\t\t\t\t</aril-number>\r\n\r\n\t\t\t\t\t\t<aril-select-box\r\n\t\t\t\t\t\t\t[(ngModel)]=\"relativeUnit\"\r\n\t\t\t\t\t\t\t(ngModelChange)=\"onRelativeChange()\"\r\n\t\t\t\t\t\t\t[items]=\"relativeUnits\"\r\n\t\t\t\t\t\t\t[itemKey]=\"'value'\"\r\n\t\t\t\t\t\t\t[itemText]=\"'label'\"\r\n\t\t\t\t\t\t\t[placeholder]=\"translocoService.translate('relativeDateSelector.selectUnit')\">\r\n\t\t\t\t\t\t</aril-select-box>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"m-2\">\r\n\t\t\t\t\t\t<small class=\"text-muted\">\r\n\t\t\t\t\t\t\t<strong>{{ translocoService.translate('relativeDateSelector.examples') }}:</strong> {{ translocoService.translate('relativeDateSelector.examplesText') }}\r\n\t\t\t\t\t\t</small>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</p-tabPanel>\r\n\t\t</p-tabView>\r\n\t</p-overlayPanel>\r\n\r\n\t<!-- Quick Select Panel -->\r\n\t@if (showQuickSelect()) {\r\n\t\t<div class=\"quick-select-panel mt-2\">\r\n\t\t\t<div class=\"quick-select-header flex justify-content-between align-items-center p-3\">\r\n\t\t\t\t<span class=\"title\">{{ translocoService.translate('relativeDateSelector.quickSelect') }}</span>\r\n\t\t\t\t<div class=\"flex align-items-center gap-2\">\r\n\t\t\t\t\t<i class=\"pi pi-times cursor-pointer\" (click)=\"showQuickSelect.set(false)\"></i>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"quick-select-body p-3\">\r\n\t\t\t\t<!-- Custom Quick Select Inputs -->\r\n\t\t\t\t<div class=\"quick-select-custom mb-3 pb-3\">\r\n\t\t\t\t\t<div class=\"flex gap-2 align-items-center mb-3\">\r\n\t\t\t\t\t\t<aril-select-box\r\n\t\t\t\t\t\t\t[(ngModel)]=\"quickSelectDirection\"\r\n\t\t\t\t\t\t\t[items]=\"quickSelectDirections\"\r\n\t\t\t\t\t\t\t[itemKey]=\"'value'\"\r\n\t\t\t\t\t\t\t[itemText]=\"'label'\">\r\n\t\t\t\t\t\t</aril-select-box>\r\n\r\n\t\t\t\t\t\t<aril-number [(ngModel)]=\"quickSelectValue\" [min]=\"1\" [showButtons]=\"true\"> </aril-number>\r\n\r\n\t\t\t\t\t\t<aril-select-box\r\n\t\t\t\t\t\t\t[(ngModel)]=\"quickSelectUnit\"\r\n\t\t\t\t\t\t\t[items]=\"quickSelectUnits\"\r\n\t\t\t\t\t\t\t[itemKey]=\"'value'\"\r\n\t\t\t\t\t\t\t[itemText]=\"'label'\">\r\n\t\t\t\t\t\t</aril-select-box>\r\n\r\n\t\t\t\t\t\t<aril-button\r\n\t\t\t\t\t\t\t[label]=\"translocoService.translate('relativeDateSelector.apply')\"\r\n\t\t\t\t\t\t\tcolor=\"primary\"\r\n\t\t\t\t\t\t\t(clickEvent)=\"applyQuickSelectCustom()\"\r\n\t\t\t\t\t\t\t[style]=\"{ 'min-width': '80px' }\">\r\n\t\t\t\t\t\t</aril-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<!-- Commonly Used Options -->\r\n\t\t\t\t<div class=\"quick-select-section\">\r\n\t\t\t\t\t<span class=\"title-section mb-2\">{{ translocoService.translate('relativeDateSelector.commonlyUsed') }}</span>\r\n\t\t\t\t\t<div class=\"quick-select-options\">\r\n\t\t\t\t\t\t@for (option of commonlyUsedOptions; track option.value) {\r\n\t\t\t\t\t\t\t<button type=\"button\" class=\"quick-select-option\" (click)=\"applyQuickSelect(option)\">\r\n\t\t\t\t\t\t\t\t{{ option.label }}\r\n\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t}\r\n</div>\r\n", styles: [".relative-date-selector{position:relative}.relative-date-selector .input-wrapper{position:relative;cursor:pointer}.relative-date-selector .input-wrapper input{width:100%;padding-right:3rem;cursor:pointer;transition:all var(--transition-duration) ease}.relative-date-selector .input-wrapper input:hover{border-color:var(--focus-border-color)}.relative-date-selector .input-wrapper input:focus{box-shadow:var(--focus-ring);border-color:var(--focus-border-color)}.relative-date-selector .input-wrapper input.p-invalid{border-color:var(--error-300)}.relative-date-selector .input-wrapper .calendar-icon-wrapper{position:absolute;right:.5rem;width:2rem;height:2rem;background:var(--surface-100);border:1px solid var(--surface-border);border-radius:var(--border-radius);cursor:pointer;transition:all var(--transition-duration) ease;z-index:2}.relative-date-selector .input-wrapper .calendar-icon-wrapper:hover{background:var(--surface-200);border-color:var(--primary-color);transform:scale(1.05)}.relative-date-selector .input-wrapper .calendar-icon-wrapper:hover .calendar-icon{color:var(--primary-color)}.relative-date-selector .input-wrapper .calendar-icon-wrapper:active{transform:scale(.98)}.relative-date-selector .input-wrapper .calendar-icon-wrapper .calendar-icon{font-size:.9375rem;color:var(--text-color-secondary);transition:color var(--transition-duration) ease}.relative-date-selector .quick-select-panel{position:absolute;top:100%;right:0;background:var(--surface-0);border:1px solid var(--surface-border);border-radius:8px;box-shadow:0 4px 20px #00000014;z-index:1000;width:460px;max-height:520px;overflow:hidden;animation:slideDown var(--transition-duration) ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.relative-date-selector .quick-select-panel .quick-select-header{border-bottom:1px solid var(--surface-200);background:var(--surface-100)}.relative-date-selector .quick-select-panel .quick-select-header .title{margin:0;font-size:13px;font-weight:700;color:var(--surface-600)}.relative-date-selector .quick-select-panel .quick-select-header i{cursor:pointer;color:var(--text-color-secondary);font-size:.875rem;transition:all var(--transition-duration) ease}.relative-date-selector .quick-select-panel .quick-select-header i:hover{color:var(--text-color);transform:scale(1.1)}.relative-date-selector .quick-select-panel .quick-select-body{max-height:440px;overflow-y:auto}.relative-date-selector .quick-select-panel .quick-select-custom{border-bottom:1px solid var(--surface-200)}.relative-date-selector .quick-select-panel .quick-select-section .title-section{display:inline-block;font-size:.8rem;font-weight:600;color:var(--text-color-secondary);text-transform:uppercase;letter-spacing:.5px}.relative-date-selector .quick-select-panel .quick-select-options{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.relative-date-selector .quick-select-panel .quick-select-options .quick-select-option{padding:.625rem 1rem;background:var(--surface-100);border:1px solid var(--surface-200);text-align:left;cursor:pointer;border-radius:var(--border-radius);transition:all var(--transition-duration) ease;color:var(--text-color);font-size:.875rem;font-weight:500}.relative-date-selector .quick-select-panel .quick-select-options .quick-select-option:hover{transform:translateY(-1px)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: OverlayPanelModule }, { kind: "component", type: i4.OverlayPanel, selector: "p-overlayPanel", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "ngmodule", type: TabViewModule }, { kind: "component", type: i5.TabView, selector: "p-tabView", inputs: ["style", "styleClass", "controlClose", "scrollable", "activeIndex", "selectOnFocus", "nextButtonAriaLabel", "prevButtonAriaLabel", "autoHideButtons", "tabindex"], outputs: ["onChange", "onClose", "activeIndexChange"] }, { kind: "component", type: i5.TabPanel, selector: "p-tabPanel", inputs: ["closable", "headerStyle", "headerStyleClass", "cache", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "selected", "disabled", "header", "leftIcon", "rightIcon"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i6.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "ngmodule", type: TranslocoModule }, { kind: "component", type: CalendarComponent, selector: "aril-calendar[ngModel], aril-calendar[formControl], aril-calendar[formControlName]", inputs: ["minDate", "maxDate", "inputStyle", "inputStyleClass", "autoZIndex", "inline", "showIcon", "showTime", "showWeek", "showSeconds", "disabledDates", "numberOfMonthToShow", "appendTo", "dataType", "placeholder", "view", "selectionMode", "rangeConfig", "tabindex", "showOnFocus", "timeOnly", "keepInvalid"] }, { kind: "component", type: ButtonComponent, selector: "aril-button:not([click])", inputs: ["label", "loading", "disabled", "raised", "rounded", "text", "outlined", "badge", "size", "icon", "iconPos", "color"], outputs: ["clickEvent"] }, { kind: "component", type: NumberComponent, selector: "aril-number[ngModel], aril-number[formControl], aril-number[formControlName]", inputs: ["min", "max", "showButtons", "placeholder", "prefix", "locale", "suffix", "maxlength", "showClear", "useGrouping", "maxDigits", "minDigits", "tabindex", "inputStyle", "buttonLayout"] }, { kind: "component", type: SelectBoxComponent, selector: "aril-select-box[ngModel], aril-select-box[formControl], aril-select-box[formControlName]", inputs: ["itemKey", "itemText", "parentSelectionKey", "tabindex", "items", "grouped", "showClearButton", "placeholder", "searchExpr"], outputs: ["onSelectionChanged"] }, { kind: "pipe", type: InputErrorMessagePipe, name: "inputErrorMessage" }] }); }
|
|
227
227
|
}
|
|
228
228
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RelativeDateSelectorComponent, decorators: [{
|
|
229
229
|
type: Component,
|
|
@@ -245,4 +245,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
245
245
|
type: ViewChild,
|
|
246
246
|
args: ['op']
|
|
247
247
|
}] } });
|
|
248
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsYXRpdmUtZGF0ZS1zZWxlY3Rvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3VpL3JlbGF0aXZlRGF0ZVNlbGVjdG9yL3NyYy9yZWxhdGl2ZS1kYXRlLXNlbGVjdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdWkvcmVsYXRpdmVEYXRlU2VsZWN0b3Ivc3JjL3JlbGF0aXZlLWRhdGUtc2VsZWN0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUF5QixNQUFNLGVBQWUsQ0FBQztBQUNwRixPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBZ0Isa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhELE9BQU8sRUFBRSxlQUFlLEVBQW9CLE1BQU0sbUJBQW1CLENBQUM7QUFDdEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFekMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHFCQUFxQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakQsT0FBTyxFQUFF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QyxDQUFDLENBQUMsc0JBQXNCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLENBQUM7UUFDeEcsT0FBTyw4QkFBOEIsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDO0lBQ25FLENBQUM7OEdBbFBXLDZCQUE2QjtrR0FBN0IsNkJBQTZCLHlXQy9DMUMscWlLQXNIQSx1MUdEdEZFLFlBQVksOEJBQ1osbUJBQW1CLHNJQUNuQixXQUFXLHNQQUNYLGtCQUFrQixrV0FDbEIsYUFBYSwya0JBQ2IsYUFBYSxxWEFDYixlQUFlLCtCQUNmLGlCQUFpQix3YkFDakIsZUFBZSw4TkFDZixlQUFlLDBUQUNmLGtCQUFrQixxVEFDbEIscUJBQXFCOzsyRkFJViw2QkFBNkI7a0JBdEJ6QyxTQUFTO2lDQUNHLElBQUksWUFFZix3SEFBd0gsV0FHaEg7d0JBQ1IsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLFdBQVc7d0JBQ1gsa0JBQWtCO3dCQUNsQixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixpQkFBaUI7d0JBQ2pCLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLHFCQUFxQjtxQkFDckIsa0JBQ2UsQ0FBQyxzQkFBc0IsQ0FBQztxRkFHdkIsWUFBWTtzQkFBNUIsU0FBUzt1QkFBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBzaWduYWwsIFZpZXdDaGlsZCwgT25Jbml0LCBBZnRlclZpZXdJbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5cclxuaW1wb3J0IHsgT3ZlcmxheVBhbmVsLCBPdmVybGF5UGFuZWxNb2R1bGUgfSBmcm9tICdwcmltZW5nL292ZXJsYXlwYW5lbCc7XHJcbmltcG9ydCB7IFRhYlZpZXdNb2R1bGUgfSBmcm9tICdwcmltZW5nL3RhYnZpZXcnO1xyXG5pbXBvcnQgeyBUb29sdGlwTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90b29sdGlwJztcclxuXHJcbmltcG9ydCB7IFRyYW5zbG9jb01vZHVsZSwgVHJhbnNsb2NvU2VydmljZSB9IGZyb20gJ0BuZ25lYXQvdHJhbnNsb2NvJztcclxuaW1wb3J0IHsgZm9ybWF0LCBwYXJzZSB9IGZyb20gJ2RhdGUtZm5zJztcclxuXHJcbmltcG9ydCB7IEJhc2VJbnB1dENvbXBvbmVudCwgSW5wdXRFcnJvck1lc3NhZ2VQaXBlLCBWYWx1ZUFjY2Vzc29yRGlyZWN0aXZlIH0gZnJvbSAnYXJpbC91aS9saWInO1xyXG5pbXBvcnQgeyBDYWxlbmRhckNvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvY2FsZW5kYXInO1xyXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdhcmlsL3VpL2J1dHRvbic7XHJcbmltcG9ydCB7IE51bWJlckNvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvbnVtYmVyJztcclxuaW1wb3J0IHsgU2VsZWN0Qm94Q29tcG9uZW50IH0gZnJvbSAnYXJpbC91aS9zZWxlY3RCb3gnO1xyXG5pbXBvcnQgJ2FyaWwvdXRpbC9wcmltaXRpdmUtZXh0ZW5zaW9ucyc7XHJcblxyXG5pbXBvcnQgeyBSZWxhdGl2ZURhdGVVbml0LCBSZWxhdGl2ZURhdGVEaXJlY3Rpb24sIFJlbGF0aXZlRGF0ZVVuaXROYW1lLCBSZWxhdGl2ZURhdGVVbml0U3VmZml4IH0gZnJvbSAnLi9lbnVtJztcclxuXHJcbmludGVyZmFjZSBRdWlja1NlbGVjdE9wdGlvbiB7XHJcblx0bGFiZWw6IHN0cmluZztcclxuXHR2YWx1ZTogc3RyaW5nO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHRzdGFuZGFsb25lOiB0cnVlLFxyXG5cdHNlbGVjdG9yOlxyXG5cdFx0J2FyaWwtcmVsYXRpdmUtZGF0ZS1waWNrZXJbbmdNb2RlbF0sIGFyaWwtcmVsYXRpdmUtZGF0ZS1waWNrZXJbZm9ybUNvbnRyb2xdLCBhcmlsLXJlbGF0aXZlLWRhdGUtcGlja2VyW2Zvcm1Db250cm9sTmFtZV0nLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9yZWxhdGl2ZS1kYXRlLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybHM6IFsnLi9yZWxhdGl2ZS1kYXRlLXNlbGVjdG9yLmNvbXBvbmVudC5zY3NzJ10sXHJcblx0aW1wb3J0czogW1xyXG5cdFx0Q29tbW9uTW9kdWxlLFxyXG5cdFx0UmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuXHRcdEZvcm1zTW9kdWxlLFxyXG5cdFx0T3ZlcmxheVBhbmVsTW9kdWxlLFxyXG5cdFx0VGFiVmlld01vZHVsZSxcclxuXHRcdFRvb2x0aXBNb2R1bGUsXHJcblx0XHRUcmFuc2xvY29Nb2R1bGUsXHJcblx0XHRDYWxlbmRhckNvbXBvbmVudCxcclxuXHRcdEJ1dHRvbkNvbXBvbmVudCxcclxuXHRcdE51bWJlckNvbXBvbmVudCxcclxuXHRcdFNlbGVjdEJveENvbXBvbmVudCxcclxuXHRcdElucHV0RXJyb3JNZXNzYWdlUGlwZVxyXG5cdF0sXHJcblx0aG9zdERpcmVjdGl2ZXM6IFtWYWx1ZUFjY2Vzc29yRGlyZWN0aXZlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmVsYXRpdmVEYXRlU2VsZWN0b3JDb21wb25lbnQgZXh0ZW5kcyBCYXNlSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xyXG5cdEBWaWV3Q2hpbGQoJ29wJykgb3ZlcmxheVBhbmVsITogT3ZlcmxheVBhbmVsO1xyXG5cclxuXHRhY3RpdmVUYWJJbmRleCA9IHNpZ25hbDxudW1iZXI+KDApO1xyXG5cdHNob3dRdWlja1NlbGVjdCA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XHJcblx0c2hvd092ZXJsYXlQYW5lbCA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XHJcblxyXG5cdC8vIEFic29sdXRlIG1vZGVcclxuXHRhYnNvbHV0ZURhdGU6IG51bWJlciB8IG51bGwgPSBudWxsO1xyXG5cclxuXHQvLyBSZWxhdGl2ZSBtb2RlXHJcblx0cmVsYXRpdmVWYWx1ZTogbnVtYmVyIHwgbnVsbCA9IG51bGw7XHJcblx0cmVsYXRpdmVVbml0OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuXHRyZWxhdGl2ZURpcmVjdGlvbiA9IFJlbGF0aXZlRGF0ZURpcmVjdGlvbi5QYXN0O1xyXG5cclxuXHRyZWxhdGl2ZVVuaXRzOiBhbnlbXSA9IFtdO1xyXG5cdHF1aWNrU2VsZWN0RGlyZWN0aW9uczogQXJyYXk8eyBsYWJlbDogc3RyaW5nOyB2YWx1ZTogc3RyaW5nIH0+ID0gW107XHJcblx0cXVpY2tTZWxlY3RVbml0czogQXJyYXk8eyBsYWJlbDogc3RyaW5nOyB2YWx1ZTogc3RyaW5nIH0+ID0gW107XHJcblx0Y29tbW9ubHlVc2VkT3B0aW9uczogUXVpY2tTZWxlY3RPcHRpb25bXSA9IFtdO1xyXG5cclxuXHQvLyBRdWljayBzZWxlY3QgaW5wdXRzXHJcblx0cXVpY2tTZWxlY3REaXJlY3Rpb24gPSBSZWxhdGl2ZURhdGVEaXJlY3Rpb24uUGFzdDtcclxuXHRxdWlja1NlbGVjdFZhbHVlOiBudW1iZXIgfCBudWxsID0gbnVsbDtcclxuXHRxdWlja1NlbGVjdFVuaXQgPSBSZWxhdGl2ZURhdGVVbml0Lk1pbnV0ZXM7XHJcblxyXG5cdGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSB0cmFuc2xvY29TZXJ2aWNlOiBUcmFuc2xvY29TZXJ2aWNlKSB7XHJcblx0XHRzdXBlcigpO1xyXG5cclxuXHRcdHRoaXMuaW5pdGlhbGl6ZU9wdGlvbnMoKTtcclxuXHR9XHJcblxyXG5cdG5nT25Jbml0KCk6IHZvaWQge1xyXG5cdFx0dGhpcy5uZ0NvbnRyb2wuY29udHJvbD8udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodmFsdWUpID0+IHtcclxuXHRcdFx0dGhpcy5vblZhbHVlQ2hhbmdlKHZhbHVlKTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0bmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG5cdFx0aWYgKHRoaXMubmdDb250cm9sLmNvbnRyb2w/LnZhbHVlICE9IG51bGwpIHtcclxuXHRcdFx0dGhpcy5vblZhbHVlQ2hhbmdlKHRoaXMubmdDb250cm9sLmNvbnRyb2w/LnZhbHVlKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHByaXZhdGUgaW5pdGlhbGl6ZU9wdGlvbnMoKTogdm9pZCB7XHJcblx0XHRjb25zdCB1bml0cyA9IE9iamVjdC52YWx1ZXMoUmVsYXRpdmVEYXRlVW5pdCk7XHJcblx0XHRjb25zdCB1bml0TmFtZXMgPSBPYmplY3QudmFsdWVzKFJlbGF0aXZlRGF0ZVVuaXROYW1lKTtcclxuXHRcdGNvbnN0IGRpcmVjdGlvbnMgPSBPYmplY3QudmFsdWVzKFJlbGF0aXZlRGF0ZURpcmVjdGlvbik7XHJcblx0XHRjb25zdCBkaXJlY3Rpb25TdWZmaXhlcyA9IE9iamVjdC52YWx1ZXMoUmVsYXRpdmVEYXRlVW5pdFN1ZmZpeCk7XHJcblxyXG5cdFx0Ly8gUmVsYXRpdmUgdW5pdHNcclxuXHRcdHRoaXMucmVsYXRpdmVVbml0cyA9IHVuaXRzLmZsYXRNYXAoKGNvZGUsIGluZGV4KSA9PlxyXG5cdFx0XHRkaXJlY3Rpb25zLm1hcCgoZGlyLCBkaXJJbmRleCkgPT4gKHtcclxuXHRcdFx0XHRsYWJlbDogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZShcclxuXHRcdFx0XHRcdGByZWxhdGl2ZURhdGVTZWxlY3Rvci51bml0cy4ke3VuaXROYW1lc1tpbmRleF19JHtkaXJlY3Rpb25TdWZmaXhlc1tkaXJJbmRleF19YFxyXG5cdFx0XHRcdCksXHJcblx0XHRcdFx0dmFsdWU6IGAke2NvZGV9JHtkaXJ9YFxyXG5cdFx0XHR9KSlcclxuXHRcdCk7XHJcblxyXG5cdFx0Ly8gUXVpY2sgU2VsZWN0IC0gTGFzdC9OZXh0IG9wdGlvbnNcclxuXHRcdHRoaXMucXVpY2tTZWxlY3REaXJlY3Rpb25zID0gW1xyXG5cdFx0XHR7IGxhYmVsOiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdyZWxhdGl2ZURhdGVTZWxlY3Rvci5sYXN0JyksIHZhbHVlOiBSZWxhdGl2ZURhdGVEaXJlY3Rpb24uUGFzdCB9LFxyXG5cdFx0XHR7IGxhYmVsOiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdyZWxhdGl2ZURhdGVTZWxlY3Rvci5uZXh0JyksIHZhbHVlOiBSZWxhdGl2ZURhdGVEaXJlY3Rpb24uRnV0dXJlIH1cclxuXHRcdF07XHJcblxyXG5cdFx0dGhpcy5xdWlja1NlbGVjdFVuaXRzID0gdW5pdHMubWFwKChjb2RlLCBpbmRleCkgPT4gKHtcclxuXHRcdFx0bGFiZWw6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoYHJlbGF0aXZlRGF0ZVNlbGVjdG9yLnVuaXRzLiR7dW5pdE5hbWVzW2luZGV4XX1gKSxcclxuXHRcdFx0dmFsdWU6IGNvZGVcclxuXHRcdH0pKTtcclxuXHJcblx0XHQvLyBDb21tb25seSB1c2VkIHF1aWNrIHNlbGVjdHNcclxuXHRcdGNvbnN0IHF1aWNrT3B0aW9ucyA9IFtcclxuXHRcdFx0eyBrZXk6ICd0b2RheScsIHZhbHVlOiBgbm93LyR7UmVsYXRpdmVEYXRlVW5pdC5EYXlzfWAgfSxcclxuXHRcdFx0eyBrZXk6ICd0aGlzV2VlaycsIHZhbHVlOiBgbm93LyR7UmVsYXRpdmVEYXRlVW5pdC5XZWVrc31gIH0sXHJcblx0XHRcdHsga2V5OiAnbGFzdDFNaW51dGUnLCB2YWx1ZTogYG5vdyR7UmVsYXRpdmVEYXRlRGlyZWN0aW9uLlBhc3R9MSR7UmVsYXRpdmVEYXRlVW5pdC5NaW51dGVzfWAgfSxcclxuXHRcdFx0eyBrZXk6ICdsYXN0MTVNaW51dGVzJywgdmFsdWU6IGBub3cke1JlbGF0aXZlRGF0ZURpcmVjdGlvbi5QYXN0fTE1JHtSZWxhdGl2ZURhdGVVbml0Lk1pbnV0ZXN9YCB9LFxyXG5cdFx0XHR7IGtleTogJ2xhc3QzME1pbnV0ZXMnLCB2YWx1ZTogYG5vdyR7UmVsYXRpdmVEYXRlRGlyZWN0aW9uLlBhc3R9MzAke1JlbGF0aXZlRGF0ZVVuaXQuTWludXRlc31gIH0sXHJcblx0XHRcdHsga2V5OiAnbGFzdDFIb3VyJywgdmFsdWU6IGBub3cke1JlbGF0aXZlRGF0ZURpcmVjdGlvbi5QYXN0fTEke1JlbGF0aXZlRGF0ZVVuaXQuSG91cnN9YCB9LFxyXG5cdFx0XHR7IGtleTogJ2xhc3QyNEhvdXJzJywgdmFsdWU6IGBub3cke1JlbGF0aXZlRGF0ZURpcmVjdGlvbi5QYXN0fTI0JHtSZWxhdGl2ZURhdGVVbml0LkhvdXJzfWAgfSxcclxuXHRcdFx0eyBrZXk6ICdsYXN0N0RheXMnLCB2YWx1ZTogYG5vdyR7UmVsYXRpdmVEYXRlRGlyZWN0aW9uLlBhc3R9NyR7UmVsYXRpdmVEYXRlVW5pdC5EYXlzfWAgfSxcclxuXHRcdFx0eyBrZXk6ICdsYXN0MzBEYXlzJywgdmFsdWU6IGBub3cke1JlbGF0aXZlRGF0ZURpcmVjdGlvbi5QYXN0fTMwJHtSZWxhdGl2ZURhdGVVbml0LkRheXN9YCB9LFxyXG5cdFx0XHR7IGtleTogJ2xhc3Q5MERheXMnLCB2YWx1ZTogYG5vdyR7UmVsYXRpdmVEYXRlRGlyZWN0aW9uLlBhc3R9OTAke1JlbGF0aXZlRGF0ZVVuaXQuRGF5c31gIH0sXHJcblx0XHRcdHsga2V5OiAnbGFzdDFZZWFyJywgdmFsdWU6IGBub3cke1JlbGF0aXZlRGF0ZURpcmVjdGlvbi5QYXN0fTEke1JlbGF0aXZlRGF0ZVVuaXQuWWVhcnN9YCB9XHJcblx0XHRdO1xyXG5cclxuXHRcdHRoaXMuY29tbW9ubHlVc2VkT3B0aW9ucyA9IHF1aWNrT3B0aW9ucy5tYXAoKG9wdCkgPT4gKHtcclxuXHRcdFx0bGFiZWw6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoYHJlbGF0aXZlRGF0ZVNlbGVjdG9yLnF1aWNrT3B0aW9ucy4ke29wdC5rZXl9YCksXHJcblx0XHRcdHZhbHVlOiBvcHQudmFsdWVcclxuXHRcdH0pKTtcclxuXHR9XHJcblxyXG5cdG9uVmFsdWVDaGFuZ2UodmFsdWU6IG51bWJlciB8IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpOiB2b2lkIHtcclxuXHRcdGlmICh2YWx1ZSAhPSBudWxsKSB7XHJcblx0XHRcdGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XHJcblx0XHRcdFx0dGhpcy5hY3RpdmVUYWJJbmRleC5zZXQoMCk7XHJcblx0XHRcdFx0dGhpcy5hYnNvbHV0ZURhdGUgPSB2YWx1ZTtcclxuXHRcdFx0fSBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XHJcblx0XHRcdFx0dGhpcy5hY3RpdmVUYWJJbmRleC5zZXQoMSk7XHJcblx0XHRcdFx0dGhpcy5wYXJzZVJlbGF0aXZlVmFsdWUodmFsdWUpO1xyXG5cdFx0XHR9XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHR0aGlzLmFic29sdXRlRGF0ZSA9IG51bGw7XHJcblx0XHRcdHRoaXMucmVsYXRpdmVWYWx1ZSA9IG51bGw7XHJcblx0XHRcdHRoaXMucmVsYXRpdmVVbml0ID0gbnVsbDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHBhcnNlUmVsYXRpdmVWYWx1ZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XHJcblx0XHRjb25zdCBtYXRjaCA9IHZhbHVlLm1hdGNoKC9ebm93XFxzKig/OihbKy1dKVxccyooXFxkKykoW3NtaGR3TXldKSk/XFxzKig/OlxcLyhbc21oZHdNeV0pKT8kLyk7XHJcblxyXG5cdFx0aWYgKG1hdGNoKSB7XHJcblx0XHRcdGNvbnN0IFssIGRpcmVjdGlvbiwgYW1vdW50LCB1bml0XSA9IG1hdGNoO1xyXG5cdFx0XHRpZiAoZGlyZWN0aW9uICYmIGFtb3VudCAmJiB1bml0KSB7XHJcblx0XHRcdFx0dGhpcy5yZWxhdGl2ZURpcmVjdGlvbiA9IGRpcmVjdGlvbiBhcyBSZWxhdGl2ZURhdGVEaXJlY3Rpb247XHJcblx0XHRcdFx0dGhpcy5yZWxhdGl2ZVZhbHVlID0gcGFyc2VJbnQoYW1vdW50LCAxMCk7XHJcblx0XHRcdFx0dGhpcy5yZWxhdGl2ZVVuaXQgPSB1bml0ICsgZGlyZWN0aW9uO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRvbkFic29sdXRlRGF0ZUNoYW5nZShkYXRlOiBudW1iZXIgfCBudWxsKTogdm9pZCB7XHJcblx0XHR0aGlzLmFic29sdXRlRGF0ZSA9IGRhdGU7XHJcblx0XHR0aGlzLnVwZGF0ZVZhbHVlKCk7XHJcblx0fVxyXG5cclxuXHRvblJlbGF0aXZlQ2hhbmdlKCk6IHZvaWQge1xyXG5cdFx0dGhpcy51cGRhdGVWYWx1ZSgpO1xyXG5cdH1cclxuXHJcblx0b25UYWJDaGFuZ2UoZXZlbnQ6IHsgaW5kZXg6IG51bWJlciB9KTogdm9pZCB7XHJcblx0XHR0aGlzLmFjdGl2ZVRhYkluZGV4LnNldChldmVudC5pbmRleCk7XHJcblx0fVxyXG5cclxuXHR1cGRhdGVWYWx1ZSgpOiB2b2lkIHtcclxuXHRcdGlmICh0aGlzLmFjdGl2ZVRhYkluZGV4KCkgPT09IDAgJiYgdGhpcy5hYnNvbHV0ZURhdGUgIT0gbnVsbCkge1xyXG5cdFx0XHR0aGlzLm5nQ29udHJvbC5jb250cm9sPy5zZXRWYWx1ZSh0aGlzLmFic29sdXRlRGF0ZSk7XHJcblx0XHR9IGVsc2UgaWYgKHRoaXMuYWN0aXZlVGFiSW5kZXgoKSA9PT0gMSAmJiB0aGlzLnJlbGF0aXZlVmFsdWUgIT0gbnVsbCAmJiB0aGlzLnJlbGF0aXZlVW5pdCkge1xyXG5cdFx0XHRjb25zdCB1bml0ID0gdGhpcy5yZWxhdGl2ZVVuaXQuY2hhckF0KDApO1xyXG5cdFx0XHRjb25zdCBkaXJlY3Rpb24gPSB0aGlzLnJlbGF0aXZlVW5pdC5jaGFyQXQoMSk7XHJcblx0XHRcdHRoaXMubmdDb250cm9sLmNvbnRyb2w/LnNldFZhbHVlKGBub3cke2RpcmVjdGlvbn0ke3RoaXMucmVsYXRpdmVWYWx1ZX0ke3VuaXR9YCk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRhcHBseVF1aWNrU2VsZWN0KG9wdGlvbjogUXVpY2tTZWxlY3RPcHRpb24pOiB2b2lkIHtcclxuXHRcdHRoaXMuYXBwbHlSZWxhdGl2ZVZhbHVlKG9wdGlvbi52YWx1ZSk7XHJcblx0fVxyXG5cclxuXHRhcHBseVF1aWNrU2VsZWN0Q3VzdG9tKCk6IHZvaWQge1xyXG5cdFx0aWYgKHRoaXMucXVpY2tTZWxlY3RWYWx1ZSAhPSBudWxsICYmIHRoaXMucXVpY2tTZWxlY3RVbml0KSB7XHJcblx0XHRcdGNvbnN0IHJlbGF0aXZlU3RyaW5nID0gYG5vdyR7dGhpcy5xdWlja1NlbGVjdERpcmVjdGlvbn0ke3RoaXMucXVpY2tTZWxlY3RWYWx1ZX0ke3RoaXMucXVpY2tTZWxlY3RVbml0fWA7XHJcblx0XHRcdHRoaXMuYXBwbHlSZWxhdGl2ZVZhbHVlKHJlbGF0aXZlU3RyaW5nKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHByaXZhdGUgYXBwbHlSZWxhdGl2ZVZhbHVlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuXHRcdHRoaXMuYWN0aXZlVGFiSW5kZXguc2V0KDEpO1xyXG5cdFx0dGhpcy5wYXJzZVJlbGF0aXZlVmFsdWUodmFsdWUpO1xyXG5cdFx0dGhpcy5uZ0NvbnRyb2wuY29udHJvbD8uc2V0VmFsdWUodmFsdWUpO1xyXG5cdFx0dGhpcy5jbG9zZVF1aWNrU2VsZWN0UGFuZWxzKCk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGNsb3NlUXVpY2tTZWxlY3RQYW5lbHMoKTogdm9pZCB7XHJcblx0XHR0aGlzLnNob3dRdWlja1NlbGVjdC5zZXQoZmFsc2UpO1xyXG5cdFx0dGhpcy5zaG93T3ZlcmxheVBhbmVsLnNldChmYWxzZSk7XHJcblx0fVxyXG5cclxuXHR0b2dnbGVRdWlja1NlbGVjdChldmVudDogRXZlbnQpOiB2b2lkIHtcclxuXHRcdGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG5cdFx0dGhpcy5zaG93UXVpY2tTZWxlY3QudXBkYXRlKCh2YWx1ZSkgPT4gIXZhbHVlKTtcclxuXHRcdGlmICh0aGlzLnNob3dRdWlja1NlbGVjdCgpKSB7XHJcblx0XHRcdHRoaXMuc2hvd092ZXJsYXlQYW5lbC5zZXQoZmFsc2UpO1xyXG5cdFx0XHR0aGlzLm92ZXJsYXlQYW5lbD8uaGlkZSgpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0b25JbnB1dENsaWNrKGV2ZW50OiBFdmVudCk6IHZvaWQge1xyXG5cdFx0dGhpcy5zaG93UXVpY2tTZWxlY3Quc2V0KGZhbHNlKTtcclxuXHRcdHRoaXMub3ZlcmxheVBhbmVsPy50b2dnbGUoZXZlbnQpO1xyXG5cdH1cclxuXHJcblx0Z2V0RGlzcGxheVZhbHVlKCk6IHN0cmluZyB7XHJcblx0XHRjb25zdCB2YWx1ZSA9IHRoaXMubmdDb250cm9sLmNvbnRyb2w/LnZhbHVlO1xyXG5cclxuXHRcdGlmICh2YWx1ZSA9PSBudWxsKSByZXR1cm4gJyc7XHJcblxyXG5cdFx0aWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpIHtcclxuXHRcdFx0cmV0dXJuIHRoaXMuZm9ybWF0QWJzb2x1dGVEYXRlKHZhbHVlKTtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xyXG5cdFx0XHRyZXR1cm4gdGhpcy5mb3JtYXRSZWxhdGl2ZURhdGUodmFsdWUpO1xyXG5cdFx0fVxyXG5cclxuXHRcdHJldHVybiAnJztcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgZm9ybWF0QWJzb2x1dGVEYXRlKHZhbHVlOiBudW1iZXIpOiBzdHJpbmcge1xyXG5cdFx0Y29uc3QgZGF0ZVN0ciA9IHZhbHVlLnRvU3RyaW5nKCk7XHJcblx0XHRpZiAoZGF0ZVN0ci5sZW5ndGggPT09IDE0KSB7XHJcblx0XHRcdHRyeSB7XHJcblx0XHRcdFx0Y29uc3QgZGF0ZSA9IHBhcnNlKGRhdGVTdHIsICd5eXl5TU1kZEhIbW1zcycsIG5ldyBEYXRlKCkpO1xyXG5cdFx0XHRcdHJldHVybiBmb3JtYXQoZGF0ZSwgJ2RkLk1NLnl5eXkgSEg6bW06c3MnKTtcclxuXHRcdFx0fSBjYXRjaCAoZXJyb3IpIHtcclxuXHRcdFx0XHRyZXR1cm4gZGF0ZVN0cjtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIGRhdGVTdHI7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGZvcm1hdFJlbGF0aXZlRGF0ZSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcclxuXHRcdGNvbnN0IHF1aWNrT3B0aW9uID0gdGhpcy5jb21tb25seVVzZWRPcHRpb25zLmZpbmQoKG9wdDogUXVpY2tTZWxlY3RPcHRpb24pID0+IG9wdC52YWx1ZSA9PT0gdmFsdWUpO1xyXG5cdFx0aWYgKHF1aWNrT3B0aW9uKSB7XHJcblx0XHRcdHJldHVybiBxdWlja09wdGlvbi5sYWJlbDtcclxuXHRcdH1cclxuXHJcblx0XHRjb25zdCBtYXRjaCA9IHZhbHVlLm1hdGNoKC9ebm93XFxzKihbKy1dKVxccyooXFxkKykoW3NtaGR3TXldKSQvKTtcclxuXHRcdGlmIChtYXRjaCkge1xyXG5cdFx0XHRjb25zdCBbLCBkaXJlY3Rpb24sIGFtb3VudCwgdW5pdF0gPSBtYXRjaDtcclxuXHRcdFx0Y29uc3QgZGlyZWN0aW9uVGV4dCA9IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoXHJcblx0XHRcdFx0ZGlyZWN0aW9uID09PSBSZWxhdGl2ZURhdGVEaXJlY3Rpb24uUGFzdCA/ICdyZWxhdGl2ZURhdGVTZWxlY3Rvci5sYXN0JyA6ICdyZWxhdGl2ZURhdGVTZWxlY3Rvci5uZXh0J1xyXG5cdFx0XHQpO1xyXG5cdFx0XHRjb25zdCB1bml0VGV4dCA9IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUodGhpcy5nZXRVbml0VHJhbnNsYXRpb25LZXkodW5pdCwgZGlyZWN0aW9uKSk7XHJcblx0XHRcdHJldHVybiBgJHtkaXJlY3Rpb25UZXh0fSAke2Ftb3VudH0gJHt1bml0VGV4dH1gO1xyXG5cdFx0fVxyXG5cclxuXHRcdHJldHVybiB2YWx1ZTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgZ2V0VW5pdFRyYW5zbGF0aW9uS2V5KHVuaXQ6IHN0cmluZywgZGlyZWN0aW9uOiBzdHJpbmcpOiBzdHJpbmcge1xyXG5cdFx0Y29uc3QgdW5pdE5hbWVNYXA6IFJlY29yZDxzdHJpbmcsIFJlbGF0aXZlRGF0ZVVuaXROYW1lPiA9IHtcclxuXHRcdFx0W1JlbGF0aXZlRGF0ZVVuaXQuU2Vjb25kc106IFJlbGF0aXZlRGF0ZVVuaXROYW1lLlNlY29uZHMsXHJcblx0XHRcdFtSZWxhdGl2ZURhdGVVbml0Lk1pbnV0ZXNdOiBSZWxhdGl2ZURhdGVVbml0TmFtZS5NaW51dGVzLFxyXG5cdFx0XHRbUmVsYXRpdmVEYXRlVW5pdC5Ib3Vyc106IFJlbGF0aXZlRGF0ZVVuaXROYW1lLkhvdXJzLFxyXG5cdFx0XHRbUmVsYXRpdmVEYXRlVW5pdC5EYXlzXTogUmVsYXRpdmVEYXRlVW5pdE5hbWUuRGF5cyxcclxuXHRcdFx0W1JlbGF0aXZlRGF0ZVVuaXQuV2Vla3NdOiBSZWxhdGl2ZURhdGVVbml0TmFtZS5XZWVrcyxcclxuXHRcdFx0W1JlbGF0aXZlRGF0ZVVuaXQuTW9udGhzXTogUmVsYXRpdmVEYXRlVW5pdE5hbWUuTW9udGhzLFxyXG5cdFx0XHRbUmVsYXRpdmVEYXRlVW5pdC5ZZWFyc106IFJlbGF0aXZlRGF0ZVVuaXROYW1lLlllYXJzXHJcblx0XHR9O1xyXG5cclxuXHRcdGNvbnN0IHN1ZmZpeCA9XHJcblx0XHRcdGRpcmVjdGlvbiA9PT0gUmVsYXRpdmVEYXRlRGlyZWN0aW9uLlBhc3QgPyBSZWxhdGl2ZURhdGVVbml0U3VmZml4LkFnbyA6IFJlbGF0aXZlRGF0ZVVuaXRTdWZmaXguRnJvbU5vdztcclxuXHRcdHJldHVybiBgcmVsYXRpdmVEYXRlU2VsZWN0b3IudW5pdHMuJHt1bml0TmFtZU1hcFt1bml0XX0ke3N1ZmZpeH1gO1xyXG5cdH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicmVsYXRpdmUtZGF0ZS1zZWxlY3RvclwiPlxyXG5cdDxkaXYgY2xhc3M9XCJpbnB1dC13cmFwcGVyIGZsZXggYWxpZ24taXRlbXMtY2VudGVyXCIgKGNsaWNrKT1cIm9uSW5wdXRDbGljaygkZXZlbnQpXCI+XHJcblx0XHQ8aW5wdXRcclxuXHRcdFx0dHlwZT1cInRleHRcIlxyXG5cdFx0XHRyZWFkb25seVxyXG5cdFx0XHRbdmFsdWVdPVwiZ2V0RGlzcGxheVZhbHVlKClcIlxyXG5cdFx0XHRjbGFzcz1cInAtaW5wdXR0ZXh0IHAtY29tcG9uZW50XCJcclxuXHRcdFx0W2NsYXNzLnAtaW52YWxpZF09XCJuZ0NvbnRyb2wuaW52YWxpZCAmJiBuZ0NvbnRyb2wudG91Y2hlZFwiXHJcblx0XHRcdFtwbGFjZWhvbGRlcl09XCJ0cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgncmVsYXRpdmVEYXRlU2VsZWN0b3IucGxhY2Vob2xkZXInKVwiXHJcblx0XHRcdFtwVG9vbHRpcF09XCJuZ0NvbnRyb2wuaW52YWxpZCAmJiBuZ0NvbnRyb2wudG91Y2hlZCA/IChuZ0NvbnRyb2wuY29udHJvbC52YWx1ZSB8IGlucHV0RXJyb3JNZXNzYWdlOiBuZ0NvbnRyb2wpIDogJydcIlxyXG5cdFx0XHRbdG9vbHRpcE9wdGlvbnNdPVwidG9vbHRpcE9wdGlvbnNcIiAvPlxyXG5cdFx0PGRpdiBjbGFzcz1cImNhbGVuZGFyLWljb24td3JhcHBlciBmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCIgKGNsaWNrKT1cInRvZ2dsZVF1aWNrU2VsZWN0KCRldmVudClcIj5cclxuXHRcdFx0PGkgY2xhc3M9XCJwaSBwaS1jYWxlbmRhciBjYWxlbmRhci1pY29uXCI+PC9pPlxyXG5cdFx0PC9kaXY+XHJcblx0PC9kaXY+XHJcblxyXG5cdDxwLW92ZXJsYXlQYW5lbFxyXG5cdFx0I29wXHJcblx0XHRbc3R5bGVdPVwieyBtaW5XaWR0aDogJzM1MHB4JywgbWF4SGVpZ2h0OiAnNjAwcHgnLCBvdmVyZmxvdzogJ3Zpc2libGUnIH1cIlxyXG5cdFx0W2Rpc21pc3NhYmxlXT1cInRydWVcIlxyXG5cdFx0KG9uSGlkZSk9XCJzaG93T3ZlcmxheVBhbmVsLnNldChmYWxzZSlcIj5cclxuXHRcdDxwLXRhYlZpZXcgKG9uQ2hhbmdlKT1cIm9uVGFiQ2hhbmdlKCRldmVudClcIiBbYWN0aXZlSW5kZXhdPVwiYWN0aXZlVGFiSW5kZXgoKVwiPlxyXG5cdFx0XHQ8cC10YWJQYW5lbCBbaGVhZGVyXT1cInRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdyZWxhdGl2ZURhdGVTZWxlY3Rvci5hYnNvbHV0ZScpXCI+XHJcblx0XHRcdFx0PGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlclwiPlxyXG5cdFx0XHRcdFx0PGFyaWwtY2FsZW5kYXJcclxuXHRcdFx0XHRcdFx0WyhuZ01vZGVsKV09XCJhYnNvbHV0ZURhdGVcIlxyXG5cdFx0XHRcdFx0XHQobmdNb2RlbENoYW5nZSk9XCJvbkFic29sdXRlRGF0ZUNoYW5nZSgkZXZlbnQpXCJcclxuXHRcdFx0XHRcdFx0W2lubGluZV09XCJ0cnVlXCJcclxuXHRcdFx0XHRcdFx0W3Nob3dUaW1lXT1cInRydWVcIlxyXG5cdFx0XHRcdFx0XHRbc2hvd1NlY29uZHNdPVwidHJ1ZVwiPlxyXG5cdFx0XHRcdFx0PC9hcmlsLWNhbGVuZGFyPlxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8L3AtdGFiUGFuZWw+XHJcblxyXG5cdFx0XHQ8cC10YWJQYW5lbCBbaGVhZGVyXT1cInRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdyZWxhdGl2ZURhdGVTZWxlY3Rvci5yZWxhdGl2ZScpXCI+XHJcblx0XHRcdFx0PGRpdj5cclxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sdW1uIGdhcC0yIG0tMlwiPlxyXG5cdFx0XHRcdFx0XHQ8YXJpbC1udW1iZXJcclxuXHRcdFx0XHRcdFx0XHRbKG5nTW9kZWwpXT1cInJlbGF0aXZlVmFsdWVcIlxyXG5cdFx0XHRcdFx0XHRcdChuZ01vZGVsQ2hhbmdlKT1cIm9uUmVsYXRpdmVDaGFuZ2UoKVwiXHJcblx0XHRcdFx0XHRcdFx0W21pbl09XCIxXCJcclxuXHRcdFx0XHRcdFx0XHRbc2hvd0J1dHRvbnNdPVwidHJ1ZVwiXHJcblx0XHRcdFx0XHRcdFx0W3BsYWNlaG9sZGVyXT1cInRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdyZWxhdGl2ZURhdGVTZWxlY3Rvci52YWx1ZVBsYWNlaG9sZGVyJylcIj5cclxuXHRcdFx0XHRcdFx0PC9hcmlsLW51bWJlcj5cclxuXHJcblx0XHRcdFx0XHRcdDxhcmlsLXNlbGVjdC1ib3hcclxuXHRcdFx0XHRcdFx0XHRbKG5nTW9kZWwpXT1cInJlbGF0aXZlVW5pdFwiXHJcblx0XHRcdFx0XHRcdFx0KG5nTW9kZWxDaGFuZ2UpPVwib25SZWxhdGl2ZUNoYW5nZSgpXCJcclxuXHRcdFx0XHRcdFx0XHRbaXRlbXNdPVwicmVsYXRpdmVVbml0c1wiXHJcblx0XHRcdFx0XHRcdFx0W2l0ZW1LZXldPVwiJ3ZhbHVlJ1wiXHJcblx0XHRcdFx0XHRcdFx0W2l0ZW1UZXh0XT1cIidsYWJlbCdcIlxyXG5cdFx0XHRcdFx0XHRcdFtwbGFjZWhvbGRlcl09XCJ0cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgncmVsYXRpdmVEYXRlU2VsZWN0b3Iuc2VsZWN0VW5pdCcpXCI+XHJcblx0XHRcdFx0XHRcdDwvYXJpbC1zZWxlY3QtYm94PlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cIm0tMlwiPlxyXG5cdFx0XHRcdFx0XHQ8c21hbGwgY2xhc3M9XCJ0ZXh0LW11dGVkXCI+XHJcblx0XHRcdFx0XHRcdFx0PHN0cm9uZz57eyB0cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgncmVsYXRpdmVEYXRlU2VsZWN0b3IuZXhhbXBsZXMnKSB9fTo8L3N0cm9uZz4ge3sgdHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ3JlbGF0aXZlRGF0ZVNlbGVjdG9yLmV4YW1wbGVzVGV4dCcpIH19XHJcblx0XHRcdFx0XHRcdDwvc21hbGw+XHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0PC9wLXRhYlBhbmVsPlxyXG5cdFx0PC9wLXRhYlZpZXc+XHJcblx0PC9wLW92ZXJsYXlQYW5lbD5cclxuXHJcblx0PCEtLSBRdWljayBTZWxlY3QgUGFuZWwgLS0+XHJcblx0QGlmIChzaG93UXVpY2tTZWxlY3QoKSkge1xyXG5cdFx0PGRpdiBjbGFzcz1cInF1aWNrLXNlbGVjdC1wYW5lbCBtdC0yXCI+XHJcblx0XHRcdDxkaXYgY2xhc3M9XCJxdWljay1zZWxlY3QtaGVhZGVyIGZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyIHAtM1wiPlxyXG5cdFx0XHRcdDxzcGFuIGNsYXNzPVwidGl0bGVcIj57eyB0cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgncmVsYXRpdmVEYXRlU2VsZWN0b3IucXVpY2tTZWxlY3QnKSB9fTwvc3Bhbj5cclxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTJcIj5cclxuXHRcdFx0XHRcdDxpIGNsYXNzPVwicGkgcGktdGltZXMgY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwic2hvd1F1aWNrU2VsZWN0LnNldChmYWxzZSlcIj48L2k+XHJcblx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8ZGl2IGNsYXNzPVwicXVpY2stc2VsZWN0LWJvZHkgcC0zXCI+XHJcblx0XHRcdFx0PCEtLSBDdXN0b20gUXVpY2sgU2VsZWN0IElucHV0cyAtLT5cclxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwicXVpY2stc2VsZWN0LWN1c3RvbSBtYi0zIHBiLTNcIj5cclxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmbGV4IGdhcC0yIGFsaWduLWl0ZW1zLWNlbnRlciBtYi0zXCI+XHJcblx0XHRcdFx0XHRcdDxhcmlsLXNlbGVjdC1ib3hcclxuXHRcdFx0XHRcdFx0XHRbKG5nTW9kZWwpXT1cInF1aWNrU2VsZWN0RGlyZWN0aW9uXCJcclxuXHRcdFx0XHRcdFx0XHRbaXRlbXNdPVwicXVpY2tTZWxlY3REaXJlY3Rpb25zXCJcclxuXHRcdFx0XHRcdFx0XHRbaXRlbUtleV09XCIndmFsdWUnXCJcclxuXHRcdFx0XHRcdFx0XHRbaXRlbVRleHRdPVwiJ2xhYmVsJ1wiPlxyXG5cdFx0XHRcdFx0XHQ8L2FyaWwtc2VsZWN0LWJveD5cclxuXHJcblx0XHRcdFx0XHRcdDxhcmlsLW51bWJlciBbKG5nTW9kZWwpXT1cInF1aWNrU2VsZWN0VmFsdWVcIiBbbWluXT1cIjFcIiBbc2hvd0J1dHRvbnNdPVwidHJ1ZVwiPiA8L2FyaWwtbnVtYmVyPlxyXG5cclxuXHRcdFx0XHRcdFx0PGFyaWwtc2VsZWN0LWJveFxyXG5cdFx0XHRcdFx0XHRcdFsobmdNb2RlbCldPVwicXVpY2tTZWxlY3RVbml0XCJcclxuXHRcdFx0XHRcdFx0XHRbaXRlbXNdPVwicXVpY2tTZWxlY3RVbml0c1wiXHJcblx0XHRcdFx0XHRcdFx0W2l0ZW1LZXldPVwiJ3ZhbHVlJ1wiXHJcblx0XHRcdFx0XHRcdFx0W2l0ZW1UZXh0XT1cIidsYWJlbCdcIj5cclxuXHRcdFx0XHRcdFx0PC9hcmlsLXNlbGVjdC1ib3g+XHJcblxyXG5cdFx0XHRcdFx0XHQ8YXJpbC1idXR0b25cclxuXHRcdFx0XHRcdFx0XHRbbGFiZWxdPVwidHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ3JlbGF0aXZlRGF0ZVNlbGVjdG9yLmFwcGx5JylcIlxyXG5cdFx0XHRcdFx0XHRcdGNvbG9yPVwicHJpbWFyeVwiXHJcblx0XHRcdFx0XHRcdFx0KGNsaWNrRXZlbnQpPVwiYXBwbHlRdWlja1NlbGVjdEN1c3RvbSgpXCJcclxuXHRcdFx0XHRcdFx0XHRbc3R5bGVdPVwieyAnbWluLXdpZHRoJzogJzgwcHgnIH1cIj5cclxuXHRcdFx0XHRcdFx0PC9hcmlsLWJ1dHRvbj5cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cclxuXHRcdFx0XHQ8IS0tIENvbW1vbmx5IFVzZWQgT3B0aW9ucyAtLT5cclxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwicXVpY2stc2VsZWN0LXNlY3Rpb25cIj5cclxuXHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwidGl0bGUtc2VjdGlvbiBtYi0yXCI+e3sgdHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ3JlbGF0aXZlRGF0ZVNlbGVjdG9yLmNvbW1vbmx5VXNlZCcpIH19PC9zcGFuPlxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cInF1aWNrLXNlbGVjdC1vcHRpb25zXCI+XHJcblx0XHRcdFx0XHRcdEBmb3IgKG9wdGlvbiBvZiBjb21tb25seVVzZWRPcHRpb25zOyB0cmFjayBvcHRpb24udmFsdWUpIHtcclxuXHRcdFx0XHRcdFx0XHQ8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cInF1aWNrLXNlbGVjdC1vcHRpb25cIiAoY2xpY2spPVwiYXBwbHlRdWlja1NlbGVjdChvcHRpb24pXCI+XHJcblx0XHRcdFx0XHRcdFx0XHR7eyBvcHRpb24ubGFiZWwgfX1cclxuXHRcdFx0XHRcdFx0XHQ8L2J1dHRvbj5cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0PC9kaXY+XHJcblx0fVxyXG48L2Rpdj5cclxuIl19
|
|
248
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsYXRpdmUtZGF0ZS1zZWxlY3Rvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3VpL3JlbGF0aXZlRGF0ZVNlbGVjdG9yL3NyYy9yZWxhdGl2ZS1kYXRlLXNlbGVjdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdWkvcmVsYXRpdmVEYXRlU2VsZWN0b3Ivc3JjL3JlbGF0aXZlLWRhdGUtc2VsZWN0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUF5QixNQUFNLGVBQWUsQ0FBQztBQUNwRixPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBZ0Isa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhELE9BQU8sRUFBRSxlQUFlLEVBQW9CLE1BQU0sbUJBQW1CLENBQUM7QUFDdEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFekMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHFCQUFxQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakQsT0FBTyxFQUFF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QyxDQUFDLENBQUMsc0JBQXNCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLENBQUM7UUFDeEcsT0FBTyw4QkFBOEIsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDO0lBQ25FLENBQUM7OEdBbFBXLDZCQUE2QjtrR0FBN0IsNkJBQTZCLHlXQy9DMUMscWlLQXNIQSx1MUdEdEZFLFlBQVksOEJBQ1osbUJBQW1CLHNJQUNuQixXQUFXLHNQQUNYLGtCQUFrQixrV0FDbEIsYUFBYSwya0JBQ2IsYUFBYSxxWEFDYixlQUFlLCtCQUNmLGlCQUFpQix3YkFDakIsZUFBZSw4TkFDZixlQUFlLDBUQUNmLGtCQUFrQix3U0FDbEIscUJBQXFCOzsyRkFJViw2QkFBNkI7a0JBdEJ6QyxTQUFTO2lDQUNHLElBQUksWUFFZix3SEFBd0gsV0FHaEg7d0JBQ1IsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLFdBQVc7d0JBQ1gsa0JBQWtCO3dCQUNsQixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixpQkFBaUI7d0JBQ2pCLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLHFCQUFxQjtxQkFDckIsa0JBQ2UsQ0FBQyxzQkFBc0IsQ0FBQztxRkFHdkIsWUFBWTtzQkFBNUIsU0FBUzt1QkFBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBzaWduYWwsIFZpZXdDaGlsZCwgT25Jbml0LCBBZnRlclZpZXdJbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5cclxuaW1wb3J0IHsgT3ZlcmxheVBhbmVsLCBPdmVybGF5UGFuZWxNb2R1bGUgfSBmcm9tICdwcmltZW5nL292ZXJsYXlwYW5lbCc7XHJcbmltcG9ydCB7IFRhYlZpZXdNb2R1bGUgfSBmcm9tICdwcmltZW5nL3RhYnZpZXcnO1xyXG5pbXBvcnQgeyBUb29sdGlwTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90b29sdGlwJztcclxuXHJcbmltcG9ydCB7IFRyYW5zbG9jb01vZHVsZSwgVHJhbnNsb2NvU2VydmljZSB9IGZyb20gJ0BuZ25lYXQvdHJhbnNsb2NvJztcclxuaW1wb3J0IHsgZm9ybWF0LCBwYXJzZSB9IGZyb20gJ2RhdGUtZm5zJztcclxuXHJcbmltcG9ydCB7IEJhc2VJbnB1dENvbXBvbmVudCwgSW5wdXRFcnJvck1lc3NhZ2VQaXBlLCBWYWx1ZUFjY2Vzc29yRGlyZWN0aXZlIH0gZnJvbSAnYXJpbC91aS9saWInO1xyXG5pbXBvcnQgeyBDYWxlbmRhckNvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvY2FsZW5kYXInO1xyXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdhcmlsL3VpL2J1dHRvbic7XHJcbmltcG9ydCB7IE51bWJlckNvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvbnVtYmVyJztcclxuaW1wb3J0IHsgU2VsZWN0Qm94Q29tcG9uZW50IH0gZnJvbSAnYXJpbC91aS9zZWxlY3RCb3gnO1xyXG5pbXBvcnQgJ2FyaWwvdXRpbC9wcmltaXRpdmUtZXh0ZW5zaW9ucyc7XHJcblxyXG5pbXBvcnQgeyBSZWxhdGl2ZURhdGVVbml0LCBSZWxhdGl2ZURhdGVEaXJlY3Rpb24sIFJlbGF0aXZlRGF0ZVVuaXROYW1lLCBSZWxhdGl2ZURhdGVVbml0U3VmZml4IH0gZnJvbSAnLi9lbnVtJztcclxuXHJcbmludGVyZmFjZSBRdWlja1NlbGVjdE9wdGlvbiB7XHJcblx0bGFiZWw6IHN0cmluZztcclxuXHR2YWx1ZTogc3RyaW5nO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHRzdGFuZGFsb25lOiB0cnVlLFxyXG5cdHNlbGVjdG9yOlxyXG5cdFx0J2FyaWwtcmVsYXRpdmUtZGF0ZS1waWNrZXJbbmdNb2RlbF0sIGFyaWwtcmVsYXRpdmUtZGF0ZS1waWNrZXJbZm9ybUNvbnRyb2xdLCBhcmlsLXJlbGF0aXZlLWRhdGUtcGlja2VyW2Zvcm1Db250cm9sTmFtZV0nLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9yZWxhdGl2ZS1kYXRlLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybHM6IFsnLi9yZWxhdGl2ZS1kYXRlLXNlbGVjdG9yLmNvbXBvbmVudC5zY3NzJ10sXHJcblx0aW1wb3J0czogW1xyXG5cdFx0Q29tbW9uTW9kdWxlLFxyXG5cdFx0UmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuXHRcdEZvcm1zTW9kdWxlLFxyXG5cdFx0T3ZlcmxheVBhbmVsTW9kdWxlLFxyXG5cdFx0VGFiVmlld01vZHVsZSxcclxuXHRcdFRvb2x0aXBNb2R1bGUsXHJcblx0XHRUcmFuc2xvY29Nb2R1bGUsXHJcblx0XHRDYWxlbmRhckNvbXBvbmVudCxcclxuXHRcdEJ1dHRvbkNvbXBvbmVudCxcclxuXHRcdE51bWJlckNvbXBvbmVudCxcclxuXHRcdFNlbGVjdEJveENvbXBvbmVudCxcclxuXHRcdElucHV0RXJyb3JNZXNzYWdlUGlwZVxyXG5cdF0sXHJcblx0aG9zdERpcmVjdGl2ZXM6IFtWYWx1ZUFjY2Vzc29yRGlyZWN0aXZlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmVsYXRpdmVEYXRlU2VsZWN0b3JDb21wb25lbnQgZXh0ZW5kcyBCYXNlSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xyXG5cdEBWaWV3Q2hpbGQoJ29wJykgb3ZlcmxheVBhbmVsITogT3ZlcmxheVBhbmVsO1xyXG5cclxuXHRhY3RpdmVUYWJJbmRleCA9IHNpZ25hbDxudW1iZXI+KDApO1xyXG5cdHNob3dRdWlja1NlbGVjdCA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XHJcblx0c2hvd092ZXJsYXlQYW5lbCA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XHJcblxyXG5cdC8vIEFic29sdXRlIG1vZGVcclxuXHRhYnNvbHV0ZURhdGU6IG51bWJlciB8IG51bGwgPSBudWxsO1xyXG5cclxuXHQvLyBSZWxhdGl2ZSBtb2RlXHJcblx0cmVsYXRpdmVWYWx1ZTogbnVtYmVyIHwgbnVsbCA9IG51bGw7XHJcblx0cmVsYXRpdmVVbml0OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuXHRyZWxhdGl2ZURpcmVjdGlvbiA9IFJlbGF0aXZlRGF0ZURpcmVjdGlvbi5QYXN0O1xyXG5cclxuXHRyZWxhdGl2ZVVuaXRzOiBhbnlbXSA9IFtdO1xyXG5cdHF1aWNrU2VsZWN0RGlyZWN0aW9uczogQXJyYXk8eyBsYWJlbDogc3RyaW5nOyB2YWx1ZTogc3RyaW5nIH0+ID0gW107XHJcblx0cXVpY2tTZWxlY3RVbml0czogQXJyYXk8eyBsYWJlbDogc3RyaW5nOyB2YWx1ZTogc3RyaW5nIH0+ID0gW107XHJcblx0Y29tbW9ubHlVc2VkT3B0aW9uczogUXVpY2tTZWxlY3RPcHRpb25bXSA9IFtdO1xyXG5cclxuXHQvLyBRdWljayBzZWxlY3QgaW5wdXRzXHJcblx0cXVpY2tTZWxlY3REaXJlY3Rpb24gPSBSZWxhdGl2ZURhdGVEaXJlY3Rpb24uUGFzdDtcclxuXHRxdWlja1NlbGVjdFZhbHVlOiBudW1iZXIgfCBudWxsID0gbnVsbDtcclxuXHRxdWlja1NlbGVjdFVuaXQgPSBSZWxhdGl2ZURhdGVVbml0Lk1pbnV0ZXM7XHJcblxyXG5cdGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSB0cmFuc2xvY29TZXJ2aWNlOiBUcmFuc2xvY29TZXJ2aWNlKSB7XHJcblx0XHRzdXBlcigpO1xyXG5cclxuXHRcdHRoaXMuaW5pdGlhbGl6ZU9wdGlvbnMoKTtcclxuXHR9XHJcblxyXG5cdG5nT25Jbml0KCk6IHZvaWQge1xyXG5cdFx0dGhpcy5uZ0NvbnRyb2wuY29udHJvbD8udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodmFsdWUpID0+IHtcclxuXHRcdFx0dGhpcy5vblZhbHVlQ2hhbmdlKHZhbHVlKTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0bmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG5cdFx0aWYgKHRoaXMubmdDb250cm9sLmNvbnRyb2w/LnZhbHVlICE9IG51bGwpIHtcclxuXHRcdFx0dGhpcy5vblZhbHVlQ2hhbmdlKHRoaXMubmdDb250cm9sLmNvbnRyb2w/LnZhbHVlKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHByaXZhdGUgaW5pdGlhbGl6ZU9wdGlvbnMoKTogdm9pZCB7XHJcblx0XHRjb25zdCB1bml0cyA9IE9iamVjdC52YWx1ZXMoUmVsYXRpdmVEYXRlVW5pdCk7XHJcblx0XHRjb25zdCB1bml0TmFtZXMgPSBPYmplY3QudmFsdWVzKFJlbGF0aXZlRGF0ZVVuaXROYW1lKTtcclxuXHRcdGNvbnN0IGRpcmVjdGlvbnMgPSBPYmplY3QudmFsdWVzKFJlbGF0aXZlRGF0ZURpcmVjdGlvbik7XHJcblx0XHRjb25zdCBkaXJlY3Rpb25TdWZmaXhlcyA9IE9iamVjdC52YWx1ZXMoUmVsYXRpdmVEYXRlVW5pdFN1ZmZpeCk7XHJcblxyXG5cdFx0Ly8gUmVsYXRpdmUgdW5pdHNcclxuXHRcdHRoaXMucmVsYXRpdmVVbml0cyA9IHVuaXRzLmZsYXRNYXAoKGNvZGUsIGluZGV4KSA9PlxyXG5cdFx0XHRkaXJlY3Rpb25zLm1hcCgoZGlyLCBkaXJJbmRleCkgPT4gKHtcclxuXHRcdFx0XHRsYWJlbDogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZShcclxuXHRcdFx0XHRcdGByZWxhdGl2ZURhdGVTZWxlY3Rvci51bml0cy4ke3VuaXROYW1lc1tpbmRleF19JHtkaXJlY3Rpb25TdWZmaXhlc1tkaXJJbmRleF19YFxyXG5cdFx0XHRcdCksXHJcblx0XHRcdFx0dmFsdWU6IGAke2NvZGV9JHtkaXJ9YFxyXG5cdFx0XHR9KSlcclxuXHRcdCk7XHJcblxyXG5cdFx0Ly8gUXVpY2sgU2VsZWN0IC0gTGFzdC9OZXh0IG9wdGlvbnNcclxuXHRcdHRoaXMucXVpY2tTZWxlY3REaXJlY3Rpb25zID0gW1xyXG5cdFx0XHR7IGxhYmVsOiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdyZWxhdGl2ZURhdGVTZWxlY3Rvci5sYXN0JyksIHZhbHVlOiBSZWxhdGl2ZURhdGVEaXJlY3Rpb24uUGFzdCB9LFxyXG5cdFx0XHR7IGxhYmVsOiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdyZWxhdGl2ZURhdGVTZWxlY3Rvci5uZXh0JyksIHZhbHVlOiBSZWxhdGl2ZURhdGVEaXJlY3Rpb24uRnV0dXJlIH1cclxuXHRcdF07XHJcblxyXG5cdFx0dGhpcy5xdWlja1NlbGVjdFVuaXRzID0gdW5pdHMubWFwKChjb2RlLCBpbmRleCkgPT4gKHtcclxuXHRcdFx0bGFiZWw6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoYHJlbGF0aXZlRGF0ZVNlbGVjdG9yLnVuaXRzLiR7dW5pdE5hbWVzW2luZGV4XX1gKSxcclxuXHRcdFx0dmFsdWU6IGNvZGVcclxuXHRcdH0pKTtcclxuXHJcblx0XHQvLyBDb21tb25seSB1c2VkIHF1aWNrIHNlbGVjdHNcclxuXHRcdGNvbnN0IHF1aWNrT3B0aW9ucyA9IFtcclxuXHRcdFx0eyBrZXk6ICd0b2RheScsIHZhbHVlOiBgbm93LyR7UmVsYXRpdmVEYXRlVW5pdC5EYXlzfWAgfSxcclxuXHRcdFx0eyBrZXk6ICd0aGlzV2VlaycsIHZhbHVlOiBgbm93LyR7UmVsYXRpdmVEYXRlVW5pdC5XZWVrc31gIH0sXHJcblx0XHRcdHsga2V5OiAnbGFzdDFNaW51dGUnLCB2YWx1ZTogYG5vdyR7UmVsYXRpdmVEYXRlRGlyZWN0aW9uLlBhc3R9MSR7UmVsYXRpdmVEYXRlVW5pdC5NaW51dGVzfWAgfSxcclxuXHRcdFx0eyBrZXk6ICdsYXN0MTVNaW51dGVzJywgdmFsdWU6IGBub3cke1JlbGF0aXZlRGF0ZURpcmVjdGlvbi5QYXN0fTE1JHtSZWxhdGl2ZURhdGVVbml0Lk1pbnV0ZXN9YCB9LFxyXG5cdFx0XHR7IGtleTogJ2xhc3QzME1pbnV0ZXMnLCB2YWx1ZTogYG5vdyR7UmVsYXRpdmVEYXRlRGlyZWN0aW9uLlBhc3R9MzAke1JlbGF0aXZlRGF0ZVVuaXQuTWludXRlc31gIH0sXHJcblx0XHRcdHsga2V5OiAnbGFzdDFIb3VyJywgdmFsdWU6IGBub3cke1JlbGF0aXZlRGF0ZURpcmVjdGlvbi5QYXN0fTEke1JlbGF0aXZlRGF0ZVVuaXQuSG91cnN9YCB9LFxyXG5cdFx0XHR7IGtleTogJ2xhc3QyNEhvdXJzJywgdmFsdWU6IGBub3cke1JlbGF0aXZlRGF0ZURpcmVjdGlvbi5QYXN0fTI0JHtSZWxhdGl2ZURhdGVVbml0LkhvdXJzfWAgfSxcclxuXHRcdFx0eyBrZXk6ICdsYXN0N0RheXMnLCB2YWx1ZTogYG5vdyR7UmVsYXRpdmVEYXRlRGlyZWN0aW9uLlBhc3R9NyR7UmVsYXRpdmVEYXRlVW5pdC5EYXlzfWAgfSxcclxuXHRcdFx0eyBrZXk6ICdsYXN0MzBEYXlzJywgdmFsdWU6IGBub3cke1JlbGF0aXZlRGF0ZURpcmVjdGlvbi5QYXN0fTMwJHtSZWxhdGl2ZURhdGVVbml0LkRheXN9YCB9LFxyXG5cdFx0XHR7IGtleTogJ2xhc3Q5MERheXMnLCB2YWx1ZTogYG5vdyR7UmVsYXRpdmVEYXRlRGlyZWN0aW9uLlBhc3R9OTAke1JlbGF0aXZlRGF0ZVVuaXQuRGF5c31gIH0sXHJcblx0XHRcdHsga2V5OiAnbGFzdDFZZWFyJywgdmFsdWU6IGBub3cke1JlbGF0aXZlRGF0ZURpcmVjdGlvbi5QYXN0fTEke1JlbGF0aXZlRGF0ZVVuaXQuWWVhcnN9YCB9XHJcblx0XHRdO1xyXG5cclxuXHRcdHRoaXMuY29tbW9ubHlVc2VkT3B0aW9ucyA9IHF1aWNrT3B0aW9ucy5tYXAoKG9wdCkgPT4gKHtcclxuXHRcdFx0bGFiZWw6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoYHJlbGF0aXZlRGF0ZVNlbGVjdG9yLnF1aWNrT3B0aW9ucy4ke29wdC5rZXl9YCksXHJcblx0XHRcdHZhbHVlOiBvcHQudmFsdWVcclxuXHRcdH0pKTtcclxuXHR9XHJcblxyXG5cdG9uVmFsdWVDaGFuZ2UodmFsdWU6IG51bWJlciB8IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpOiB2b2lkIHtcclxuXHRcdGlmICh2YWx1ZSAhPSBudWxsKSB7XHJcblx0XHRcdGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XHJcblx0XHRcdFx0dGhpcy5hY3RpdmVUYWJJbmRleC5zZXQoMCk7XHJcblx0XHRcdFx0dGhpcy5hYnNvbHV0ZURhdGUgPSB2YWx1ZTtcclxuXHRcdFx0fSBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XHJcblx0XHRcdFx0dGhpcy5hY3RpdmVUYWJJbmRleC5zZXQoMSk7XHJcblx0XHRcdFx0dGhpcy5wYXJzZVJlbGF0aXZlVmFsdWUodmFsdWUpO1xyXG5cdFx0XHR9XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHR0aGlzLmFic29sdXRlRGF0ZSA9IG51bGw7XHJcblx0XHRcdHRoaXMucmVsYXRpdmVWYWx1ZSA9IG51bGw7XHJcblx0XHRcdHRoaXMucmVsYXRpdmVVbml0ID0gbnVsbDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHBhcnNlUmVsYXRpdmVWYWx1ZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XHJcblx0XHRjb25zdCBtYXRjaCA9IHZhbHVlLm1hdGNoKC9ebm93XFxzKig/OihbKy1dKVxccyooXFxkKykoW3NtaGR3TXldKSk/XFxzKig/OlxcLyhbc21oZHdNeV0pKT8kLyk7XHJcblxyXG5cdFx0aWYgKG1hdGNoKSB7XHJcblx0XHRcdGNvbnN0IFssIGRpcmVjdGlvbiwgYW1vdW50LCB1bml0XSA9IG1hdGNoO1xyXG5cdFx0XHRpZiAoZGlyZWN0aW9uICYmIGFtb3VudCAmJiB1bml0KSB7XHJcblx0XHRcdFx0dGhpcy5yZWxhdGl2ZURpcmVjdGlvbiA9IGRpcmVjdGlvbiBhcyBSZWxhdGl2ZURhdGVEaXJlY3Rpb247XHJcblx0XHRcdFx0dGhpcy5yZWxhdGl2ZVZhbHVlID0gcGFyc2VJbnQoYW1vdW50LCAxMCk7XHJcblx0XHRcdFx0dGhpcy5yZWxhdGl2ZVVuaXQgPSB1bml0ICsgZGlyZWN0aW9uO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRvbkFic29sdXRlRGF0ZUNoYW5nZShkYXRlOiBudW1iZXIgfCBudWxsKTogdm9pZCB7XHJcblx0XHR0aGlzLmFic29sdXRlRGF0ZSA9IGRhdGU7XHJcblx0XHR0aGlzLnVwZGF0ZVZhbHVlKCk7XHJcblx0fVxyXG5cclxuXHRvblJlbGF0aXZlQ2hhbmdlKCk6IHZvaWQge1xyXG5cdFx0dGhpcy51cGRhdGVWYWx1ZSgpO1xyXG5cdH1cclxuXHJcblx0b25UYWJDaGFuZ2UoZXZlbnQ6IHsgaW5kZXg6IG51bWJlciB9KTogdm9pZCB7XHJcblx0XHR0aGlzLmFjdGl2ZVRhYkluZGV4LnNldChldmVudC5pbmRleCk7XHJcblx0fVxyXG5cclxuXHR1cGRhdGVWYWx1ZSgpOiB2b2lkIHtcclxuXHRcdGlmICh0aGlzLmFjdGl2ZVRhYkluZGV4KCkgPT09IDAgJiYgdGhpcy5hYnNvbHV0ZURhdGUgIT0gbnVsbCkge1xyXG5cdFx0XHR0aGlzLm5nQ29udHJvbC5jb250cm9sPy5zZXRWYWx1ZSh0aGlzLmFic29sdXRlRGF0ZSk7XHJcblx0XHR9IGVsc2UgaWYgKHRoaXMuYWN0aXZlVGFiSW5kZXgoKSA9PT0gMSAmJiB0aGlzLnJlbGF0aXZlVmFsdWUgIT0gbnVsbCAmJiB0aGlzLnJlbGF0aXZlVW5pdCkge1xyXG5cdFx0XHRjb25zdCB1bml0ID0gdGhpcy5yZWxhdGl2ZVVuaXQuY2hhckF0KDApO1xyXG5cdFx0XHRjb25zdCBkaXJlY3Rpb24gPSB0aGlzLnJlbGF0aXZlVW5pdC5jaGFyQXQoMSk7XHJcblx0XHRcdHRoaXMubmdDb250cm9sLmNvbnRyb2w/LnNldFZhbHVlKGBub3cke2RpcmVjdGlvbn0ke3RoaXMucmVsYXRpdmVWYWx1ZX0ke3VuaXR9YCk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRhcHBseVF1aWNrU2VsZWN0KG9wdGlvbjogUXVpY2tTZWxlY3RPcHRpb24pOiB2b2lkIHtcclxuXHRcdHRoaXMuYXBwbHlSZWxhdGl2ZVZhbHVlKG9wdGlvbi52YWx1ZSk7XHJcblx0fVxyXG5cclxuXHRhcHBseVF1aWNrU2VsZWN0Q3VzdG9tKCk6IHZvaWQge1xyXG5cdFx0aWYgKHRoaXMucXVpY2tTZWxlY3RWYWx1ZSAhPSBudWxsICYmIHRoaXMucXVpY2tTZWxlY3RVbml0KSB7XHJcblx0XHRcdGNvbnN0IHJlbGF0aXZlU3RyaW5nID0gYG5vdyR7dGhpcy5xdWlja1NlbGVjdERpcmVjdGlvbn0ke3RoaXMucXVpY2tTZWxlY3RWYWx1ZX0ke3RoaXMucXVpY2tTZWxlY3RVbml0fWA7XHJcblx0XHRcdHRoaXMuYXBwbHlSZWxhdGl2ZVZhbHVlKHJlbGF0aXZlU3RyaW5nKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHByaXZhdGUgYXBwbHlSZWxhdGl2ZVZhbHVlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuXHRcdHRoaXMuYWN0aXZlVGFiSW5kZXguc2V0KDEpO1xyXG5cdFx0dGhpcy5wYXJzZVJlbGF0aXZlVmFsdWUodmFsdWUpO1xyXG5cdFx0dGhpcy5uZ0NvbnRyb2wuY29udHJvbD8uc2V0VmFsdWUodmFsdWUpO1xyXG5cdFx0dGhpcy5jbG9zZVF1aWNrU2VsZWN0UGFuZWxzKCk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGNsb3NlUXVpY2tTZWxlY3RQYW5lbHMoKTogdm9pZCB7XHJcblx0XHR0aGlzLnNob3dRdWlja1NlbGVjdC5zZXQoZmFsc2UpO1xyXG5cdFx0dGhpcy5zaG93T3ZlcmxheVBhbmVsLnNldChmYWxzZSk7XHJcblx0fVxyXG5cclxuXHR0b2dnbGVRdWlja1NlbGVjdChldmVudDogRXZlbnQpOiB2b2lkIHtcclxuXHRcdGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG5cdFx0dGhpcy5zaG93UXVpY2tTZWxlY3QudXBkYXRlKCh2YWx1ZSkgPT4gIXZhbHVlKTtcclxuXHRcdGlmICh0aGlzLnNob3dRdWlja1NlbGVjdCgpKSB7XHJcblx0XHRcdHRoaXMuc2hvd092ZXJsYXlQYW5lbC5zZXQoZmFsc2UpO1xyXG5cdFx0XHR0aGlzLm92ZXJsYXlQYW5lbD8uaGlkZSgpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0b25JbnB1dENsaWNrKGV2ZW50OiBFdmVudCk6IHZvaWQge1xyXG5cdFx0dGhpcy5zaG93UXVpY2tTZWxlY3Quc2V0KGZhbHNlKTtcclxuXHRcdHRoaXMub3ZlcmxheVBhbmVsPy50b2dnbGUoZXZlbnQpO1xyXG5cdH1cclxuXHJcblx0Z2V0RGlzcGxheVZhbHVlKCk6IHN0cmluZyB7XHJcblx0XHRjb25zdCB2YWx1ZSA9IHRoaXMubmdDb250cm9sLmNvbnRyb2w/LnZhbHVlO1xyXG5cclxuXHRcdGlmICh2YWx1ZSA9PSBudWxsKSByZXR1cm4gJyc7XHJcblxyXG5cdFx0aWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpIHtcclxuXHRcdFx0cmV0dXJuIHRoaXMuZm9ybWF0QWJzb2x1dGVEYXRlKHZhbHVlKTtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xyXG5cdFx0XHRyZXR1cm4gdGhpcy5mb3JtYXRSZWxhdGl2ZURhdGUodmFsdWUpO1xyXG5cdFx0fVxyXG5cclxuXHRcdHJldHVybiAnJztcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgZm9ybWF0QWJzb2x1dGVEYXRlKHZhbHVlOiBudW1iZXIpOiBzdHJpbmcge1xyXG5cdFx0Y29uc3QgZGF0ZVN0ciA9IHZhbHVlLnRvU3RyaW5nKCk7XHJcblx0XHRpZiAoZGF0ZVN0ci5sZW5ndGggPT09IDE0KSB7XHJcblx0XHRcdHRyeSB7XHJcblx0XHRcdFx0Y29uc3QgZGF0ZSA9IHBhcnNlKGRhdGVTdHIsICd5eXl5TU1kZEhIbW1zcycsIG5ldyBEYXRlKCkpO1xyXG5cdFx0XHRcdHJldHVybiBmb3JtYXQoZGF0ZSwgJ2RkLk1NLnl5eXkgSEg6bW06c3MnKTtcclxuXHRcdFx0fSBjYXRjaCAoZXJyb3IpIHtcclxuXHRcdFx0XHRyZXR1cm4gZGF0ZVN0cjtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIGRhdGVTdHI7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGZvcm1hdFJlbGF0aXZlRGF0ZSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcclxuXHRcdGNvbnN0IHF1aWNrT3B0aW9uID0gdGhpcy5jb21tb25seVVzZWRPcHRpb25zLmZpbmQoKG9wdDogUXVpY2tTZWxlY3RPcHRpb24pID0+IG9wdC52YWx1ZSA9PT0gdmFsdWUpO1xyXG5cdFx0aWYgKHF1aWNrT3B0aW9uKSB7XHJcblx0XHRcdHJldHVybiBxdWlja09wdGlvbi5sYWJlbDtcclxuXHRcdH1cclxuXHJcblx0XHRjb25zdCBtYXRjaCA9IHZhbHVlLm1hdGNoKC9ebm93XFxzKihbKy1dKVxccyooXFxkKykoW3NtaGR3TXldKSQvKTtcclxuXHRcdGlmIChtYXRjaCkge1xyXG5cdFx0XHRjb25zdCBbLCBkaXJlY3Rpb24sIGFtb3VudCwgdW5pdF0gPSBtYXRjaDtcclxuXHRcdFx0Y29uc3QgZGlyZWN0aW9uVGV4dCA9IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoXHJcblx0XHRcdFx0ZGlyZWN0aW9uID09PSBSZWxhdGl2ZURhdGVEaXJlY3Rpb24uUGFzdCA/ICdyZWxhdGl2ZURhdGVTZWxlY3Rvci5sYXN0JyA6ICdyZWxhdGl2ZURhdGVTZWxlY3Rvci5uZXh0J1xyXG5cdFx0XHQpO1xyXG5cdFx0XHRjb25zdCB1bml0VGV4dCA9IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUodGhpcy5nZXRVbml0VHJhbnNsYXRpb25LZXkodW5pdCwgZGlyZWN0aW9uKSk7XHJcblx0XHRcdHJldHVybiBgJHtkaXJlY3Rpb25UZXh0fSAke2Ftb3VudH0gJHt1bml0VGV4dH1gO1xyXG5cdFx0fVxyXG5cclxuXHRcdHJldHVybiB2YWx1ZTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgZ2V0VW5pdFRyYW5zbGF0aW9uS2V5KHVuaXQ6IHN0cmluZywgZGlyZWN0aW9uOiBzdHJpbmcpOiBzdHJpbmcge1xyXG5cdFx0Y29uc3QgdW5pdE5hbWVNYXA6IFJlY29yZDxzdHJpbmcsIFJlbGF0aXZlRGF0ZVVuaXROYW1lPiA9IHtcclxuXHRcdFx0W1JlbGF0aXZlRGF0ZVVuaXQuU2Vjb25kc106IFJlbGF0aXZlRGF0ZVVuaXROYW1lLlNlY29uZHMsXHJcblx0XHRcdFtSZWxhdGl2ZURhdGVVbml0Lk1pbnV0ZXNdOiBSZWxhdGl2ZURhdGVVbml0TmFtZS5NaW51dGVzLFxyXG5cdFx0XHRbUmVsYXRpdmVEYXRlVW5pdC5Ib3Vyc106IFJlbGF0aXZlRGF0ZVVuaXROYW1lLkhvdXJzLFxyXG5cdFx0XHRbUmVsYXRpdmVEYXRlVW5pdC5EYXlzXTogUmVsYXRpdmVEYXRlVW5pdE5hbWUuRGF5cyxcclxuXHRcdFx0W1JlbGF0aXZlRGF0ZVVuaXQuV2Vla3NdOiBSZWxhdGl2ZURhdGVVbml0TmFtZS5XZWVrcyxcclxuXHRcdFx0W1JlbGF0aXZlRGF0ZVVuaXQuTW9udGhzXTogUmVsYXRpdmVEYXRlVW5pdE5hbWUuTW9udGhzLFxyXG5cdFx0XHRbUmVsYXRpdmVEYXRlVW5pdC5ZZWFyc106IFJlbGF0aXZlRGF0ZVVuaXROYW1lLlllYXJzXHJcblx0XHR9O1xyXG5cclxuXHRcdGNvbnN0IHN1ZmZpeCA9XHJcblx0XHRcdGRpcmVjdGlvbiA9PT0gUmVsYXRpdmVEYXRlRGlyZWN0aW9uLlBhc3QgPyBSZWxhdGl2ZURhdGVVbml0U3VmZml4LkFnbyA6IFJlbGF0aXZlRGF0ZVVuaXRTdWZmaXguRnJvbU5vdztcclxuXHRcdHJldHVybiBgcmVsYXRpdmVEYXRlU2VsZWN0b3IudW5pdHMuJHt1bml0TmFtZU1hcFt1bml0XX0ke3N1ZmZpeH1gO1xyXG5cdH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicmVsYXRpdmUtZGF0ZS1zZWxlY3RvclwiPlxyXG5cdDxkaXYgY2xhc3M9XCJpbnB1dC13cmFwcGVyIGZsZXggYWxpZ24taXRlbXMtY2VudGVyXCIgKGNsaWNrKT1cIm9uSW5wdXRDbGljaygkZXZlbnQpXCI+XHJcblx0XHQ8aW5wdXRcclxuXHRcdFx0dHlwZT1cInRleHRcIlxyXG5cdFx0XHRyZWFkb25seVxyXG5cdFx0XHRbdmFsdWVdPVwiZ2V0RGlzcGxheVZhbHVlKClcIlxyXG5cdFx0XHRjbGFzcz1cInAtaW5wdXR0ZXh0IHAtY29tcG9uZW50XCJcclxuXHRcdFx0W2NsYXNzLnAtaW52YWxpZF09XCJuZ0NvbnRyb2wuaW52YWxpZCAmJiBuZ0NvbnRyb2wudG91Y2hlZFwiXHJcblx0XHRcdFtwbGFjZWhvbGRlcl09XCJ0cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgncmVsYXRpdmVEYXRlU2VsZWN0b3IucGxhY2Vob2xkZXInKVwiXHJcblx0XHRcdFtwVG9vbHRpcF09XCJuZ0NvbnRyb2wuaW52YWxpZCAmJiBuZ0NvbnRyb2wudG91Y2hlZCA/IChuZ0NvbnRyb2wuY29udHJvbC52YWx1ZSB8IGlucHV0RXJyb3JNZXNzYWdlOiBuZ0NvbnRyb2wpIDogJydcIlxyXG5cdFx0XHRbdG9vbHRpcE9wdGlvbnNdPVwidG9vbHRpcE9wdGlvbnNcIiAvPlxyXG5cdFx0PGRpdiBjbGFzcz1cImNhbGVuZGFyLWljb24td3JhcHBlciBmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCIgKGNsaWNrKT1cInRvZ2dsZVF1aWNrU2VsZWN0KCRldmVudClcIj5cclxuXHRcdFx0PGkgY2xhc3M9XCJwaSBwaS1jYWxlbmRhciBjYWxlbmRhci1pY29uXCI+PC9pPlxyXG5cdFx0PC9kaXY+XHJcblx0PC9kaXY+XHJcblxyXG5cdDxwLW92ZXJsYXlQYW5lbFxyXG5cdFx0I29wXHJcblx0XHRbc3R5bGVdPVwieyBtaW5XaWR0aDogJzM1MHB4JywgbWF4SGVpZ2h0OiAnNjAwcHgnLCBvdmVyZmxvdzogJ3Zpc2libGUnIH1cIlxyXG5cdFx0W2Rpc21pc3NhYmxlXT1cInRydWVcIlxyXG5cdFx0KG9uSGlkZSk9XCJzaG93T3ZlcmxheVBhbmVsLnNldChmYWxzZSlcIj5cclxuXHRcdDxwLXRhYlZpZXcgKG9uQ2hhbmdlKT1cIm9uVGFiQ2hhbmdlKCRldmVudClcIiBbYWN0aXZlSW5kZXhdPVwiYWN0aXZlVGFiSW5kZXgoKVwiPlxyXG5cdFx0XHQ8cC10YWJQYW5lbCBbaGVhZGVyXT1cInRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdyZWxhdGl2ZURhdGVTZWxlY3Rvci5hYnNvbHV0ZScpXCI+XHJcblx0XHRcdFx0PGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlclwiPlxyXG5cdFx0XHRcdFx0PGFyaWwtY2FsZW5kYXJcclxuXHRcdFx0XHRcdFx0WyhuZ01vZGVsKV09XCJhYnNvbHV0ZURhdGVcIlxyXG5cdFx0XHRcdFx0XHQobmdNb2RlbENoYW5nZSk9XCJvbkFic29sdXRlRGF0ZUNoYW5nZSgkZXZlbnQpXCJcclxuXHRcdFx0XHRcdFx0W2lubGluZV09XCJ0cnVlXCJcclxuXHRcdFx0XHRcdFx0W3Nob3dUaW1lXT1cInRydWVcIlxyXG5cdFx0XHRcdFx0XHRbc2hvd1NlY29uZHNdPVwidHJ1ZVwiPlxyXG5cdFx0XHRcdFx0PC9hcmlsLWNhbGVuZGFyPlxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8L3AtdGFiUGFuZWw+XHJcblxyXG5cdFx0XHQ8cC10YWJQYW5lbCBbaGVhZGVyXT1cInRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdyZWxhdGl2ZURhdGVTZWxlY3Rvci5yZWxhdGl2ZScpXCI+XHJcblx0XHRcdFx0PGRpdj5cclxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sdW1uIGdhcC0yIG0tMlwiPlxyXG5cdFx0XHRcdFx0XHQ8YXJpbC1udW1iZXJcclxuXHRcdFx0XHRcdFx0XHRbKG5nTW9kZWwpXT1cInJlbGF0aXZlVmFsdWVcIlxyXG5cdFx0XHRcdFx0XHRcdChuZ01vZGVsQ2hhbmdlKT1cIm9uUmVsYXRpdmVDaGFuZ2UoKVwiXHJcblx0XHRcdFx0XHRcdFx0W21pbl09XCIxXCJcclxuXHRcdFx0XHRcdFx0XHRbc2hvd0J1dHRvbnNdPVwidHJ1ZVwiXHJcblx0XHRcdFx0XHRcdFx0W3BsYWNlaG9sZGVyXT1cInRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdyZWxhdGl2ZURhdGVTZWxlY3Rvci52YWx1ZVBsYWNlaG9sZGVyJylcIj5cclxuXHRcdFx0XHRcdFx0PC9hcmlsLW51bWJlcj5cclxuXHJcblx0XHRcdFx0XHRcdDxhcmlsLXNlbGVjdC1ib3hcclxuXHRcdFx0XHRcdFx0XHRbKG5nTW9kZWwpXT1cInJlbGF0aXZlVW5pdFwiXHJcblx0XHRcdFx0XHRcdFx0KG5nTW9kZWxDaGFuZ2UpPVwib25SZWxhdGl2ZUNoYW5nZSgpXCJcclxuXHRcdFx0XHRcdFx0XHRbaXRlbXNdPVwicmVsYXRpdmVVbml0c1wiXHJcblx0XHRcdFx0XHRcdFx0W2l0ZW1LZXldPVwiJ3ZhbHVlJ1wiXHJcblx0XHRcdFx0XHRcdFx0W2l0ZW1UZXh0XT1cIidsYWJlbCdcIlxyXG5cdFx0XHRcdFx0XHRcdFtwbGFjZWhvbGRlcl09XCJ0cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgncmVsYXRpdmVEYXRlU2VsZWN0b3Iuc2VsZWN0VW5pdCcpXCI+XHJcblx0XHRcdFx0XHRcdDwvYXJpbC1zZWxlY3QtYm94PlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cIm0tMlwiPlxyXG5cdFx0XHRcdFx0XHQ8c21hbGwgY2xhc3M9XCJ0ZXh0LW11dGVkXCI+XHJcblx0XHRcdFx0XHRcdFx0PHN0cm9uZz57eyB0cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgncmVsYXRpdmVEYXRlU2VsZWN0b3IuZXhhbXBsZXMnKSB9fTo8L3N0cm9uZz4ge3sgdHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ3JlbGF0aXZlRGF0ZVNlbGVjdG9yLmV4YW1wbGVzVGV4dCcpIH19XHJcblx0XHRcdFx0XHRcdDwvc21hbGw+XHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0PC9wLXRhYlBhbmVsPlxyXG5cdFx0PC9wLXRhYlZpZXc+XHJcblx0PC9wLW92ZXJsYXlQYW5lbD5cclxuXHJcblx0PCEtLSBRdWljayBTZWxlY3QgUGFuZWwgLS0+XHJcblx0QGlmIChzaG93UXVpY2tTZWxlY3QoKSkge1xyXG5cdFx0PGRpdiBjbGFzcz1cInF1aWNrLXNlbGVjdC1wYW5lbCBtdC0yXCI+XHJcblx0XHRcdDxkaXYgY2xhc3M9XCJxdWljay1zZWxlY3QtaGVhZGVyIGZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyIHAtM1wiPlxyXG5cdFx0XHRcdDxzcGFuIGNsYXNzPVwidGl0bGVcIj57eyB0cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgncmVsYXRpdmVEYXRlU2VsZWN0b3IucXVpY2tTZWxlY3QnKSB9fTwvc3Bhbj5cclxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTJcIj5cclxuXHRcdFx0XHRcdDxpIGNsYXNzPVwicGkgcGktdGltZXMgY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwic2hvd1F1aWNrU2VsZWN0LnNldChmYWxzZSlcIj48L2k+XHJcblx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8ZGl2IGNsYXNzPVwicXVpY2stc2VsZWN0LWJvZHkgcC0zXCI+XHJcblx0XHRcdFx0PCEtLSBDdXN0b20gUXVpY2sgU2VsZWN0IElucHV0cyAtLT5cclxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwicXVpY2stc2VsZWN0LWN1c3RvbSBtYi0zIHBiLTNcIj5cclxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmbGV4IGdhcC0yIGFsaWduLWl0ZW1zLWNlbnRlciBtYi0zXCI+XHJcblx0XHRcdFx0XHRcdDxhcmlsLXNlbGVjdC1ib3hcclxuXHRcdFx0XHRcdFx0XHRbKG5nTW9kZWwpXT1cInF1aWNrU2VsZWN0RGlyZWN0aW9uXCJcclxuXHRcdFx0XHRcdFx0XHRbaXRlbXNdPVwicXVpY2tTZWxlY3REaXJlY3Rpb25zXCJcclxuXHRcdFx0XHRcdFx0XHRbaXRlbUtleV09XCIndmFsdWUnXCJcclxuXHRcdFx0XHRcdFx0XHRbaXRlbVRleHRdPVwiJ2xhYmVsJ1wiPlxyXG5cdFx0XHRcdFx0XHQ8L2FyaWwtc2VsZWN0LWJveD5cclxuXHJcblx0XHRcdFx0XHRcdDxhcmlsLW51bWJlciBbKG5nTW9kZWwpXT1cInF1aWNrU2VsZWN0VmFsdWVcIiBbbWluXT1cIjFcIiBbc2hvd0J1dHRvbnNdPVwidHJ1ZVwiPiA8L2FyaWwtbnVtYmVyPlxyXG5cclxuXHRcdFx0XHRcdFx0PGFyaWwtc2VsZWN0LWJveFxyXG5cdFx0XHRcdFx0XHRcdFsobmdNb2RlbCldPVwicXVpY2tTZWxlY3RVbml0XCJcclxuXHRcdFx0XHRcdFx0XHRbaXRlbXNdPVwicXVpY2tTZWxlY3RVbml0c1wiXHJcblx0XHRcdFx0XHRcdFx0W2l0ZW1LZXldPVwiJ3ZhbHVlJ1wiXHJcblx0XHRcdFx0XHRcdFx0W2l0ZW1UZXh0XT1cIidsYWJlbCdcIj5cclxuXHRcdFx0XHRcdFx0PC9hcmlsLXNlbGVjdC1ib3g+XHJcblxyXG5cdFx0XHRcdFx0XHQ8YXJpbC1idXR0b25cclxuXHRcdFx0XHRcdFx0XHRbbGFiZWxdPVwidHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ3JlbGF0aXZlRGF0ZVNlbGVjdG9yLmFwcGx5JylcIlxyXG5cdFx0XHRcdFx0XHRcdGNvbG9yPVwicHJpbWFyeVwiXHJcblx0XHRcdFx0XHRcdFx0KGNsaWNrRXZlbnQpPVwiYXBwbHlRdWlja1NlbGVjdEN1c3RvbSgpXCJcclxuXHRcdFx0XHRcdFx0XHRbc3R5bGVdPVwieyAnbWluLXdpZHRoJzogJzgwcHgnIH1cIj5cclxuXHRcdFx0XHRcdFx0PC9hcmlsLWJ1dHRvbj5cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cclxuXHRcdFx0XHQ8IS0tIENvbW1vbmx5IFVzZWQgT3B0aW9ucyAtLT5cclxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwicXVpY2stc2VsZWN0LXNlY3Rpb25cIj5cclxuXHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwidGl0bGUtc2VjdGlvbiBtYi0yXCI+e3sgdHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ3JlbGF0aXZlRGF0ZVNlbGVjdG9yLmNvbW1vbmx5VXNlZCcpIH19PC9zcGFuPlxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cInF1aWNrLXNlbGVjdC1vcHRpb25zXCI+XHJcblx0XHRcdFx0XHRcdEBmb3IgKG9wdGlvbiBvZiBjb21tb25seVVzZWRPcHRpb25zOyB0cmFjayBvcHRpb24udmFsdWUpIHtcclxuXHRcdFx0XHRcdFx0XHQ8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cInF1aWNrLXNlbGVjdC1vcHRpb25cIiAoY2xpY2spPVwiYXBwbHlRdWlja1NlbGVjdChvcHRpb24pXCI+XHJcblx0XHRcdFx0XHRcdFx0XHR7eyBvcHRpb24ubGFiZWwgfX1cclxuXHRcdFx0XHRcdFx0XHQ8L2J1dHRvbj5cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0PC9kaXY+XHJcblx0fVxyXG48L2Rpdj5cclxuIl19
|
|
@@ -1,39 +1,29 @@
|
|
|
1
|
-
import { Component, EventEmitter, Output,
|
|
1
|
+
import { Component, EventEmitter, Output, input } from '@angular/core';
|
|
2
2
|
import { ReactiveFormsModule } from '@angular/forms';
|
|
3
3
|
import { TranslocoModule } from '@ngneat/transloco';
|
|
4
4
|
import { DxSelectBoxModule } from 'devextreme-angular/ui/select-box';
|
|
5
|
-
import { firstValueFrom } from 'rxjs';
|
|
6
|
-
import { API_CONFIGS } from 'aril/boot/config/api';
|
|
7
5
|
import { BaseInputComponent, DXInputErrorMessagePipe, InputErrorMessagePipe, ValueAccessorDirective } from 'aril/ui/lib';
|
|
8
6
|
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@
|
|
10
|
-
import * as i2 from "
|
|
11
|
-
import * as i3 from "
|
|
12
|
-
import * as i4 from "
|
|
13
|
-
import * as i5 from "devextreme-angular/ui/select-box";
|
|
7
|
+
import * as i1 from "@ngneat/transloco";
|
|
8
|
+
import * as i2 from "aril/ui/lib";
|
|
9
|
+
import * as i3 from "@angular/forms";
|
|
10
|
+
import * as i4 from "devextreme-angular/ui/select-box";
|
|
14
11
|
export class SelectBoxComponent extends BaseInputComponent {
|
|
15
|
-
constructor(
|
|
12
|
+
constructor(translocoService) {
|
|
16
13
|
super();
|
|
17
|
-
this.http = http;
|
|
18
14
|
this.translocoService = translocoService;
|
|
19
15
|
this.itemKey = input('key');
|
|
20
16
|
this.itemText = input('text');
|
|
21
|
-
this.groupName = input('');
|
|
22
17
|
this.parentSelectionKey = input(null);
|
|
23
18
|
this.tabindex = input(0);
|
|
24
19
|
this.items = input.required();
|
|
25
20
|
this.selectedItemText = '';
|
|
26
|
-
this.selectionItems = signal(null);
|
|
27
21
|
/** * @description when grouped = true, option item structure { key:string, items:[] } */
|
|
28
22
|
this.grouped = input(false);
|
|
29
23
|
this.showClearButton = input(true);
|
|
30
24
|
this.placeholder = input('');
|
|
31
25
|
this.searchExpr = input('');
|
|
32
26
|
this.onSelectionChanged = new EventEmitter();
|
|
33
|
-
effect(() => {
|
|
34
|
-
if (this.groupName() || this.parentSelectionKey())
|
|
35
|
-
this.getSelectionItems();
|
|
36
|
-
});
|
|
37
27
|
}
|
|
38
28
|
setTitle(event) {
|
|
39
29
|
this.selectedItemText = '';
|
|
@@ -42,26 +32,13 @@ export class SelectBoxComponent extends BaseInputComponent {
|
|
|
42
32
|
}
|
|
43
33
|
this.onSelectionChanged.emit(event);
|
|
44
34
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
groupName: this.groupName(),
|
|
48
|
-
parentSelectionKey: this.parentSelectionKey()
|
|
49
|
-
};
|
|
50
|
-
const hostApi = API_CONFIGS.api.replace(/\/[^\/]+\/v1$/, `/host/v1`);
|
|
51
|
-
const selectionGroup = await firstValueFrom(this.http.post(hostApi + '/selection-group/load', payload));
|
|
52
|
-
this.selectionItems.set(selectionGroup?.selectionItems.map((item) => ({
|
|
53
|
-
key: item.selectionKey,
|
|
54
|
-
text: item.selectionDisplay,
|
|
55
|
-
parentSelectionKey: item.parentSelectionKey
|
|
56
|
-
})));
|
|
57
|
-
}
|
|
58
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SelectBoxComponent, deps: [{ token: i1.HttpClient }, { token: i2.TranslocoService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
59
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.1.2", type: SelectBoxComponent, isStandalone: true, selector: "aril-select-box[ngModel], aril-select-box[formControl], aril-select-box[formControlName]", inputs: { itemKey: { classPropertyName: "itemKey", publicName: "itemKey", isSignal: true, isRequired: false, transformFunction: null }, itemText: { classPropertyName: "itemText", publicName: "itemText", isSignal: true, isRequired: false, transformFunction: null }, groupName: { classPropertyName: "groupName", publicName: "groupName", isSignal: true, isRequired: false, transformFunction: null }, parentSelectionKey: { classPropertyName: "parentSelectionKey", publicName: "parentSelectionKey", isSignal: true, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: true, transformFunction: null }, grouped: { classPropertyName: "grouped", publicName: "grouped", isSignal: true, isRequired: false, transformFunction: null }, showClearButton: { classPropertyName: "showClearButton", publicName: "showClearButton", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, searchExpr: { classPropertyName: "searchExpr", publicName: "searchExpr", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onSelectionChanged: "onSelectionChanged" }, providers: [InputErrorMessagePipe], usesInheritance: true, hostDirectives: [{ directive: i3.ValueAccessorDirective }], ngImport: i0, template: "<dx-select-box\r\n\t[items]=\"selectionItems() || items()\"\r\n\t[valueExpr]=\"itemKey()\"\r\n\t[displayExpr]=\"itemText()\"\r\n\t[searchEnabled]=\"true\"\r\n\t[searchExpr]=\"searchExpr()\"\r\n\t[tabIndex]=\"tabindex()\"\r\n\t[grouped]=\"grouped()\"\r\n\t[placeholder]=\"placeholder()\"\r\n\t[showClearButton]=\"showClearButton()\"\r\n\t[isValid]=\"ngControl?.control?.valid || ngControl?.control?.pristine || ngControl?.control?.disabled || false\"\r\n\t[validationError]=\"ngControl?.control?.errors | dxInputErrorMessage: ngControl?.control\"\r\n\tvalidationMessagePosition=\"top\"\r\n\t[noDataText]=\"translocoService.translate('messages.noDataToDisplay')\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n\t(onSelectionChanged)=\"onSelectionChanged.emit($event.selectedItem);setTitle($event.selectedItem)\"\r\n\t[inputAttr]=\"{ 'title': selectedItemText }\">\r\n</dx-select-box>\r\n", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: DxSelectBoxModule }, { kind: "component", type: i5.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isDirty", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isDirtyChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "pipe", type: DXInputErrorMessagePipe, name: "dxInputErrorMessage" }, { kind: "ngmodule", type: TranslocoModule }] }); }
|
|
35
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SelectBoxComponent, deps: [{ token: i1.TranslocoService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
36
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.1.2", type: SelectBoxComponent, isStandalone: true, selector: "aril-select-box[ngModel], aril-select-box[formControl], aril-select-box[formControlName]", inputs: { itemKey: { classPropertyName: "itemKey", publicName: "itemKey", isSignal: true, isRequired: false, transformFunction: null }, itemText: { classPropertyName: "itemText", publicName: "itemText", isSignal: true, isRequired: false, transformFunction: null }, parentSelectionKey: { classPropertyName: "parentSelectionKey", publicName: "parentSelectionKey", isSignal: true, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: true, transformFunction: null }, grouped: { classPropertyName: "grouped", publicName: "grouped", isSignal: true, isRequired: false, transformFunction: null }, showClearButton: { classPropertyName: "showClearButton", publicName: "showClearButton", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, searchExpr: { classPropertyName: "searchExpr", publicName: "searchExpr", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onSelectionChanged: "onSelectionChanged" }, providers: [InputErrorMessagePipe], usesInheritance: true, hostDirectives: [{ directive: i2.ValueAccessorDirective }], ngImport: i0, template: "<dx-select-box\r\n\t[items]=\"items()\"\r\n\t[valueExpr]=\"itemKey()\"\r\n\t[displayExpr]=\"itemText()\"\r\n\t[searchEnabled]=\"true\"\r\n\t[searchExpr]=\"searchExpr()\"\r\n\t[tabIndex]=\"tabindex()\"\r\n\t[grouped]=\"grouped()\"\r\n\t[placeholder]=\"placeholder()\"\r\n\t[showClearButton]=\"showClearButton()\"\r\n\t[isValid]=\"ngControl?.control?.valid || ngControl?.control?.pristine || ngControl?.control?.disabled || false\"\r\n\t[validationError]=\"ngControl?.control?.errors | dxInputErrorMessage: ngControl?.control\"\r\n\tvalidationMessagePosition=\"top\"\r\n\t[noDataText]=\"translocoService.translate('messages.noDataToDisplay')\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n\t(onSelectionChanged)=\"onSelectionChanged.emit($event.selectedItem);setTitle($event.selectedItem)\"\r\n\t[inputAttr]=\"{ 'title': selectedItemText }\">\r\n</dx-select-box>\r\n", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: DxSelectBoxModule }, { kind: "component", type: i4.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isDirty", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isDirtyChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "pipe", type: DXInputErrorMessagePipe, name: "dxInputErrorMessage" }, { kind: "ngmodule", type: TranslocoModule }] }); }
|
|
60
37
|
}
|
|
61
38
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SelectBoxComponent, decorators: [{
|
|
62
39
|
type: Component,
|
|
63
|
-
args: [{ standalone: true, selector: 'aril-select-box[ngModel], aril-select-box[formControl], aril-select-box[formControlName]', imports: [ReactiveFormsModule, DxSelectBoxModule, DXInputErrorMessagePipe, TranslocoModule], providers: [InputErrorMessagePipe], hostDirectives: [ValueAccessorDirective], template: "<dx-select-box\r\n\t[items]=\"
|
|
64
|
-
}], ctorParameters: () => [{ type: i1.
|
|
40
|
+
args: [{ standalone: true, selector: 'aril-select-box[ngModel], aril-select-box[formControl], aril-select-box[formControlName]', imports: [ReactiveFormsModule, DxSelectBoxModule, DXInputErrorMessagePipe, TranslocoModule], providers: [InputErrorMessagePipe], hostDirectives: [ValueAccessorDirective], template: "<dx-select-box\r\n\t[items]=\"items()\"\r\n\t[valueExpr]=\"itemKey()\"\r\n\t[displayExpr]=\"itemText()\"\r\n\t[searchEnabled]=\"true\"\r\n\t[searchExpr]=\"searchExpr()\"\r\n\t[tabIndex]=\"tabindex()\"\r\n\t[grouped]=\"grouped()\"\r\n\t[placeholder]=\"placeholder()\"\r\n\t[showClearButton]=\"showClearButton()\"\r\n\t[isValid]=\"ngControl?.control?.valid || ngControl?.control?.pristine || ngControl?.control?.disabled || false\"\r\n\t[validationError]=\"ngControl?.control?.errors | dxInputErrorMessage: ngControl?.control\"\r\n\tvalidationMessagePosition=\"top\"\r\n\t[noDataText]=\"translocoService.translate('messages.noDataToDisplay')\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n\t(onSelectionChanged)=\"onSelectionChanged.emit($event.selectedItem);setTitle($event.selectedItem)\"\r\n\t[inputAttr]=\"{ 'title': selectedItemText }\">\r\n</dx-select-box>\r\n" }]
|
|
41
|
+
}], ctorParameters: () => [{ type: i1.TranslocoService }], propDecorators: { onSelectionChanged: [{
|
|
65
42
|
type: Output
|
|
66
43
|
}] } });
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3VpL3NlbGVjdEJveC9zcmMvc2VsZWN0LWJveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3VpL3NlbGVjdEJveC9zcmMvc2VsZWN0LWJveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJELE9BQU8sRUFBRSxlQUFlLEVBQW9CLE1BQU0sbUJBQW1CLENBQUM7QUFDdEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFckUsT0FBTyxFQUNOLGtCQUFrQixFQUNsQix1QkFBdUIsRUFDdkIscUJBQXFCLEVBQ3JCLHNCQUFzQixFQUN0QixNQUFNLGFBQWEsQ0FBQzs7Ozs7O0FBWXJCLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxrQkFBa0I7SUFnQnpELFlBQW1CLGdCQUFrQztRQUNwRCxLQUFLLEVBQUUsQ0FBQztRQURVLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFmckQsWUFBTyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QixhQUFRLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3pCLHVCQUFrQixHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxhQUFRLEdBQUcsS0FBSyxDQUFTLENBQUMsQ0FBQyxDQUFDO1FBQzVCLFVBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFtQixDQUFDO1FBQzFDLHFCQUFnQixHQUFXLEVBQUUsQ0FBQztRQUU5Qix5RkFBeUY7UUFDekYsWUFBTyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QixvQkFBZSxHQUFHLEtBQUssQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUN2QyxnQkFBVyxHQUFHLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUNoQyxlQUFVLEdBQUcsS0FBSyxDQUFvQixFQUFFLENBQUMsQ0FBQztRQUVoQyx1QkFBa0IsR0FBRyxJQUFJLFlBQVksRUFBaUIsQ0FBQztJQUlqRSxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQVc7UUFDbkIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUMzQixJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsTUFBTSxHQUFHLEVBQUUsRUFBRSxDQUFDO1lBQ2pELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzdELENBQUM7UUFDRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JDLENBQUM7OEdBMUJXLGtCQUFrQjtrR0FBbEIsa0JBQWtCLHE0Q0FIbkIsQ0FBQyxxQkFBcUIsQ0FBQyw2R0NwQm5DLDg1QkFtQkEsMkNEQVcsbUJBQW1CLHlUQUFFLGlCQUFpQiw0cUZBQUUsdUJBQXVCLDJEQUFFLGVBQWU7OzJGQUk5RSxrQkFBa0I7a0JBUjlCLFNBQVM7aUNBQ0csSUFBSSxZQUNOLDBGQUEwRixXQUUzRixDQUFDLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLHVCQUF1QixFQUFFLGVBQWUsQ0FBQyxhQUNoRixDQUFDLHFCQUFxQixDQUFDLGtCQUNsQixDQUFDLHNCQUFzQixDQUFDO3FGQWdCOUIsa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE91dHB1dCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IFRyYW5zbG9jb01vZHVsZSwgVHJhbnNsb2NvU2VydmljZSB9IGZyb20gJ0BuZ25lYXQvdHJhbnNsb2NvJztcclxuaW1wb3J0IHsgRHhTZWxlY3RCb3hNb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXIvdWkvc2VsZWN0LWJveCc7XHJcblxyXG5pbXBvcnQge1xyXG5cdEJhc2VJbnB1dENvbXBvbmVudCxcclxuXHREWElucHV0RXJyb3JNZXNzYWdlUGlwZSxcclxuXHRJbnB1dEVycm9yTWVzc2FnZVBpcGUsXHJcblx0VmFsdWVBY2Nlc3NvckRpcmVjdGl2ZVxyXG59IGZyb20gJ2FyaWwvdWkvbGliJztcclxuXHJcbmltcG9ydCB7IFNlbGVjdEJveEl0ZW0gfSBmcm9tICcuL2ludGVyZmFjZXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c3RhbmRhbG9uZTogdHJ1ZSxcclxuXHRzZWxlY3RvcjogJ2FyaWwtc2VsZWN0LWJveFtuZ01vZGVsXSwgYXJpbC1zZWxlY3QtYm94W2Zvcm1Db250cm9sXSwgYXJpbC1zZWxlY3QtYm94W2Zvcm1Db250cm9sTmFtZV0nLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9zZWxlY3QtYm94LmNvbXBvbmVudC5odG1sJyxcclxuXHRpbXBvcnRzOiBbUmVhY3RpdmVGb3Jtc01vZHVsZSwgRHhTZWxlY3RCb3hNb2R1bGUsIERYSW5wdXRFcnJvck1lc3NhZ2VQaXBlLCBUcmFuc2xvY29Nb2R1bGVdLFxyXG5cdHByb3ZpZGVyczogW0lucHV0RXJyb3JNZXNzYWdlUGlwZV0sXHJcblx0aG9zdERpcmVjdGl2ZXM6IFtWYWx1ZUFjY2Vzc29yRGlyZWN0aXZlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VsZWN0Qm94Q29tcG9uZW50IGV4dGVuZHMgQmFzZUlucHV0Q29tcG9uZW50IHtcclxuXHRpdGVtS2V5ID0gaW5wdXQoJ2tleScpO1xyXG5cdGl0ZW1UZXh0ID0gaW5wdXQoJ3RleHQnKTtcclxuXHRwYXJlbnRTZWxlY3Rpb25LZXkgPSBpbnB1dChudWxsKTtcclxuXHR0YWJpbmRleCA9IGlucHV0PG51bWJlcj4oMCk7XHJcblx0aXRlbXMgPSBpbnB1dC5yZXF1aXJlZDxTZWxlY3RCb3hJdGVtW10+KCk7XHJcblx0c2VsZWN0ZWRJdGVtVGV4dDogc3RyaW5nID0gJyc7XHJcblxyXG5cdC8qKiAqIEBkZXNjcmlwdGlvbiB3aGVuIGdyb3VwZWQgPSB0cnVlLCBvcHRpb24gaXRlbSBzdHJ1Y3R1cmUgeyBrZXk6c3RyaW5nLCBpdGVtczpbXSB9ICovXHJcblx0Z3JvdXBlZCA9IGlucHV0KGZhbHNlKTtcclxuXHRzaG93Q2xlYXJCdXR0b24gPSBpbnB1dDxib29sZWFuPih0cnVlKTtcclxuXHRwbGFjZWhvbGRlciA9IGlucHV0PHN0cmluZz4oJycpO1xyXG5cdHNlYXJjaEV4cHIgPSBpbnB1dDxzdHJpbmcgfCBzdHJpbmdbXT4oJycpO1xyXG5cclxuXHRAT3V0cHV0KCkgb25TZWxlY3Rpb25DaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxTZWxlY3RCb3hJdGVtPigpO1xyXG5cclxuXHRjb25zdHJ1Y3RvcihwdWJsaWMgdHJhbnNsb2NvU2VydmljZTogVHJhbnNsb2NvU2VydmljZSkge1xyXG5cdFx0c3VwZXIoKTtcclxuXHR9XHJcblxyXG5cdHNldFRpdGxlKGV2ZW50PzogYW55KSB7XHJcblx0XHR0aGlzLnNlbGVjdGVkSXRlbVRleHQgPSAnJztcclxuXHRcdGlmIChldmVudCAmJiBldmVudFt0aGlzLml0ZW1UZXh0KCldLmxlbmd0aCA+IDI1KSB7XHJcblx0XHRcdHRoaXMuc2VsZWN0ZWRJdGVtVGV4dCA9IGV2ZW50ID8gZXZlbnRbdGhpcy5pdGVtVGV4dCgpXSA6ICcnO1xyXG5cdFx0fVxyXG5cdFx0dGhpcy5vblNlbGVjdGlvbkNoYW5nZWQuZW1pdChldmVudCk7XHJcblx0fVxyXG59XHJcbiIsIjxkeC1zZWxlY3QtYm94XHJcblx0W2l0ZW1zXT1cIml0ZW1zKClcIlxyXG5cdFt2YWx1ZUV4cHJdPVwiaXRlbUtleSgpXCJcclxuXHRbZGlzcGxheUV4cHJdPVwiaXRlbVRleHQoKVwiXHJcblx0W3NlYXJjaEVuYWJsZWRdPVwidHJ1ZVwiXHJcblx0W3NlYXJjaEV4cHJdPVwic2VhcmNoRXhwcigpXCJcclxuXHRbdGFiSW5kZXhdPVwidGFiaW5kZXgoKVwiXHJcblx0W2dyb3VwZWRdPVwiZ3JvdXBlZCgpXCJcclxuXHRbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIoKVwiXHJcblx0W3Nob3dDbGVhckJ1dHRvbl09XCJzaG93Q2xlYXJCdXR0b24oKVwiXHJcblx0W2lzVmFsaWRdPVwibmdDb250cm9sPy5jb250cm9sPy52YWxpZCB8fCBuZ0NvbnRyb2w/LmNvbnRyb2w/LnByaXN0aW5lIHx8IG5nQ29udHJvbD8uY29udHJvbD8uZGlzYWJsZWQgfHwgZmFsc2VcIlxyXG5cdFt2YWxpZGF0aW9uRXJyb3JdPVwibmdDb250cm9sPy5jb250cm9sPy5lcnJvcnMgfCBkeElucHV0RXJyb3JNZXNzYWdlOiBuZ0NvbnRyb2w/LmNvbnRyb2xcIlxyXG5cdHZhbGlkYXRpb25NZXNzYWdlUG9zaXRpb249XCJ0b3BcIlxyXG5cdFtub0RhdGFUZXh0XT1cInRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdtZXNzYWdlcy5ub0RhdGFUb0Rpc3BsYXknKVwiXHJcblx0W2Zvcm1Db250cm9sXT1cIm5nQ29udHJvbC5jb250cm9sXCJcclxuXHQobmdNb2RlbENoYW5nZSk9XCJuZ0NvbnRyb2wudmlld1RvTW9kZWxVcGRhdGUoJGV2ZW50KVwiXHJcblx0KG9uU2VsZWN0aW9uQ2hhbmdlZCk9XCJvblNlbGVjdGlvbkNoYW5nZWQuZW1pdCgkZXZlbnQuc2VsZWN0ZWRJdGVtKTtzZXRUaXRsZSgkZXZlbnQuc2VsZWN0ZWRJdGVtKVwiXHJcblx0W2lucHV0QXR0cl09XCJ7ICd0aXRsZSc6IHNlbGVjdGVkSXRlbVRleHQgfVwiPlxyXG48L2R4LXNlbGVjdC1ib3g+XHJcbiJdfQ==
|