@ajf/material 13.0.0-next.9 → 13.0.0
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/{report-builder/index.d.ts → barcode/barcode_public_index.d.ts} +1 -1
- package/barcode/index.d.ts +19 -1
- package/barcode/package.json +2 -2
- package/calendar/calendar_public_index.d.ts +4 -0
- package/calendar/index.d.ts +19 -1
- package/calendar/package.json +2 -2
- package/checkbox-group/checkbox-group_public_index.d.ts +4 -0
- package/checkbox-group/index.d.ts +19 -1
- package/checkbox-group/package.json +2 -2
- package/esm2020/barcode/barcode-module.mjs +7 -11
- package/esm2020/barcode/barcode.mjs +6 -6
- package/esm2020/barcode/barcode_public_index.mjs +5 -0
- package/esm2020/barcode/index.mjs +20 -2
- package/esm2020/calendar/calendar-module.mjs +8 -28
- package/esm2020/calendar/calendar.mjs +7 -11
- package/esm2020/calendar/calendar_public_index.mjs +5 -0
- package/esm2020/calendar/index.mjs +20 -2
- package/esm2020/checkbox-group/checkbox-group-item.mjs +6 -6
- package/esm2020/checkbox-group/checkbox-group-module.mjs +8 -27
- package/esm2020/checkbox-group/checkbox-group_public_index.mjs +5 -0
- package/esm2020/checkbox-group/index.mjs +20 -2
- package/esm2020/form-builder/branch-line.mjs +5 -5
- package/esm2020/form-builder/choices-origin-data-source.mjs +1 -1
- package/esm2020/form-builder/choices-origin-editor-dialog.mjs +10 -7
- package/esm2020/form-builder/choices-origin-editor.mjs +4 -4
- package/esm2020/form-builder/condition-editor-dialog.mjs +4 -4
- package/esm2020/form-builder/condition-editor.mjs +12 -11
- package/esm2020/form-builder/form-builder-module.mjs +85 -34
- package/esm2020/form-builder/form-builder-service.mjs +135 -128
- package/esm2020/form-builder/form-builder-utils.mjs +4 -3
- package/esm2020/form-builder/form-builder.mjs +33 -29
- package/esm2020/form-builder/form-builder_public_index.mjs +5 -0
- package/esm2020/form-builder/index.mjs +20 -2
- package/esm2020/form-builder/node-entry.mjs +10 -8
- package/esm2020/form-builder/node-properties.mjs +320 -315
- package/esm2020/form-builder/node-type-entry.mjs +5 -5
- package/esm2020/form-builder/string-identifier-dialog.mjs +8 -10
- package/esm2020/form-builder/validation-condition-editor-dialog.mjs +4 -4
- package/esm2020/form-builder/warning-condition-editor-dialog.mjs +4 -4
- package/esm2020/forms/barcode-field.mjs +6 -6
- package/esm2020/forms/boolean-field.mjs +6 -6
- package/esm2020/forms/date-field.mjs +5 -5
- package/esm2020/forms/date-input-field.mjs +6 -6
- package/esm2020/forms/empty-field.mjs +6 -6
- package/esm2020/forms/field-service.mjs +45 -45
- package/esm2020/forms/field-warning-dialog.mjs +4 -4
- package/esm2020/forms/field.mjs +5 -5
- package/esm2020/forms/form.mjs +5 -5
- package/esm2020/forms/forms-module.mjs +119 -43
- package/esm2020/forms/forms_public_index.mjs +5 -0
- package/esm2020/forms/index.mjs +20 -2
- package/esm2020/forms/input-field.mjs +5 -5
- package/esm2020/forms/multiple-choice-field.mjs +6 -6
- package/esm2020/forms/range-field.mjs +6 -6
- package/esm2020/forms/single-choice-field.mjs +6 -6
- package/esm2020/forms/table-field.mjs +6 -6
- package/esm2020/forms/text-field.mjs +5 -5
- package/esm2020/forms/time-field.mjs +6 -6
- package/esm2020/forms/video-url-field.mjs +5 -5
- package/esm2020/forms/warning-alert-service.mjs +4 -4
- package/esm2020/image/image-module.mjs +8 -19
- package/esm2020/image/image.mjs +5 -5
- package/esm2020/image/image_public_index.mjs +5 -0
- package/esm2020/image/index.mjs +20 -2
- package/esm2020/monaco-editor/autocomplete-singleton-model.mjs +3 -2
- package/esm2020/monaco-editor/editor-options-model.mjs +1 -1
- package/esm2020/monaco-editor/index.mjs +20 -2
- package/esm2020/monaco-editor/monaco-editor-module.mjs +7 -11
- package/esm2020/monaco-editor/monaco-editor.mjs +6 -6
- package/esm2020/monaco-editor/monaco-editor_public_index.mjs +5 -0
- package/esm2020/node-icon/index.mjs +20 -2
- package/esm2020/node-icon/node-icon-module.mjs +8 -19
- package/esm2020/node-icon/node-icon.mjs +4 -4
- package/esm2020/node-icon/node-icon_public_index.mjs +5 -0
- package/esm2020/page-slider/index.mjs +20 -2
- package/esm2020/page-slider/page-slider-module.mjs +8 -14
- package/esm2020/page-slider/page-slider.mjs +5 -5
- package/esm2020/page-slider/page-slider_public_index.mjs +5 -0
- package/esm2020/reports/chart-widget.mjs +5 -5
- package/esm2020/reports/filter-widget.mjs +71 -0
- package/esm2020/reports/formula-widget.mjs +5 -5
- package/esm2020/reports/image-container-widget.mjs +5 -5
- package/esm2020/reports/image-widget.mjs +5 -5
- package/esm2020/reports/index.mjs +20 -2
- package/esm2020/reports/map-widget.mjs +5 -5
- package/esm2020/reports/page-break-widget.mjs +5 -5
- package/esm2020/reports/public-api.mjs +2 -1
- package/esm2020/reports/report.mjs +5 -5
- package/esm2020/reports/reports-module.mjs +15 -12
- package/esm2020/reports/reports_public_index.mjs +5 -0
- package/esm2020/reports/table-widget.mjs +6 -6
- package/esm2020/reports/text-widget.mjs +5 -5
- package/esm2020/reports/widget.mjs +19 -16
- package/esm2020/time/index.mjs +20 -2
- package/esm2020/time/time-module.mjs +8 -22
- package/esm2020/time/time.mjs +6 -6
- package/esm2020/time/time_public_index.mjs +5 -0
- package/fesm2015/barcode.mjs +32 -14
- package/fesm2015/barcode.mjs.map +1 -1
- package/fesm2015/calendar.mjs +34 -36
- package/fesm2015/calendar.mjs.map +1 -1
- package/fesm2015/checkbox-group.mjs +33 -30
- package/fesm2015/checkbox-group.mjs.map +1 -1
- package/fesm2015/form-builder.mjs +638 -544
- package/fesm2015/form-builder.mjs.map +1 -1
- package/fesm2015/forms.mjs +235 -137
- package/fesm2015/forms.mjs.map +1 -1
- package/fesm2015/image.mjs +32 -21
- package/fesm2015/image.mjs.map +1 -1
- package/fesm2015/monaco-editor.mjs +34 -15
- package/fesm2015/monaco-editor.mjs.map +1 -1
- package/fesm2015/node-icon.mjs +32 -21
- package/fesm2015/node-icon.mjs.map +1 -1
- package/fesm2015/page-slider.mjs +32 -16
- package/fesm2015/page-slider.mjs.map +1 -1
- package/fesm2015/reports.mjs +156 -66
- package/fesm2015/reports.mjs.map +1 -1
- package/fesm2015/time.mjs +33 -25
- package/fesm2015/time.mjs.map +1 -1
- package/fesm2020/barcode.mjs +32 -14
- package/fesm2020/barcode.mjs.map +1 -1
- package/fesm2020/calendar.mjs +34 -36
- package/fesm2020/calendar.mjs.map +1 -1
- package/fesm2020/checkbox-group.mjs +33 -30
- package/fesm2020/checkbox-group.mjs.map +1 -1
- package/fesm2020/form-builder.mjs +638 -544
- package/fesm2020/form-builder.mjs.map +1 -1
- package/fesm2020/forms.mjs +235 -137
- package/fesm2020/forms.mjs.map +1 -1
- package/fesm2020/image.mjs +32 -21
- package/fesm2020/image.mjs.map +1 -1
- package/fesm2020/monaco-editor.mjs +34 -15
- package/fesm2020/monaco-editor.mjs.map +1 -1
- package/fesm2020/node-icon.mjs +32 -21
- package/fesm2020/node-icon.mjs.map +1 -1
- package/fesm2020/page-slider.mjs +32 -16
- package/fesm2020/page-slider.mjs.map +1 -1
- package/fesm2020/reports.mjs +156 -66
- package/fesm2020/reports.mjs.map +1 -1
- package/fesm2020/time.mjs +33 -25
- package/fesm2020/time.mjs.map +1 -1
- package/form-builder/form-builder_public_index.d.ts +4 -0
- package/form-builder/index.d.ts +19 -1
- package/form-builder/node-properties.d.ts +1 -0
- package/form-builder/package.json +2 -2
- package/forms/forms_public_index.d.ts +4 -0
- package/forms/index.d.ts +19 -1
- package/forms/package.json +2 -2
- package/image/image_public_index.d.ts +4 -0
- package/image/index.d.ts +19 -1
- package/image/package.json +2 -2
- package/monaco-editor/index.d.ts +19 -1
- package/monaco-editor/monaco-editor_public_index.d.ts +4 -0
- package/monaco-editor/package.json +2 -2
- package/node-icon/index.d.ts +19 -1
- package/node-icon/node-icon_public_index.d.ts +4 -0
- package/node-icon/package.json +2 -2
- package/package.json +26 -36
- package/page-slider/index.d.ts +19 -1
- package/page-slider/package.json +2 -2
- package/page-slider/page-slider_public_index.d.ts +4 -0
- package/reports/filter-widget.d.ts +37 -0
- package/reports/index.d.ts +19 -1
- package/reports/package.json +2 -2
- package/reports/public-api.d.ts +1 -0
- package/reports/reports-module.d.ts +21 -19
- package/reports/reports_public_index.d.ts +4 -0
- package/time/index.d.ts +19 -1
- package/time/package.json +2 -2
- package/time/time_public_index.d.ts +4 -0
- package/esm2020/report-builder/column.mjs +0 -76
- package/esm2020/report-builder/condition-editor.mjs +0 -162
- package/esm2020/report-builder/content.mjs +0 -256
- package/esm2020/report-builder/custom-widget-dialog.mjs +0 -50
- package/esm2020/report-builder/custom-widget-toolbar-button.mjs +0 -67
- package/esm2020/report-builder/custom-widgets-toolbar.mjs +0 -124
- package/esm2020/report-builder/forms-analyzer-dialog.mjs +0 -328
- package/esm2020/report-builder/forms-analyzer.mjs +0 -244
- package/esm2020/report-builder/image-filter.mjs +0 -38
- package/esm2020/report-builder/image-group.mjs +0 -112
- package/esm2020/report-builder/index.mjs +0 -5
- package/esm2020/report-builder/models.mjs +0 -23
- package/esm2020/report-builder/operations.mjs +0 -23
- package/esm2020/report-builder/properties.mjs +0 -761
- package/esm2020/report-builder/public-api.mjs +0 -26
- package/esm2020/report-builder/quill-editor.mjs +0 -307
- package/esm2020/report-builder/renderer-widget.mjs +0 -243
- package/esm2020/report-builder/report-builder-drag-data.mjs +0 -23
- package/esm2020/report-builder/report-builder-module.mjs +0 -155
- package/esm2020/report-builder/report-builder-service.mjs +0 -1690
- package/esm2020/report-builder/report-builder.mjs +0 -51
- package/esm2020/report-builder/theme-color-dialog.mjs +0 -67
- package/esm2020/report-builder/theme-color.mjs +0 -196
- package/esm2020/report-builder/tokens.mjs +0 -24
- package/esm2020/report-builder/toolbar-dialog.mjs +0 -54
- package/esm2020/report-builder/toolbar.mjs +0 -91
- package/esm2020/report-builder/utils.mjs +0 -48
- package/esm2020/report-builder/widget-toolbar-button.mjs +0 -46
- package/esm2020/report-builder/widgets-row-buttons.mjs +0 -136
- package/esm2020/report-builder/widgets-toolbar.mjs +0 -80
- package/fesm2015/report-builder.mjs +0 -5184
- package/fesm2015/report-builder.mjs.map +0 -1
- package/fesm2020/report-builder.mjs +0 -5182
- package/fesm2020/report-builder.mjs.map +0 -1
- package/report-builder/_report-builder.scss +0 -0
- package/report-builder/column.d.ts +0 -66
- package/report-builder/condition-editor.d.ts +0 -70
- package/report-builder/content.d.ts +0 -145
- package/report-builder/custom-widget-dialog.d.ts +0 -13
- package/report-builder/custom-widget-toolbar-button.d.ts +0 -48
- package/report-builder/custom-widgets-toolbar.d.ts +0 -74
- package/report-builder/forms-analyzer-dialog.d.ts +0 -94
- package/report-builder/forms-analyzer.d.ts +0 -105
- package/report-builder/image-filter.d.ts +0 -29
- package/report-builder/image-group.d.ts +0 -72
- package/report-builder/models.d.ts +0 -43
- package/report-builder/operations.d.ts +0 -45
- package/report-builder/package.json +0 -9
- package/report-builder/properties.d.ts +0 -368
- package/report-builder/public-api.d.ts +0 -26
- package/report-builder/quill-editor.d.ts +0 -116
- package/report-builder/renderer-widget.d.ts +0 -83
- package/report-builder/report-builder-drag-data.d.ts +0 -32
- package/report-builder/report-builder-module.d.ts +0 -52
- package/report-builder/report-builder-service.d.ts +0 -725
- package/report-builder/report-builder.d.ts +0 -39
- package/report-builder/theme-color-dialog.d.ts +0 -45
- package/report-builder/theme-color.d.ts +0 -111
- package/report-builder/tokens.d.ts +0 -24
- package/report-builder/toolbar-dialog.d.ts +0 -12
- package/report-builder/toolbar.d.ts +0 -30
- package/report-builder/utils.d.ts +0 -29
- package/report-builder/widget-toolbar-button.d.ts +0 -31
- package/report-builder/widgets-row-buttons.d.ts +0 -60
- package/report-builder/widgets-toolbar.d.ts +0 -26
|
@@ -1,162 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright (C) Gnucoop soc. coop.
|
|
4
|
-
*
|
|
5
|
-
* This file is part of the Advanced JSON forms (ajf).
|
|
6
|
-
*
|
|
7
|
-
* Advanced JSON forms (ajf) is free software: you can redistribute it and/or
|
|
8
|
-
* modify it under the terms of the GNU Affero General Public License as
|
|
9
|
-
* published by the Free Software Foundation, either version 3 of the License,
|
|
10
|
-
* or (at your option) any later version.
|
|
11
|
-
*
|
|
12
|
-
* Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
|
|
13
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
14
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
|
|
15
|
-
* General Public License for more details.
|
|
16
|
-
*
|
|
17
|
-
* You should have received a copy of the GNU Affero General Public License
|
|
18
|
-
* along with Advanced JSON forms (ajf).
|
|
19
|
-
* If not, see http://www.gnu.org/licenses/.
|
|
20
|
-
*
|
|
21
|
-
*/
|
|
22
|
-
import { validateExpression } from '@ajf/core/models';
|
|
23
|
-
import { ChangeDetectionStrategy, Component, Input, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
24
|
-
import { Subscription, timer } from 'rxjs';
|
|
25
|
-
import { AjfReportBuilderService } from './report-builder-service';
|
|
26
|
-
import { sanitizeConditionString } from './utils';
|
|
27
|
-
import * as i0 from "@angular/core";
|
|
28
|
-
import * as i1 from "./report-builder-service";
|
|
29
|
-
import * as i2 from "@angular/material/card";
|
|
30
|
-
import * as i3 from "@angular/material/select";
|
|
31
|
-
import * as i4 from "@angular/material/core";
|
|
32
|
-
import * as i5 from "@angular/common";
|
|
33
|
-
import * as i6 from "@angular/forms";
|
|
34
|
-
import * as i7 from "@ngneat/transloco";
|
|
35
|
-
/**
|
|
36
|
-
* This class will define an ajf builder builder condition editor
|
|
37
|
-
* @implements : OnDestroy
|
|
38
|
-
* @implements : AfterViewInit
|
|
39
|
-
*/
|
|
40
|
-
export class AjfReportBuilderConditionEditor {
|
|
41
|
-
/**
|
|
42
|
-
* this constructor will init current condition by ajfBuilderservice
|
|
43
|
-
* and init condition and availableFieldNames subscriptions
|
|
44
|
-
*/
|
|
45
|
-
constructor(_service) {
|
|
46
|
-
this._service = _service;
|
|
47
|
-
this.isValid = false;
|
|
48
|
-
this.names = [];
|
|
49
|
-
// conditionText is a string
|
|
50
|
-
this.conditionText = 'true';
|
|
51
|
-
// operators is an array of any type that contains all allow operators
|
|
52
|
-
this.operators = [
|
|
53
|
-
'( )', '\' \'', '<', '<=', '==', '>=', '>', '!=', '!', '&&', '||', '+', '-', '*', '/', '%',
|
|
54
|
-
'true', 'false'
|
|
55
|
-
];
|
|
56
|
-
this._conditionNamesSub = Subscription.EMPTY;
|
|
57
|
-
}
|
|
58
|
-
extractNames(formsVariables) {
|
|
59
|
-
this.names.length = 0;
|
|
60
|
-
for (let i = 0; i < formsVariables.length; i++) {
|
|
61
|
-
this.names = this.names.concat(formsVariables[i].names);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
setCurrent(id, index) {
|
|
65
|
-
this.currentId = id;
|
|
66
|
-
this.appendText(this.formsVariables[id].names[index]);
|
|
67
|
-
this.checkValidation();
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* this method will return success if the current condtion is valid
|
|
71
|
-
* @return boolean
|
|
72
|
-
*/
|
|
73
|
-
validateCondition() {
|
|
74
|
-
return validateExpression(this.conditionText, this.names);
|
|
75
|
-
}
|
|
76
|
-
// TODO complete the comment
|
|
77
|
-
/**
|
|
78
|
-
* this method will append text to json
|
|
79
|
-
* @param text : string -
|
|
80
|
-
* @param goBackNum : number -
|
|
81
|
-
*/
|
|
82
|
-
appendText(text, _goBackNum) {
|
|
83
|
-
if (text == null || this.conditionTextArea == null) {
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
let el = this.conditionTextArea.nativeElement;
|
|
87
|
-
let sStart = Math.min(el.selectionStart, el.selectionEnd);
|
|
88
|
-
let sEnd = Math.max(el.selectionStart, el.selectionEnd);
|
|
89
|
-
let startingString = this.conditionText.substr(0, sStart);
|
|
90
|
-
let endingString = this.conditionText.substr(sEnd);
|
|
91
|
-
let initialLenght = startingString.length;
|
|
92
|
-
let newStr = '';
|
|
93
|
-
startingString = sanitizeConditionString(startingString);
|
|
94
|
-
endingString = sanitizeConditionString(endingString);
|
|
95
|
-
sStart +=
|
|
96
|
-
startingString.length - initialLenght + text.length + (startingString.length > 0 ? 2 : 1);
|
|
97
|
-
newStr = startingString.length > 0 ? `${startingString} ` : '';
|
|
98
|
-
this.conditionText = `${newStr}${text} ${endingString}`;
|
|
99
|
-
const s = timer(0).subscribe(() => {
|
|
100
|
-
if (s && !s.closed) {
|
|
101
|
-
s.unsubscribe();
|
|
102
|
-
}
|
|
103
|
-
if (el.createTextRange) {
|
|
104
|
-
let range = el.createTextRange();
|
|
105
|
-
range.move('character', sStart);
|
|
106
|
-
range.select();
|
|
107
|
-
}
|
|
108
|
-
else {
|
|
109
|
-
if (el.selectionStart) {
|
|
110
|
-
el.focus();
|
|
111
|
-
el.setSelectionRange(sStart, sStart);
|
|
112
|
-
}
|
|
113
|
-
else {
|
|
114
|
-
el.focus();
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
});
|
|
118
|
-
}
|
|
119
|
-
checkValidation() {
|
|
120
|
-
this.isValid = this.validateCondition();
|
|
121
|
-
if (this.isValid) {
|
|
122
|
-
this.saveCondition();
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
/**
|
|
126
|
-
* this method will save current condition
|
|
127
|
-
*/
|
|
128
|
-
saveCondition() {
|
|
129
|
-
this._service.saveCondition(this.conditionText);
|
|
130
|
-
}
|
|
131
|
-
ngOnInit() {
|
|
132
|
-
this.conditionText = this.visibility.condition;
|
|
133
|
-
this.isValid = true;
|
|
134
|
-
if (this.conditionText == 'true') {
|
|
135
|
-
this.conditionText = '';
|
|
136
|
-
}
|
|
137
|
-
this._conditionNamesSub = this._service.conditionNames.subscribe((x) => {
|
|
138
|
-
this.formsVariables = x;
|
|
139
|
-
if (x != null) {
|
|
140
|
-
this.extractNames(this.formsVariables);
|
|
141
|
-
}
|
|
142
|
-
});
|
|
143
|
-
}
|
|
144
|
-
/**
|
|
145
|
-
* this method will destroy a conditionSubscriptions
|
|
146
|
-
*/
|
|
147
|
-
ngOnDestroy() {
|
|
148
|
-
this._conditionNamesSub.unsubscribe();
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
AjfReportBuilderConditionEditor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: AjfReportBuilderConditionEditor, deps: [{ token: i1.AjfReportBuilderService }], target: i0.ɵɵFactoryTarget.Component });
|
|
152
|
-
AjfReportBuilderConditionEditor.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: AjfReportBuilderConditionEditor, selector: "ajf-report-builder-condition-editor", inputs: { visibility: "visibility" }, viewQueries: [{ propertyName: "conditionTextArea", first: true, predicate: ["conditionTextArea"], descendants: true }], ngImport: i0, template: "<ng-template [ngIf]=\"formsVariables != null && visibility != null\">\n <mat-card>\n <mat-card-header>\n <mat-card-title>condition of visibility</mat-card-title>\n <mat-card-subtitle>\n <ng-template [ngIf]=\"visibility\">\n {{visibility.condition}}\n </ng-template>\n </mat-card-subtitle>\n </mat-card-header>\n <mat-card-content>\n <br />\n <form>\n <mat-select\n [(ngModel)]=\"a\"\n [ngModelOptions]=\"{standalone: true}\"\n placeholder=\"Select condition\"\n >\n <ng-template ngFor let-form let-id=\"index\" [ngForOf]=\"formsVariables\">\n <mat-option\n *ngFor=\"let label of form.labels;let i = index;\"\n [value]=\"label\"\n (click)=\"setCurrent(id, i)\"\n >\n {{ id}}: {{ label }}\n </mat-option>\n </ng-template>\n </mat-select>\n <mat-select\n [(ngModel)]=\"b\"\n [ngModelOptions]=\"{standalone: true}\"\n placeholder=\"Select operator\"\n >\n <mat-option\n *ngFor=\"let operator of operators\"\n (click)=\"appendText(operator);\"\n >\n {{ operator }}\n </mat-option>\n </mat-select>\n </form>\n </mat-card-content>\n <mat-card-actions>\n <ng-template [ngIf]=\"!isValid\">\n <ng-container\n >{{'Invalid condition! Please check syntax.'|transloco}}</ng-container\n >\n </ng-template>\n <textarea\n #conditionTextArea\n [(ngModel)]=\"conditionText\"\n (keyup)=\"checkValidation()\"\n >\n </textarea>\n </mat-card-actions>\n </mat-card>\n</ng-template>\n", styles: ["ajf-report-builder-condition-editor textarea{width:100%}\n"], components: [{ type: i2.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { type: i2.MatCardHeader, selector: "mat-card-header" }, { type: i3.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i4.MatOption, selector: "mat-option", exportAs: ["matOption"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { type: i2.MatCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }, { type: i2.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i6.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }], pipes: { "transloco": i7.TranslocoPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
153
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: AjfReportBuilderConditionEditor, decorators: [{
|
|
154
|
-
type: Component,
|
|
155
|
-
args: [{ selector: 'ajf-report-builder-condition-editor', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template [ngIf]=\"formsVariables != null && visibility != null\">\n <mat-card>\n <mat-card-header>\n <mat-card-title>condition of visibility</mat-card-title>\n <mat-card-subtitle>\n <ng-template [ngIf]=\"visibility\">\n {{visibility.condition}}\n </ng-template>\n </mat-card-subtitle>\n </mat-card-header>\n <mat-card-content>\n <br />\n <form>\n <mat-select\n [(ngModel)]=\"a\"\n [ngModelOptions]=\"{standalone: true}\"\n placeholder=\"Select condition\"\n >\n <ng-template ngFor let-form let-id=\"index\" [ngForOf]=\"formsVariables\">\n <mat-option\n *ngFor=\"let label of form.labels;let i = index;\"\n [value]=\"label\"\n (click)=\"setCurrent(id, i)\"\n >\n {{ id}}: {{ label }}\n </mat-option>\n </ng-template>\n </mat-select>\n <mat-select\n [(ngModel)]=\"b\"\n [ngModelOptions]=\"{standalone: true}\"\n placeholder=\"Select operator\"\n >\n <mat-option\n *ngFor=\"let operator of operators\"\n (click)=\"appendText(operator);\"\n >\n {{ operator }}\n </mat-option>\n </mat-select>\n </form>\n </mat-card-content>\n <mat-card-actions>\n <ng-template [ngIf]=\"!isValid\">\n <ng-container\n >{{'Invalid condition! Please check syntax.'|transloco}}</ng-container\n >\n </ng-template>\n <textarea\n #conditionTextArea\n [(ngModel)]=\"conditionText\"\n (keyup)=\"checkValidation()\"\n >\n </textarea>\n </mat-card-actions>\n </mat-card>\n</ng-template>\n", styles: ["ajf-report-builder-condition-editor textarea{width:100%}\n"] }]
|
|
156
|
-
}], ctorParameters: function () { return [{ type: i1.AjfReportBuilderService }]; }, propDecorators: { visibility: [{
|
|
157
|
-
type: Input
|
|
158
|
-
}], conditionTextArea: [{
|
|
159
|
-
type: ViewChild,
|
|
160
|
-
args: ['conditionTextArea', { static: false }]
|
|
161
|
-
}] } });
|
|
162
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZGl0aW9uLWVkaXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC9yZXBvcnQtYnVpbGRlci9jb25kaXRpb24tZWRpdG9yLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21hdGVyaWFsL3JlcG9ydC1idWlsZGVyL2NvbmRpdGlvbi1lZGl0b3IuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFFSCxPQUFPLEVBQWUsa0JBQWtCLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEVBR0wsU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFFLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUd6QyxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxTQUFTLENBQUM7Ozs7Ozs7OztBQVVoRDs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLCtCQUErQjtJQXlCMUM7OztPQUdHO0lBQ0gsWUFBb0IsUUFBaUM7UUFBakMsYUFBUSxHQUFSLFFBQVEsQ0FBeUI7UUF6QnJELFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsVUFBSyxHQUFhLEVBQUUsQ0FBQztRQUdyQiw0QkFBNEI7UUFDNUIsa0JBQWEsR0FBRyxNQUFNLENBQUM7UUFRdkIsdUVBQXVFO1FBQ3ZFLGNBQVMsR0FBYTtZQUNwQixLQUFLLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFF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Q0FBQyxJQUFJLElBQUksRUFBRTtnQkFDYixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQzthQUN4QztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNEOztPQUVHO0lBQ0gsV0FBVztRQUNULElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN4QyxDQUFDOztvSUFsSVUsK0JBQStCO3dIQUEvQiwrQkFBK0IseU9DbkQ1QyxrdURBeURBO21HRE5hLCtCQUErQjtrQkFaM0MsU0FBUzsrQkFDRSxxQ0FBcUMsaUJBR2hDLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU07OEdBUXRDLFVBQVU7c0JBQWxCLEtBQUs7Z0JBYzJDLGlCQUFpQjtzQkFBakUsU0FBUzt1QkFBQyxtQkFBbUIsRUFBRSxFQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgKEMpIEdudWNvb3Agc29jLiBjb29wLlxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpLlxuICpcbiAqIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yXG4gKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXNcbiAqIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLFxuICogb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlIEdOVSBBZmZlcm9cbiAqIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGFsb25nIHdpdGggQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqIElmIG5vdCwgc2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8uXG4gKlxuICovXG5cbmltcG9ydCB7QWpmQ29uZGl0aW9uLCB2YWxpZGF0ZUV4cHJlc3Npb259IGZyb20gJ0BhamYvY29yZS9tb2RlbHMnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtTdWJzY3JpcHRpb24sIHRpbWVyfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtBamZGb3JtVmFyaWFibGVzfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQge0FqZlJlcG9ydEJ1aWxkZXJTZXJ2aWNlfSBmcm9tICcuL3JlcG9ydC1idWlsZGVyLXNlcnZpY2UnO1xuaW1wb3J0IHtzYW5pdGl6ZUNvbmRpdGlvblN0cmluZ30gZnJvbSAnLi91dGlscyc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWpmLXJlcG9ydC1idWlsZGVyLWNvbmRpdGlvbi1lZGl0b3InLFxuICB0ZW1wbGF0ZVVybDogJ2NvbmRpdGlvbi1lZGl0b3IuaHRtbCcsXG4gIHN0eWxlVXJsczogWydjb25kaXRpb24tZWRpdG9yLmNzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbi8qKlxuICogVGhpcyBjbGFzcyB3aWxsIGRlZmluZSBhbiBhamYgYnVpbGRlciBidWlsZGVyIGNvbmRpdGlvbiBlZGl0b3JcbiAqIEBpbXBsZW1lbnRzIDogT25EZXN0cm95XG4gKiBAaW1wbGVtZW50cyA6IEFmdGVyVmlld0luaXRcbiAqL1xuZXhwb3J0IGNsYXNzIEFqZlJlcG9ydEJ1aWxkZXJDb25kaXRpb25FZGl0b3IgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHZpc2liaWxpdHk6IEFqZkNvbmRpdGlvbjtcblxuICBmb3Jtc1ZhcmlhYmxlczogQWpmRm9ybVZhcmlhYmxlc1tdO1xuICBpc1ZhbGlkID0gZmFsc2U7XG4gIG5hbWVzOiBzdHJpbmdbXSA9IFtdO1xuICBjdXJyZW50SWQ6IG51bWJlcjtcblxuICAvLyBjb25kaXRpb25UZXh0IGlzIGEgc3RyaW5nXG4gIGNvbmRpdGlvblRleHQgPSAndHJ1ZSc7XG5cbiAgYTogYW55O1xuICBiOiBhbnk7XG5cblxuICBAVmlld0NoaWxkKCdjb25kaXRpb25UZXh0QXJlYScsIHtzdGF0aWM6IGZhbHNlfSkgY29uZGl0aW9uVGV4dEFyZWE6IGFueTtcblxuICAvLyAgb3BlcmF0b3JzIGlzIGFuIGFycmF5IG9mIGFueSB0eXBlIHRoYXQgY29udGFpbnMgYWxsIGFsbG93IG9wZXJhdG9yc1xuICBvcGVyYXRvcnM6IHN0cmluZ1tdID0gW1xuICAgICcoICknLCAnXFwnIFxcJycsICc8JywgJzw9JywgJz09JywgJz49JywgJz4nLCAnIT0nLCAnIScsICcmJicsICd8fCcsICcrJywgJy0nLCAnKicsICcvJywgJyUnLFxuICAgICd0cnVlJywgJ2ZhbHNlJ1xuICBdO1xuXG4gIHByaXZhdGUgX2NvbmRpdGlvbk5hbWVzU3ViOiBTdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb24uRU1QVFk7XG5cbiAgLyoqXG4gICAqIHRoaXMgY29uc3RydWN0b3Igd2lsbCBpbml0IGN1cnJlbnQgY29uZGl0aW9uIGJ5IGFqZkJ1aWxkZXJzZXJ2aWNlXG4gICAqIGFuZCBpbml0IGNvbmRpdGlvbiBhbmQgYXZhaWxhYmxlRmllbGROYW1lcyBzdWJzY3JpcHRpb25zXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9zZXJ2aWNlOiBBamZSZXBvcnRCdWlsZGVyU2VydmljZSkge31cbiAgZXh0cmFjdE5hbWVzKGZvcm1zVmFyaWFibGVzOiBBamZGb3JtVmFyaWFibGVzW10pIHtcbiAgICB0aGlzLm5hbWVzLmxlbmd0aCA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBmb3Jtc1ZhcmlhYmxlcy5sZW5ndGg7IGkrKykge1xuICAgICAgdGhpcy5uYW1lcyA9IHRoaXMubmFtZXMuY29uY2F0KGZvcm1zVmFyaWFibGVzW2ldLm5hbWVzKTtcbiAgICB9XG4gIH1cblxuICBzZXRDdXJyZW50KGlkOiBudW1iZXIsIGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLmN1cnJlbnRJZCA9IGlkO1xuICAgIHRoaXMuYXBwZW5kVGV4dCh0aGlzLmZvcm1zVmFyaWFibGVzW2lkXS5uYW1lc1tpbmRleF0pO1xuICAgIHRoaXMuY2hlY2tWYWxpZGF0aW9uKCk7XG4gIH1cblxuICAvKipcbiAgICogdGhpcyBtZXRob2Qgd2lsbCByZXR1cm4gc3VjY2VzcyBpZiB0aGUgY3VycmVudCBjb25kdGlvbiBpcyB2YWxpZFxuICAgKiBAcmV0dXJuIGJvb2xlYW5cbiAgICovXG4gIHZhbGlkYXRlQ29uZGl0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB2YWxpZGF0ZUV4cHJlc3Npb24odGhpcy5jb25kaXRpb25UZXh0LCB0aGlzLm5hbWVzKTtcbiAgfVxuXG4gIC8vIFRPRE8gY29tcGxldGUgdGhlIGNvbW1lbnRcbiAgLyoqXG4gICAqIHRoaXMgbWV0aG9kIHdpbGwgYXBwZW5kIHRleHQgdG8ganNvblxuICAgKiBAcGFyYW0gdGV4dCAgICAgIDogc3RyaW5nIC1cbiAgICogQHBhcmFtIGdvQmFja051bSA6IG51bWJlciAtXG4gICAqL1xuICBhcHBlbmRUZXh0KHRleHQ6IHN0cmluZywgX2dvQmFja051bT86IG51bWJlcik6IHZvaWQge1xuICAgIGlmICh0ZXh0ID09IG51bGwgfHwgdGhpcy5jb25kaXRpb25UZXh0QXJlYSA9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGV0IGVsID0gdGhpcy5jb25kaXRpb25UZXh0QXJlYS5uYXRpdmVFbGVtZW50O1xuICAgIGxldCBzU3RhcnQ6IG51bWJlciA9IE1hdGgubWluKGVsLnNlbGVjdGlvblN0YXJ0LCBlbC5zZWxlY3Rpb25FbmQpO1xuICAgIGxldCBzRW5kOiBudW1iZXIgPSBNYXRoLm1heChlbC5zZWxlY3Rpb25TdGFydCwgZWwuc2VsZWN0aW9uRW5kKTtcbiAgICBsZXQgc3RhcnRpbmdTdHJpbmc6IHN0cmluZyA9IHRoaXMuY29uZGl0aW9uVGV4dC5zdWJzdHIoMCwgc1N0YXJ0KTtcbiAgICBsZXQgZW5kaW5nU3RyaW5nOiBzdHJpbmcgPSB0aGlzLmNvbmRpdGlvblRleHQuc3Vic3RyKHNFbmQpO1xuICAgIGxldCBpbml0aWFsTGVuZ2h0OiBudW1iZXIgPSBzdGFydGluZ1N0cmluZy5sZW5ndGg7XG4gICAgbGV0IG5ld1N0ciA9ICcnO1xuXG4gICAgc3RhcnRpbmdTdHJpbmcgPSBzYW5pdGl6ZUNvbmRpdGlvblN0cmluZyhzdGFydGluZ1N0cmluZyk7XG4gICAgZW5kaW5nU3RyaW5nID0gc2FuaXRpemVDb25kaXRpb25TdHJpbmcoZW5kaW5nU3RyaW5nKTtcbiAgICBzU3RhcnQgKz1cbiAgICAgICAgc3RhcnRpbmdTdHJpbmcubGVuZ3RoIC0gaW5pdGlhbExlbmdodCArIHRleHQubGVuZ3RoICsgKHN0YXJ0aW5nU3RyaW5nLmxlbmd0aCA+IDAgPyAyIDogMSk7XG4gICAgbmV3U3RyID0gc3RhcnRpbmdTdHJpbmcubGVuZ3RoID4gMCA/IGAke3N0YXJ0aW5nU3RyaW5nfSBgIDogJyc7XG4gICAgdGhpcy5jb25kaXRpb25UZXh0ID0gYCR7bmV3U3RyfSR7dGV4dH0gJHtlbmRpbmdTdHJpbmd9YDtcblxuICAgIGNvbnN0IHMgPSB0aW1lcigwKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgaWYgKHMgJiYgIXMuY2xvc2VkKSB7XG4gICAgICAgIHMudW5zdWJzY3JpYmUoKTtcbiAgICAgIH1cbiAgICAgIGlmIChlbC5jcmVhdGVUZXh0UmFuZ2UpIHtcbiAgICAgICAgbGV0IHJhbmdlID0gZWwuY3JlYXRlVGV4dFJhbmdlKCk7XG4gICAgICAgIHJhbmdlLm1vdmUoJ2NoYXJhY3RlcicsIHNTdGFydCk7XG4gICAgICAgIHJhbmdlLnNlbGVjdCgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKGVsLnNlbGVjdGlvblN0YXJ0KSB7XG4gICAgICAgICAgZWwuZm9jdXMoKTtcbiAgICAgICAgICBlbC5zZXRTZWxlY3Rpb25SYW5nZShzU3RhcnQsIHNTdGFydCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZWwuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgY2hlY2tWYWxpZGF0aW9uKCkge1xuICAgIHRoaXMuaXNWYWxpZCA9IHRoaXMudmFsaWRhdGVDb25kaXRpb24oKTtcbiAgICBpZiAodGhpcy5pc1ZhbGlkKSB7XG4gICAgICB0aGlzLnNhdmVDb25kaXRpb24oKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogdGhpcyBtZXRob2Qgd2lsbCBzYXZlIGN1cnJlbnQgY29uZGl0aW9uXG4gICAqL1xuICBzYXZlQ29uZGl0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuX3NlcnZpY2Uuc2F2ZUNvbmRpdGlvbih0aGlzLmNvbmRpdGlvblRleHQpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jb25kaXRpb25UZXh0ID0gdGhpcy52aXNpYmlsaXR5LmNvbmRpdGlvbjtcbiAgICB0aGlzLmlzVmFsaWQgPSB0cnVlO1xuXG4gICAgaWYgKHRoaXMuY29uZGl0aW9uVGV4dCA9PSAndHJ1ZScpIHtcbiAgICAgIHRoaXMuY29uZGl0aW9uVGV4dCA9ICcnO1xuICAgIH1cblxuICAgIHRoaXMuX2NvbmRpdGlvbk5hbWVzU3ViID0gdGhpcy5fc2VydmljZS5jb25kaXRpb25OYW1lcy5zdWJzY3JpYmUoKHgpID0+IHtcbiAgICAgIHRoaXMuZm9ybXNWYXJpYWJsZXMgPSB4O1xuICAgICAgaWYgKHggIT0gbnVsbCkge1xuICAgICAgICB0aGlzLmV4dHJhY3ROYW1lcyh0aGlzLmZvcm1zVmFyaWFibGVzKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuICAvKipcbiAgICogdGhpcyBtZXRob2Qgd2lsbCBkZXN0cm95IGEgY29uZGl0aW9uU3Vic2NyaXB0aW9uc1xuICAgKi9cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fY29uZGl0aW9uTmFtZXNTdWIudW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIiwiPG5nLXRlbXBsYXRlIFtuZ0lmXT1cImZvcm1zVmFyaWFibGVzICE9IG51bGwgJiYgdmlzaWJpbGl0eSAhPSBudWxsXCI+XG4gIDxtYXQtY2FyZD5cbiAgICA8bWF0LWNhcmQtaGVhZGVyPlxuICAgICAgPG1hdC1jYXJkLXRpdGxlPmNvbmRpdGlvbiBvZiB2aXNpYmlsaXR5PC9tYXQtY2FyZC10aXRsZT5cbiAgICAgIDxtYXQtY2FyZC1zdWJ0aXRsZT5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cInZpc2liaWxpdHlcIj5cbiAgICAgICAgICB7e3Zpc2liaWxpdHkuY29uZGl0aW9ufX1cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvbWF0LWNhcmQtc3VidGl0bGU+XG4gICAgPC9tYXQtY2FyZC1oZWFkZXI+XG4gICAgPG1hdC1jYXJkLWNvbnRlbnQ+XG4gICAgICA8YnIgLz5cbiAgICAgIDxmb3JtPlxuICAgICAgICA8bWF0LXNlbGVjdFxuICAgICAgICAgIFsobmdNb2RlbCldPVwiYVwiXG4gICAgICAgICAgW25nTW9kZWxPcHRpb25zXT1cIntzdGFuZGFsb25lOiB0cnVlfVwiXG4gICAgICAgICAgcGxhY2Vob2xkZXI9XCJTZWxlY3QgY29uZGl0aW9uXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBuZ0ZvciBsZXQtZm9ybSBsZXQtaWQ9XCJpbmRleFwiIFtuZ0Zvck9mXT1cImZvcm1zVmFyaWFibGVzXCI+XG4gICAgICAgICAgICA8bWF0LW9wdGlvblxuICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgbGFiZWwgb2YgZm9ybS5sYWJlbHM7bGV0IGkgPSBpbmRleDtcIlxuICAgICAgICAgICAgICBbdmFsdWVdPVwibGFiZWxcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwic2V0Q3VycmVudChpZCwgaSlcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7eyBpZH19OiB7eyBsYWJlbCB9fVxuICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbWF0LXNlbGVjdD5cbiAgICAgICAgPG1hdC1zZWxlY3RcbiAgICAgICAgICBbKG5nTW9kZWwpXT1cImJcIlxuICAgICAgICAgIFtuZ01vZGVsT3B0aW9uc109XCJ7c3RhbmRhbG9uZTogdHJ1ZX1cIlxuICAgICAgICAgIHBsYWNlaG9sZGVyPVwiU2VsZWN0IG9wZXJhdG9yXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxtYXQtb3B0aW9uXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgb3BlcmF0b3Igb2Ygb3BlcmF0b3JzXCJcbiAgICAgICAgICAgIChjbGljayk9XCJhcHBlbmRUZXh0KG9wZXJhdG9yKTtcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7IG9wZXJhdG9yIH19XG4gICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICA8L21hdC1zZWxlY3Q+XG4gICAgICA8L2Zvcm0+XG4gICAgPC9tYXQtY2FyZC1jb250ZW50PlxuICAgIDxtYXQtY2FyZC1hY3Rpb25zPlxuICAgICAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cIiFpc1ZhbGlkXCI+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICA+e3snSW52YWxpZCBjb25kaXRpb24hIFBsZWFzZSBjaGVjayBzeW50YXguJ3x0cmFuc2xvY299fTwvbmctY29udGFpbmVyXG4gICAgICAgID5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8dGV4dGFyZWFcbiAgICAgICAgI2NvbmRpdGlvblRleHRBcmVhXG4gICAgICAgIFsobmdNb2RlbCldPVwiY29uZGl0aW9uVGV4dFwiXG4gICAgICAgIChrZXl1cCk9XCJjaGVja1ZhbGlkYXRpb24oKVwiXG4gICAgICA+XG4gICAgICA8L3RleHRhcmVhPlxuICAgIDwvbWF0LWNhcmQtYWN0aW9ucz5cbiAgPC9tYXQtY2FyZD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -1,256 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright (C) Gnucoop soc. coop.
|
|
4
|
-
*
|
|
5
|
-
* This file is part of the Advanced JSON forms (ajf).
|
|
6
|
-
*
|
|
7
|
-
* Advanced JSON forms (ajf) is free software: you can redistribute it and/or
|
|
8
|
-
* modify it under the terms of the GNU Affero General Public License as
|
|
9
|
-
* published by the Free Software Foundation, either version 3 of the License,
|
|
10
|
-
* or (at your option) any later version.
|
|
11
|
-
*
|
|
12
|
-
* Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
|
|
13
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
14
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
|
|
15
|
-
* General Public License for more details.
|
|
16
|
-
*
|
|
17
|
-
* You should have received a copy of the GNU Affero General Public License
|
|
18
|
-
* along with Advanced JSON forms (ajf).
|
|
19
|
-
* If not, see http://www.gnu.org/licenses/.
|
|
20
|
-
*
|
|
21
|
-
*/
|
|
22
|
-
import { AjfWidgetType } from '@ajf/core/reports';
|
|
23
|
-
import { deepCopy } from '@ajf/core/utils';
|
|
24
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ViewEncapsulation } from '@angular/core';
|
|
25
|
-
import { Subscription, timer } from 'rxjs';
|
|
26
|
-
import { AjfReportBuilderService } from './report-builder-service';
|
|
27
|
-
import * as i0 from "@angular/core";
|
|
28
|
-
import * as i1 from "./report-builder-service";
|
|
29
|
-
import * as i2 from "@angular/material/list";
|
|
30
|
-
import * as i3 from "./widgets-row-buttons";
|
|
31
|
-
import * as i4 from "./renderer-widget";
|
|
32
|
-
import * as i5 from "@angular/common";
|
|
33
|
-
import * as i6 from "@ajf/core/common";
|
|
34
|
-
import * as i7 from "@angular/cdk/drag-drop";
|
|
35
|
-
import * as i8 from "@ngneat/transloco";
|
|
36
|
-
/**
|
|
37
|
-
* manage the content page
|
|
38
|
-
*
|
|
39
|
-
* @export
|
|
40
|
-
*/
|
|
41
|
-
export class AjfReportBuilderContent {
|
|
42
|
-
constructor(_service, _cdRef) {
|
|
43
|
-
this._service = _service;
|
|
44
|
-
this._cdRef = _cdRef;
|
|
45
|
-
// this boolean sign if is dragged a widget
|
|
46
|
-
this.onDragged = false;
|
|
47
|
-
/**
|
|
48
|
-
* observe the status of the fixed zoom
|
|
49
|
-
*
|
|
50
|
-
* @memberOf AjfReportBuilderContent
|
|
51
|
-
*/
|
|
52
|
-
this.fixedZoom = false;
|
|
53
|
-
// this boolean sign if widget is in drag enter status
|
|
54
|
-
this.onDragEnter = {};
|
|
55
|
-
this.show = false;
|
|
56
|
-
// this array contains all widget locate in header zone
|
|
57
|
-
this.headerWidgets = [];
|
|
58
|
-
// this array contains all widget locate in content zone
|
|
59
|
-
this.contentWidgets = [];
|
|
60
|
-
// this array contains all widget locate in footer zone
|
|
61
|
-
this.footerWidgets = [];
|
|
62
|
-
this.onOver = false;
|
|
63
|
-
// this is the current widget
|
|
64
|
-
this.currentWidget = null;
|
|
65
|
-
/**
|
|
66
|
-
* if true mouse event is on dragged status
|
|
67
|
-
*
|
|
68
|
-
* @memberOf AjfReportBuilderContent
|
|
69
|
-
*/
|
|
70
|
-
this.showActions = false;
|
|
71
|
-
this._onDraggedSub = Subscription.EMPTY;
|
|
72
|
-
this._fixedZoomSub = Subscription.EMPTY;
|
|
73
|
-
this._onDragEnterSub = Subscription.EMPTY;
|
|
74
|
-
this._headerWidgetsSub = Subscription.EMPTY;
|
|
75
|
-
this._contentWidgetsSub = Subscription.EMPTY;
|
|
76
|
-
this._footerWidgetsSub = Subscription.EMPTY;
|
|
77
|
-
this._onOverSub = Subscription.EMPTY;
|
|
78
|
-
this._currentWidgetSub = Subscription.EMPTY;
|
|
79
|
-
this.headerStyles = this._service.headerStyles;
|
|
80
|
-
this.contentStyles = this._service.contentStyles;
|
|
81
|
-
this.footerStyles = this._service.footerStyles;
|
|
82
|
-
}
|
|
83
|
-
onMouseOver() {
|
|
84
|
-
this.showActions = true;
|
|
85
|
-
this._service.overStarted();
|
|
86
|
-
}
|
|
87
|
-
onMouseLeave() {
|
|
88
|
-
this.showActions = false;
|
|
89
|
-
this._service.overEnded();
|
|
90
|
-
}
|
|
91
|
-
canDropPredicate(dropZones) {
|
|
92
|
-
return item => {
|
|
93
|
-
for (let i = 0; i < item.data.dropZones.length; i++) {
|
|
94
|
-
if (dropZones.indexOf(item.data.dropZones[i]) > -1) {
|
|
95
|
-
return true;
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
return false;
|
|
99
|
-
};
|
|
100
|
-
}
|
|
101
|
-
isLayout(widget) {
|
|
102
|
-
return widget.widgetType === AjfWidgetType.Layout;
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* sign the start of mouse drag with 200 ms of delay
|
|
106
|
-
*
|
|
107
|
-
* @memberOf AjfReportBuilderContent
|
|
108
|
-
*/
|
|
109
|
-
onDragStartHandler() {
|
|
110
|
-
let s = timer(200).subscribe(() => {
|
|
111
|
-
if (s != null) {
|
|
112
|
-
s.unsubscribe();
|
|
113
|
-
}
|
|
114
|
-
this._service.dragStarted();
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* sign the end of mouse drag
|
|
119
|
-
*
|
|
120
|
-
* @memberOf AjfReportBuilderContent
|
|
121
|
-
*/
|
|
122
|
-
onDragEndHandler() {
|
|
123
|
-
this._service.dragEnded();
|
|
124
|
-
}
|
|
125
|
-
/**
|
|
126
|
-
* sign the enter of mouse drag
|
|
127
|
-
*
|
|
128
|
-
* @memberOf AjfReportBuilderContent
|
|
129
|
-
*/
|
|
130
|
-
onDragEnterHandler(array, index) {
|
|
131
|
-
if (index == null) {
|
|
132
|
-
return;
|
|
133
|
-
}
|
|
134
|
-
this._service.dragEnter(array, index);
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* sign the leave of mouse drag
|
|
138
|
-
*
|
|
139
|
-
* @memberOf AjfReportBuilderContent
|
|
140
|
-
*/
|
|
141
|
-
onDragLeaveHandler() {
|
|
142
|
-
this._service.dragLeave();
|
|
143
|
-
}
|
|
144
|
-
/**
|
|
145
|
-
* return true if array and index is === with array and index of onDragEnter
|
|
146
|
-
*
|
|
147
|
-
* @param array
|
|
148
|
-
* @param index
|
|
149
|
-
*
|
|
150
|
-
* @memberOf AjfReportBuilderContent
|
|
151
|
-
*/
|
|
152
|
-
onDragEnterCheck(array, index) {
|
|
153
|
-
if ((array === this.onDragEnter.array) &&
|
|
154
|
-
((index === this.onDragEnter.index) || (index === -1))) {
|
|
155
|
-
return true;
|
|
156
|
-
}
|
|
157
|
-
else {
|
|
158
|
-
return false;
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
/**
|
|
162
|
-
* remove widget element from type array in idx position
|
|
163
|
-
*
|
|
164
|
-
* @param type can be header content or footer
|
|
165
|
-
* @param idx
|
|
166
|
-
*
|
|
167
|
-
* @memberOf AjfReportBuilderContent
|
|
168
|
-
*/
|
|
169
|
-
remove(type, idx) {
|
|
170
|
-
this._service.remove(type, idx);
|
|
171
|
-
}
|
|
172
|
-
/**
|
|
173
|
-
* add widget element into type array in idx position
|
|
174
|
-
*
|
|
175
|
-
* @param type
|
|
176
|
-
* @param event
|
|
177
|
-
*
|
|
178
|
-
* @memberOf AjfReportBuilderContent
|
|
179
|
-
*/
|
|
180
|
-
addToList(arrayTo, event, to) {
|
|
181
|
-
this.onDragEndHandler();
|
|
182
|
-
this._service.setOrigin(arrayTo);
|
|
183
|
-
const itemData = event.item.data;
|
|
184
|
-
if (itemData.fromColumn != null) {
|
|
185
|
-
this._service.removeWidgetToColumn(itemData.fromColumn, itemData.fromIndex);
|
|
186
|
-
this.currentWidget = itemData.widget;
|
|
187
|
-
}
|
|
188
|
-
else if (itemData.widget != null) {
|
|
189
|
-
this.remove(itemData.arrayFrom, itemData.from);
|
|
190
|
-
this.currentWidget = itemData.widget;
|
|
191
|
-
}
|
|
192
|
-
else if (itemData.json != null && itemData.json !== '') {
|
|
193
|
-
this.currentWidget = deepCopy(itemData.json);
|
|
194
|
-
}
|
|
195
|
-
else {
|
|
196
|
-
let obj = { 'widgetType': AjfWidgetType[itemData.widgetType] };
|
|
197
|
-
this.currentWidget = deepCopy(obj);
|
|
198
|
-
}
|
|
199
|
-
this.onDragEndHandler();
|
|
200
|
-
if (this.currentWidget != null) {
|
|
201
|
-
switch (arrayTo) {
|
|
202
|
-
case 'header':
|
|
203
|
-
this._service.addHeaderWidget(this.currentWidget, to);
|
|
204
|
-
break;
|
|
205
|
-
case 'content':
|
|
206
|
-
this._service.addContentWidget(this.currentWidget, to);
|
|
207
|
-
break;
|
|
208
|
-
case 'footer':
|
|
209
|
-
this._service.addfooterWidget(this.currentWidget, to);
|
|
210
|
-
break;
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
this.onDragLeaveHandler();
|
|
214
|
-
}
|
|
215
|
-
ngOnInit() {
|
|
216
|
-
this._headerWidgetsSub = this._service.headerWidgets.subscribe(x => {
|
|
217
|
-
this.headerWidgets = x.widgets;
|
|
218
|
-
});
|
|
219
|
-
this._contentWidgetsSub = this._service.contentWidgets.subscribe(x => {
|
|
220
|
-
this.contentWidgets = x.widgets;
|
|
221
|
-
});
|
|
222
|
-
this._footerWidgetsSub = this._service.footerWidgets.subscribe(x => {
|
|
223
|
-
this.footerWidgets = x.widgets;
|
|
224
|
-
});
|
|
225
|
-
this._onDraggedSub = this._service.onDragged.subscribe(x => {
|
|
226
|
-
this.onDragged = x;
|
|
227
|
-
});
|
|
228
|
-
this._fixedZoomSub = this._service.fixedZoom.subscribe(bool => {
|
|
229
|
-
this.fixedZoom = bool;
|
|
230
|
-
});
|
|
231
|
-
this._onDragEnterSub = this._service.onDragEnter.subscribe(x => {
|
|
232
|
-
this.onDragEnter = x;
|
|
233
|
-
});
|
|
234
|
-
this._onOverSub = this._service.onOver.subscribe(x => {
|
|
235
|
-
this.onOver = x;
|
|
236
|
-
});
|
|
237
|
-
}
|
|
238
|
-
ngAfterViewChecked() {
|
|
239
|
-
this._cdRef.detectChanges();
|
|
240
|
-
}
|
|
241
|
-
ngOnDestroy() {
|
|
242
|
-
[this._headerWidgetsSub, this._contentWidgetsSub, this._footerWidgetsSub,
|
|
243
|
-
this._currentWidgetSub, this._onDraggedSub, this._fixedZoomSub, this._onOverSub,
|
|
244
|
-
this._onDragEnterSub]
|
|
245
|
-
.forEach(s => {
|
|
246
|
-
s.unsubscribe();
|
|
247
|
-
});
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
AjfReportBuilderContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: AjfReportBuilderContent, deps: [{ token: i1.AjfReportBuilderService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
251
|
-
AjfReportBuilderContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: AjfReportBuilderContent, selector: "ajf-report-builder-content", host: { listeners: { "mouseover": "onMouseOver()", "mouseleave": "onMouseLeave()" } }, ngImport: i0, template: "<div\n class=\"ajf-overlay\"\n [ngClass]=\"{'ajf-drag-mode': onDragged, 'ajf-zoom-mode': fixedZoom}\"\n [applyStyles]=\"reportStyles|async\"\n (mouseenter)=\"show = true\"\n (mouseleave)=\"show = false\"\n>\n <div\n class=\"ajf-header\"\n [ngClass]=\"{'ajf-is-on-over': onDragged || show}\"\n [applyStyles]=\"(headerStyles|async)\"\n >\n <mat-list *ngFor=\"let t of headerWidgets; let i = index\">\n <div\n cdkDropList\n class=\"ajf-drop-zone\"\n [ngClass]=\"{'ajf-show': true}\"\n [cdkDropListEnterPredicate]=\"canDropPredicate(['widget','column'])\"\n (cdkDropListDropped)=\"addToList('header', $event, i);\"\n (dragenter)=\"onDragEnterHandler('header', i)\"\n (dragleave)=\"onDragLeaveHandler()\"\n ></div>\n <ajf-report-builder-widgets-row-buttons\n cdkDrag\n [cdkDragData]=\"{widget: t,fromIndex: i,arrayFrom: 'header', dropZones: ['widget','column']}\"\n [style.display]=\"(showActions || onDragged)? 'block' : 'none'\"\n [from]=\"'header'\"\n [widget]=\"t\"\n [position]=\"i\"\n (cdkDragStarted)=\"onDragStartHandler();\"\n (cdkDragEnded)=\"onDragEndHandler()\"\n >\n </ajf-report-builder-widgets-row-buttons>\n <ajf-report-builder-renderer-widget\n [widget]=\"t\"\n [position]=\"i\"\n [section]=\"'header'\"\n (currentWidget)=\"currentWidget\"\n ></ajf-report-builder-renderer-widget>\n </mat-list>\n <div\n cdkDropList\n class=\"ajf-drop-zone-container\"\n [ngClass]=\"{'ajf-show': true}\"\n [cdkDropListEnterPredicate]=\"canDropPredicate(['header','widget','column'])\"\n (cdkDropListDropped)=\"addToList('header', $event)\"\n (dragenter)=\"onDragEnterHandler('header', headerWidgets?.length)\"\n (dragleave)=\"onDragLeaveHandler()\"\n ></div>\n </div>\n <div\n class=\"ajf-content\"\n [ngClass]=\"{'ajf-is-on-over': onDragged || show}\"\n [applyStyles]=\"contentStyles|async\"\n >\n <mat-list *ngFor=\"let t of contentWidgets; let i = index\">\n <div\n cdkDropList\n class=\"ajf-drop-zone\"\n [ngClass]=\"{'ajf-show': true}\"\n [cdkDropListEnterPredicate]=\"canDropPredicate(['widget','column'])\"\n (cdkDropListDropped)=\"addToList('content', $event, i)\"\n (dragenter)=\"onDragEnterHandler('content', i)\"\n (dragleave)=\"onDragLeaveHandler()\"\n ></div>\n <ajf-report-builder-widgets-row-buttons\n cdkDrag\n [cdkDragData]=\"{widget: t, fromIndex: i, arrayFrom: 'content', dropZones: ['widget','column']}\"\n [style.display]=\"showActions ? 'block' : 'none'\"\n [from]=\"'content'\"\n [widget]=\"t\"\n [position]=\"i\"\n (cdkDragStarted)=\"onDragStartHandler()\"\n (cdkDragEnded)=\"onDragEndHandler();\"\n >\n </ajf-report-builder-widgets-row-buttons>\n <ajf-report-builder-renderer-widget\n [widget]=\"t\"\n [position]=\"i\"\n [section]=\"'content'\"\n (currentWidget)=\"currentWidget\"\n ></ajf-report-builder-renderer-widget>\n </mat-list>\n <div\n cdkDropList\n class=\"ajf-drop-zone-container\"\n [ngClass]=\"{'ajf-show': onDragged}\"\n [cdkDropListEnterPredicate]=\"canDropPredicate(['content','widget','column'])\"\n (cdkDropListDropped)=\"addToList('content', $event)\"\n (dragenter)=\"onDragEnterHandler('content', contentWidgets?.length)\"\n (dragleave)=\"onDragLeaveHandler()\"\n >\n <label>{{'Drop here'|transloco}}</label>\n </div>\n </div>\n <div\n class=\"ajf-footer\"\n [ngClass]=\"{'ajf-is-on-over': onDragged || show}\"\n [applyStyles]=\"footerStyles|async\"\n >\n <mat-list *ngFor=\"let t of footerWidgets; let i = index\">\n <div\n cdkDropList\n class=\"ajf-drop-zone\"\n [ngClass]=\"{'ajf-show': true}\"\n [cdkDropListEnterPredicate]=\"canDropPredicate(['widget','column'])\"\n (cdkDropListDropped)=\"addToList('footer', $event, i)\"\n (dragenter)=\"onDragEnterHandler('footer', i)\"\n (dragleave)=\"onDragLeaveHandler()\"\n ></div>\n <ajf-report-builder-widgets-row-buttons\n cdkDrag\n [cdkDragData]=\"{widget: t, fromIndex: i, arrayFrom: 'footer', dropZones: ['widget','column']}\"\n [style.display]=\"showActions ? 'block' : 'none'\"\n [from]=\"'footer'\"\n [widget]=\"t\"\n [position]=\"i\"\n (cdkDragStarted)=\"onDragStartHandler()\"\n (cdkDragEnded)=\"onDragEndHandler()\"\n >\n </ajf-report-builder-widgets-row-buttons>\n <ajf-report-builder-renderer-widget\n [widget]=\"t\"\n [position]=\"i\"\n [section]=\"'footer'\"\n (currentWidget)=\"currentWidget\"\n ></ajf-report-builder-renderer-widget>\n </mat-list>\n <div\n cdkDropList\n class=\"ajf-drop-zone-container\"\n [ngClass]=\"{'ajf-show': onDragged}\"\n [cdkDropListEnterPredicate]=\"canDropPredicate(['footer','widget','column'])\"\n (cdkDropListDropped)=\"addToList('footer', $event)\"\n (dragenter)=\"onDragEnterHandler('footer', headerWidgets?.length)\"\n (dragleave)=\"onDragLeaveHandler()\"\n >\n <label>{{'Drop here'|transloco}}</label>\n </div>\n </div>\n</div>\n", styles: ["ajf-report-builder-content{text-align:center;display:block;margin-bottom:300px}ajf-report-builder-content .ajf-overlay.ajf-drag-mode{max-height:700px;margin-top:50px;background-color:beige}ajf-report-builder-content .ajf-drag-mode{overflow:scroll;zoom:50%}ajf-report-builder-content .ajf-drag-mode .ajf-header,ajf-report-builder-content .ajf-drag-mode .ajf-content,ajf-report-builder-content .ajf-drag-mode .ajf-footer{margin-bottom:20px;border:23px solid rgba(66,134,244,.2)}ajf-report-builder-content .ajf-drag-mode .ajf-header .ajf-drop-zone,ajf-report-builder-content .ajf-drag-mode .ajf-content .ajf-drop-zone,ajf-report-builder-content .ajf-drag-mode .ajf-footer .ajf-drop-zone{width:auto;background-color:rgba(66,134,244,.2);border:23px solid #fff;position:relative;min-height:50px !important;z-index:0;opacity:1}ajf-report-builder-content .ajf-drag-mode .ajf-header .ajf-drop-zone-container,ajf-report-builder-content .ajf-drag-mode .ajf-content .ajf-drop-zone-container,ajf-report-builder-content .ajf-drag-mode .ajf-footer .ajf-drop-zone-container{background-color:rgba(66,134,244,.2) !important;border:23px solid #fff !important}ajf-report-builder-content .ajf-drag-mode .ajf-header,ajf-report-builder-content .ajf-drag-mode .ajf-footer{border:23px solid rgba(255,102,102,.4) !important}ajf-report-builder-content .ajf-drag-mode .ajf-header .ajf-drop-zone-container,ajf-report-builder-content .ajf-drag-mode .ajf-footer .ajf-drop-zone-container{background-color:rgba(255,102,102,.4) !important}ajf-report-builder-content .ajf-drag-mode .ajf-header .ajf-drop-zone,ajf-report-builder-content .ajf-drag-mode .ajf-footer .ajf-drop-zone{background-color:rgba(255,102,102,.4) !important}ajf-report-builder-content .ajf-drag-mode .ajf-drop-zone-container{background-color:#000;border:16px solid #fff;position:relative;opacity:0;z-index:0;min-height:50px !important;display:none !important}ajf-report-builder-content .ajf-zoom-mode{zoom:50%}ajf-report-builder-content .ajf-header,ajf-report-builder-content .ajf-content,ajf-report-builder-content .ajf-footer{height:100%;min-height:50px;position:relative;text-align:center;display:block}ajf-report-builder-content .ajf-header .mat-list,ajf-report-builder-content .ajf-content .mat-list,ajf-report-builder-content .ajf-footer .mat-list{padding:0}ajf-report-builder-content .ajf-header .ajf-zoom:hover,ajf-report-builder-content .ajf-content .ajf-zoom:hover,ajf-report-builder-content .ajf-footer .ajf-zoom:hover{padding-bottom:100px;overflow-y:scroll}ajf-report-builder-content .ajf-content:hover{background-color:rgba(66,134,244,.2) !important}ajf-report-builder-content .ajf-header:hover,ajf-report-builder-content .ajf-footer:hover{background-color:rgba(255,102,102,.4)}ajf-report-builder-content .ajf-header:hover,ajf-report-builder-content .ajf-content:hover,ajf-report-builder-content .ajf-footer:hover,ajf-report-builder-content .ajf-is-on-over{border:3px dotted #3a7999}ajf-report-builder-content .ajf-header:hover label,ajf-report-builder-content .ajf-content:hover label,ajf-report-builder-content .ajf-footer:hover label,ajf-report-builder-content .ajf-is-on-over label{visibility:visible !important;opacity:.4;display:block !important}ajf-report-builder-content .ajf-header:hover .ajf-drop-zone-container,ajf-report-builder-content .ajf-content:hover .ajf-drop-zone-container,ajf-report-builder-content .ajf-footer:hover .ajf-drop-zone-container,ajf-report-builder-content .ajf-is-on-over .ajf-drop-zone-container{display:block !important}ajf-report-builder-content .ajf-header:hover mat-list button,ajf-report-builder-content .ajf-content:hover mat-list button,ajf-report-builder-content .ajf-footer:hover mat-list button,ajf-report-builder-content .ajf-is-on-over mat-list button{display:inline}ajf-report-builder-content .ajf-my-content{width:100%;white-space:nowrap;overflow-y:auto}ajf-report-builder-content .ajf-show,ajf-report-builder-content .ajf-on-drag-over{opacity:1 !important;z-index:10}ajf-report-builder-content mat-list{position:relative;display:block}\n"], components: [{ type: i2.MatList, selector: "mat-list, mat-action-list", inputs: ["disableRipple", "disabled"], exportAs: ["matList"] }, { type: i3.AjfReportBuilderWidgetsRowButtons, selector: "ajf-report-builder-widgets-row-buttons", inputs: ["from", "fromWidget", "position", "widget", "child", "isOver"] }, { type: i4.AjfReportBuilderRendererWidget, selector: "ajf-report-builder-renderer-widget", inputs: ["widget", "position", "section"] }], directives: [{ type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i6.ApplyStylesDirective, selector: "[applyStyles]", inputs: ["applyStyles"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { type: i7.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }], pipes: { "async": i5.AsyncPipe, "transloco": i8.TranslocoPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
252
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: AjfReportBuilderContent, decorators: [{
|
|
253
|
-
type: Component,
|
|
254
|
-
args: [{ selector: 'ajf-report-builder-content', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { '(mouseover)': 'onMouseOver()', '(mouseleave)': 'onMouseLeave()' }, template: "<div\n class=\"ajf-overlay\"\n [ngClass]=\"{'ajf-drag-mode': onDragged, 'ajf-zoom-mode': fixedZoom}\"\n [applyStyles]=\"reportStyles|async\"\n (mouseenter)=\"show = true\"\n (mouseleave)=\"show = false\"\n>\n <div\n class=\"ajf-header\"\n [ngClass]=\"{'ajf-is-on-over': onDragged || show}\"\n [applyStyles]=\"(headerStyles|async)\"\n >\n <mat-list *ngFor=\"let t of headerWidgets; let i = index\">\n <div\n cdkDropList\n class=\"ajf-drop-zone\"\n [ngClass]=\"{'ajf-show': true}\"\n [cdkDropListEnterPredicate]=\"canDropPredicate(['widget','column'])\"\n (cdkDropListDropped)=\"addToList('header', $event, i);\"\n (dragenter)=\"onDragEnterHandler('header', i)\"\n (dragleave)=\"onDragLeaveHandler()\"\n ></div>\n <ajf-report-builder-widgets-row-buttons\n cdkDrag\n [cdkDragData]=\"{widget: t,fromIndex: i,arrayFrom: 'header', dropZones: ['widget','column']}\"\n [style.display]=\"(showActions || onDragged)? 'block' : 'none'\"\n [from]=\"'header'\"\n [widget]=\"t\"\n [position]=\"i\"\n (cdkDragStarted)=\"onDragStartHandler();\"\n (cdkDragEnded)=\"onDragEndHandler()\"\n >\n </ajf-report-builder-widgets-row-buttons>\n <ajf-report-builder-renderer-widget\n [widget]=\"t\"\n [position]=\"i\"\n [section]=\"'header'\"\n (currentWidget)=\"currentWidget\"\n ></ajf-report-builder-renderer-widget>\n </mat-list>\n <div\n cdkDropList\n class=\"ajf-drop-zone-container\"\n [ngClass]=\"{'ajf-show': true}\"\n [cdkDropListEnterPredicate]=\"canDropPredicate(['header','widget','column'])\"\n (cdkDropListDropped)=\"addToList('header', $event)\"\n (dragenter)=\"onDragEnterHandler('header', headerWidgets?.length)\"\n (dragleave)=\"onDragLeaveHandler()\"\n ></div>\n </div>\n <div\n class=\"ajf-content\"\n [ngClass]=\"{'ajf-is-on-over': onDragged || show}\"\n [applyStyles]=\"contentStyles|async\"\n >\n <mat-list *ngFor=\"let t of contentWidgets; let i = index\">\n <div\n cdkDropList\n class=\"ajf-drop-zone\"\n [ngClass]=\"{'ajf-show': true}\"\n [cdkDropListEnterPredicate]=\"canDropPredicate(['widget','column'])\"\n (cdkDropListDropped)=\"addToList('content', $event, i)\"\n (dragenter)=\"onDragEnterHandler('content', i)\"\n (dragleave)=\"onDragLeaveHandler()\"\n ></div>\n <ajf-report-builder-widgets-row-buttons\n cdkDrag\n [cdkDragData]=\"{widget: t, fromIndex: i, arrayFrom: 'content', dropZones: ['widget','column']}\"\n [style.display]=\"showActions ? 'block' : 'none'\"\n [from]=\"'content'\"\n [widget]=\"t\"\n [position]=\"i\"\n (cdkDragStarted)=\"onDragStartHandler()\"\n (cdkDragEnded)=\"onDragEndHandler();\"\n >\n </ajf-report-builder-widgets-row-buttons>\n <ajf-report-builder-renderer-widget\n [widget]=\"t\"\n [position]=\"i\"\n [section]=\"'content'\"\n (currentWidget)=\"currentWidget\"\n ></ajf-report-builder-renderer-widget>\n </mat-list>\n <div\n cdkDropList\n class=\"ajf-drop-zone-container\"\n [ngClass]=\"{'ajf-show': onDragged}\"\n [cdkDropListEnterPredicate]=\"canDropPredicate(['content','widget','column'])\"\n (cdkDropListDropped)=\"addToList('content', $event)\"\n (dragenter)=\"onDragEnterHandler('content', contentWidgets?.length)\"\n (dragleave)=\"onDragLeaveHandler()\"\n >\n <label>{{'Drop here'|transloco}}</label>\n </div>\n </div>\n <div\n class=\"ajf-footer\"\n [ngClass]=\"{'ajf-is-on-over': onDragged || show}\"\n [applyStyles]=\"footerStyles|async\"\n >\n <mat-list *ngFor=\"let t of footerWidgets; let i = index\">\n <div\n cdkDropList\n class=\"ajf-drop-zone\"\n [ngClass]=\"{'ajf-show': true}\"\n [cdkDropListEnterPredicate]=\"canDropPredicate(['widget','column'])\"\n (cdkDropListDropped)=\"addToList('footer', $event, i)\"\n (dragenter)=\"onDragEnterHandler('footer', i)\"\n (dragleave)=\"onDragLeaveHandler()\"\n ></div>\n <ajf-report-builder-widgets-row-buttons\n cdkDrag\n [cdkDragData]=\"{widget: t, fromIndex: i, arrayFrom: 'footer', dropZones: ['widget','column']}\"\n [style.display]=\"showActions ? 'block' : 'none'\"\n [from]=\"'footer'\"\n [widget]=\"t\"\n [position]=\"i\"\n (cdkDragStarted)=\"onDragStartHandler()\"\n (cdkDragEnded)=\"onDragEndHandler()\"\n >\n </ajf-report-builder-widgets-row-buttons>\n <ajf-report-builder-renderer-widget\n [widget]=\"t\"\n [position]=\"i\"\n [section]=\"'footer'\"\n (currentWidget)=\"currentWidget\"\n ></ajf-report-builder-renderer-widget>\n </mat-list>\n <div\n cdkDropList\n class=\"ajf-drop-zone-container\"\n [ngClass]=\"{'ajf-show': onDragged}\"\n [cdkDropListEnterPredicate]=\"canDropPredicate(['footer','widget','column'])\"\n (cdkDropListDropped)=\"addToList('footer', $event)\"\n (dragenter)=\"onDragEnterHandler('footer', headerWidgets?.length)\"\n (dragleave)=\"onDragLeaveHandler()\"\n >\n <label>{{'Drop here'|transloco}}</label>\n </div>\n </div>\n</div>\n", styles: ["ajf-report-builder-content{text-align:center;display:block;margin-bottom:300px}ajf-report-builder-content .ajf-overlay.ajf-drag-mode{max-height:700px;margin-top:50px;background-color:beige}ajf-report-builder-content .ajf-drag-mode{overflow:scroll;zoom:50%}ajf-report-builder-content .ajf-drag-mode .ajf-header,ajf-report-builder-content .ajf-drag-mode .ajf-content,ajf-report-builder-content .ajf-drag-mode .ajf-footer{margin-bottom:20px;border:23px solid rgba(66,134,244,.2)}ajf-report-builder-content .ajf-drag-mode .ajf-header .ajf-drop-zone,ajf-report-builder-content .ajf-drag-mode .ajf-content .ajf-drop-zone,ajf-report-builder-content .ajf-drag-mode .ajf-footer .ajf-drop-zone{width:auto;background-color:rgba(66,134,244,.2);border:23px solid #fff;position:relative;min-height:50px !important;z-index:0;opacity:1}ajf-report-builder-content .ajf-drag-mode .ajf-header .ajf-drop-zone-container,ajf-report-builder-content .ajf-drag-mode .ajf-content .ajf-drop-zone-container,ajf-report-builder-content .ajf-drag-mode .ajf-footer .ajf-drop-zone-container{background-color:rgba(66,134,244,.2) !important;border:23px solid #fff !important}ajf-report-builder-content .ajf-drag-mode .ajf-header,ajf-report-builder-content .ajf-drag-mode .ajf-footer{border:23px solid rgba(255,102,102,.4) !important}ajf-report-builder-content .ajf-drag-mode .ajf-header .ajf-drop-zone-container,ajf-report-builder-content .ajf-drag-mode .ajf-footer .ajf-drop-zone-container{background-color:rgba(255,102,102,.4) !important}ajf-report-builder-content .ajf-drag-mode .ajf-header .ajf-drop-zone,ajf-report-builder-content .ajf-drag-mode .ajf-footer .ajf-drop-zone{background-color:rgba(255,102,102,.4) !important}ajf-report-builder-content .ajf-drag-mode .ajf-drop-zone-container{background-color:#000;border:16px solid #fff;position:relative;opacity:0;z-index:0;min-height:50px !important;display:none !important}ajf-report-builder-content .ajf-zoom-mode{zoom:50%}ajf-report-builder-content .ajf-header,ajf-report-builder-content .ajf-content,ajf-report-builder-content .ajf-footer{height:100%;min-height:50px;position:relative;text-align:center;display:block}ajf-report-builder-content .ajf-header .mat-list,ajf-report-builder-content .ajf-content .mat-list,ajf-report-builder-content .ajf-footer .mat-list{padding:0}ajf-report-builder-content .ajf-header .ajf-zoom:hover,ajf-report-builder-content .ajf-content .ajf-zoom:hover,ajf-report-builder-content .ajf-footer .ajf-zoom:hover{padding-bottom:100px;overflow-y:scroll}ajf-report-builder-content .ajf-content:hover{background-color:rgba(66,134,244,.2) !important}ajf-report-builder-content .ajf-header:hover,ajf-report-builder-content .ajf-footer:hover{background-color:rgba(255,102,102,.4)}ajf-report-builder-content .ajf-header:hover,ajf-report-builder-content .ajf-content:hover,ajf-report-builder-content .ajf-footer:hover,ajf-report-builder-content .ajf-is-on-over{border:3px dotted #3a7999}ajf-report-builder-content .ajf-header:hover label,ajf-report-builder-content .ajf-content:hover label,ajf-report-builder-content .ajf-footer:hover label,ajf-report-builder-content .ajf-is-on-over label{visibility:visible !important;opacity:.4;display:block !important}ajf-report-builder-content .ajf-header:hover .ajf-drop-zone-container,ajf-report-builder-content .ajf-content:hover .ajf-drop-zone-container,ajf-report-builder-content .ajf-footer:hover .ajf-drop-zone-container,ajf-report-builder-content .ajf-is-on-over .ajf-drop-zone-container{display:block !important}ajf-report-builder-content .ajf-header:hover mat-list button,ajf-report-builder-content .ajf-content:hover mat-list button,ajf-report-builder-content .ajf-footer:hover mat-list button,ajf-report-builder-content .ajf-is-on-over mat-list button{display:inline}ajf-report-builder-content .ajf-my-content{width:100%;white-space:nowrap;overflow-y:auto}ajf-report-builder-content .ajf-show,ajf-report-builder-content .ajf-on-drag-over{opacity:1 !important;z-index:10}ajf-report-builder-content mat-list{position:relative;display:block}\n"] }]
|
|
255
|
-
}], ctorParameters: function () { return [{ type: i1.AjfReportBuilderService }, { type: i0.ChangeDetectorRef }]; } });
|
|
256
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC9yZXBvcnQtYnVpbGRlci9jb250ZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21hdGVyaWFsL3JlcG9ydC1idWlsZGVyL2NvbnRlbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFFSCxPQUFPLEVBQXVCLGFBQWEsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ3RFLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QyxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBR1QsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBYSxZQUFZLEVBQUUsS0FBSyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBR3JELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDOzs7Ozs7Ozs7O0FBRWpFOzs7O0dBSUc7QUFTSCxNQUFNLE9BQU8sdUJBQXVCO0lBOEZsQyxZQUFvQixRQUFpQyxFQUFVLE1BQXlCO1FBQXBFLGFBQVEsR0FBUixRQUFRLENBQXlCO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBbUI7UUF0RXhGLDJDQUEyQztRQUMzQyxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBR2xCOzs7O1dBSUc7UUFDSCxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBRWxCLHNEQUFzRDtRQUN0RCxnQkFBVyxHQUFRLEVBQUUsQ0FBQztRQUd0QixTQUFJLEdBQUcsS0FBSyxDQUFDO1FBR2IsdURBQXVEO1FBQ3ZELGtCQUFhLEdBQWdCLEVBQUUsQ0FBQztRQVFoQyx3REFBd0Q7UUFDeEQsbUJBQWMsR0FBZ0IsRUFBRSxDQUFDO1FBU2pDLHVEQUF1RDtRQUN2RCxrQkFBYSxHQUFnQixFQUFFLENBQUM7UUFHaEMsV0FB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LENBQUMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtZQUN2RSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQy9FLElBQUksQ0FBQyxlQUFlLENBQUM7YUFDakIsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ1gsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUFDO0lBQ1QsQ0FBQzs7NEhBOVBVLHVCQUF1QjtnSEFBdkIsdUJBQXVCLHlKQ3BEcEMsMnZLQTZJQTttR0R6RmEsdUJBQXVCO2tCQVJuQyxTQUFTOytCQUNFLDRCQUE0QixpQkFHdkIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxRQUN6QyxFQUFDLGFBQWEsRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLGdCQUFnQixFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IChDKSBHbnVjb29wIHNvYy4gY29vcC5cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vclxuICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzXG4gKiBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSxcbiAqIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZSBHTlUgQWZmZXJvXG4gKiBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikuXG4gKiBJZiBub3QsIHNlZSBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvLlxuICpcbiAqL1xuXG5pbXBvcnQge0FqZlN0eWxlcywgQWpmV2lkZ2V0LCBBamZXaWRnZXRUeXBlfSBmcm9tICdAYWpmL2NvcmUvcmVwb3J0cyc7XG5pbXBvcnQge2RlZXBDb3B5fSBmcm9tICdAYWpmL2NvcmUvdXRpbHMnO1xuaW1wb3J0IHtDZGtEcmFnLCBDZGtEcmFnRHJvcH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XG5pbXBvcnQge1xuICBBZnRlclZpZXdDaGVja2VkLFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24sIHRpbWVyfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtBamZSZXBvcnRCdWlsZGVyRHJhZ0RhdGF9IGZyb20gJy4vcmVwb3J0LWJ1aWxkZXItZHJhZy1kYXRhJztcbmltcG9ydCB7QWpmUmVwb3J0QnVpbGRlclNlcnZpY2V9IGZyb20gJy4vcmVwb3J0LWJ1aWxkZXItc2VydmljZSc7XG5cbi8qKlxuICogIG1hbmFnZSB0aGUgY29udGVudCBwYWdlXG4gKlxuICogQGV4cG9ydFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhamYtcmVwb3J0LWJ1aWxkZXItY29udGVudCcsXG4gIHRlbXBsYXRlVXJsOiAnY29udGVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ2NvbnRlbnQuY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7Jyhtb3VzZW92ZXIpJzogJ29uTW91c2VPdmVyKCknLCAnKG1vdXNlbGVhdmUpJzogJ29uTW91c2VMZWF2ZSgpJ31cbn0pXG5leHBvcnQgY2xhc3MgQWpmUmVwb3J0QnVpbGRlckNvbnRlbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0NoZWNrZWQsIE9uRGVzdHJveSB7XG4gIG9uTW91c2VPdmVyKCk6IHZvaWQge1xuICAgIHRoaXMuc2hvd0FjdGlvbnMgPSB0cnVlO1xuICAgIHRoaXMuX3NlcnZpY2Uub3ZlclN0YXJ0ZWQoKTtcbiAgfVxuXG4gIG9uTW91c2VMZWF2ZSgpOiB2b2lkIHtcbiAgICB0aGlzLnNob3dBY3Rpb25zID0gZmFsc2U7XG4gICAgdGhpcy5fc2VydmljZS5vdmVyRW5kZWQoKTtcbiAgfVxuXG4gIGNhbkRyb3BQcmVkaWNhdGUoZHJvcFpvbmVzOiBzdHJpbmdbXSk6IChpdGVtOiBDZGtEcmFnPEFqZlJlcG9ydEJ1aWxkZXJEcmFnRGF0YT4pID0+IGJvb2xlYW4ge1xuICAgIHJldHVybiBpdGVtID0+IHtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaXRlbS5kYXRhLmRyb3Bab25lcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBpZiAoZHJvcFpvbmVzLmluZGV4T2YoaXRlbS5kYXRhLmRyb3Bab25lc1tpXSkgPiAtMSkge1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfTtcbiAgfVxuXG4gIHJlcG9ydFN0eWxlczogT2JzZXJ2YWJsZTxBamZTdHlsZXM+O1xuXG4gIC8vIHRoaXMgYm9vbGVhbiBzaWduIGlmIGlzIGRyYWdnZWQgYSB3aWRnZXRcbiAgb25EcmFnZ2VkID0gZmFsc2U7XG5cblxuICAvKipcbiAgICogIG9ic2VydmUgdGhlIHN0YXR1cyBvZiB0aGUgZml4ZWQgem9vbVxuICAgKlxuICAgKiBAbWVtYmVyT2YgQWpmUmVwb3J0QnVpbGRlckNvbnRlbnRcbiAgICovXG4gIGZpeGVkWm9vbSA9IGZhbHNlO1xuXG4gIC8vIHRoaXMgYm9vbGVhbiBzaWduIGlmIHdpZGdldCBpcyBpbiBkcmFnIGVudGVyIHN0YXR1c1xuICBvbkRyYWdFbnRlcjogYW55ID0ge307XG5cblxuICBzaG93ID0gZmFsc2U7XG5cblxuICAvLyB0aGlzIGFycmF5IGNvbnRhaW5zIGFsbCB3aWRnZXQgbG9jYXRlIGluIGhlYWRlciB6b25lXG4gIGhlYWRlcldpZGdldHM6IEFqZldpZGdldFtdID0gW107XG4gIC8qKlxuICAgKiBvYnNlcnZlIHRoZSBjc3Mgc3R5bGUgb2YgaGVhZGVyXG4gICAqXG4gICAqIEBtZW1iZXJPZiBBamZSZXBvcnRCdWlsZGVyQ29udGVudFxuICAgKi9cbiAgaGVhZGVyU3R5bGVzOiBPYnNlcnZhYmxlPEFqZlN0eWxlcz47XG5cbiAgLy8gdGhpcyBhcnJheSBjb250YWlucyBhbGwgd2lkZ2V0IGxvY2F0ZSBpbiBjb250ZW50IHpvbmVcbiAgY29udGVudFdpZGdldHM6IEFqZldpZGdldFtdID0gW107XG5cbiAgLyoqXG4gICAqIG9ic2VydmUgdGhlIGNzcyBzdHlsZSBvZiBjb250ZW50XG4gICAqXG4gICAqIEBtZW1iZXJPZiBBamZSZXBvcnRCdWlsZGVyQ29udGVudFxuICAgKi9cbiAgY29udGVudFN0eWxlczogT2JzZXJ2YWJsZTxBamZTdHlsZXM+O1xuXG4gIC8vIHRoaXMgYXJyYXkgY29udGFpbnMgYWxsIHdpZGdldCBsb2NhdGUgaW4gZm9vdGVyIHpvbmVcbiAgZm9vdGVyV2lkZ2V0czogQWpmV2lkZ2V0W10gPSBbXTtcblxuXG4gIG9uT3ZlcjogYm9vbGVhbiA9IGZhbHNlO1xuICAvKipcbiAgICogb2JzZXJ2ZSB0aGUgY3NzIHN0eWxlIG9mIGZvb3RlclxuICAgKlxuICAgKiBAbWVtYmVyT2YgQWpmUmVwb3J0QnVpbGRlckNvbnRlbnRcbiAgICovXG4gIGZvb3RlclN0eWxlczogT2JzZXJ2YWJsZTxBamZTdHlsZXM+O1xuXG5cbiAgLy8gdGhpcyBpcyB0aGUgY3VycmVudCB3aWRnZXRcbiAgY3VycmVudFdpZGdldDogQWpmV2lkZ2V0fG51bGwgPSBudWxsO1xuXG5cbiAgLyoqXG4gICAqIGlmIHRydWUgbW91c2UgZXZlbnQgaXMgb24gZHJhZ2dlZCBzdGF0dXNcbiAgICpcbiAgICogQG1lbWJlck9mIEFqZlJlcG9ydEJ1aWxkZXJDb250ZW50XG4gICAqL1xuICBzaG93QWN0aW9ucyA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX29uRHJhZ2dlZFN1YjogU3Vic2NyaXB0aW9uID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuICBwcml2YXRlIF9maXhlZFpvb21TdWI6IFN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcbiAgcHJpdmF0ZSBfb25EcmFnRW50ZXJTdWI6IFN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcbiAgcHJpdmF0ZSBfaGVhZGVyV2lkZ2V0c1N1YjogU3Vic2NyaXB0aW9uID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuICBwcml2YXRlIF9jb250ZW50V2lkZ2V0c1N1YjogU3Vic2NyaXB0aW9uID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuICBwcml2YXRlIF9mb290ZXJXaWRnZXRzU3ViOiBTdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb24uRU1QVFk7XG4gIHByaXZhdGUgX29uT3ZlclN1YjogU3Vic2NyaXB0aW9uID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuICBwcml2YXRlIF9jdXJyZW50V2lkZ2V0U3ViOiBTdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb24uRU1QVFk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfc2VydmljZTogQWpmUmVwb3J0QnVpbGRlclNlcnZpY2UsIHByaXZhdGUgX2NkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHRoaXMuaGVhZGVyU3R5bGVzID0gdGhpcy5fc2VydmljZS5oZWFkZXJTdHlsZXM7XG4gICAgdGhpcy5jb250ZW50U3R5bGVzID0gdGhpcy5fc2VydmljZS5jb250ZW50U3R5bGVzO1xuICAgIHRoaXMuZm9vdGVyU3R5bGVzID0gdGhpcy5fc2VydmljZS5mb290ZXJTdHlsZXM7XG4gIH1cblxuICBpc0xheW91dCh3aWRnZXQ6IEFqZldpZGdldCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB3aWRnZXQud2lkZ2V0VHlwZSA9PT0gQWpmV2lkZ2V0VHlwZS5MYXlvdXQ7XG4gIH1cblxuICAvKipcbiAgICogIHNpZ24gdGhlIHN0YXJ0IG9mIG1vdXNlIGRyYWcgd2l0aCAyMDAgbXMgb2YgZGVsYXlcbiAgICpcbiAgICogQG1lbWJlck9mIEFqZlJlcG9ydEJ1aWxkZXJDb250ZW50XG4gICAqL1xuICBvbkRyYWdTdGFydEhhbmRsZXIoKTogdm9pZCB7XG4gICAgbGV0IHMgPSB0aW1lcigyMDApLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBpZiAocyAhPSBudWxsKSB7XG4gICAgICAgIHMudW5zdWJzY3JpYmUoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuX3NlcnZpY2UuZHJhZ1N0YXJ0ZWQoKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBzaWduIHRoZSBlbmQgb2YgbW91c2UgZHJhZ1xuICAgKlxuICAgKiBAbWVtYmVyT2YgQWpmUmVwb3J0QnVpbGRlckNvbnRlbnRcbiAgICovXG4gIG9uRHJhZ0VuZEhhbmRsZXIoKTogdm9pZCB7XG4gICAgdGhpcy5fc2VydmljZS5kcmFnRW5kZWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgc2lnbiB0aGUgZW50ZXIgb2YgbW91c2UgZHJhZ1xuICAgKlxuICAgKiBAbWVtYmVyT2YgQWpmUmVwb3J0QnVpbGRlckNvbnRlbnRcbiAgICovXG4gIG9uRHJhZ0VudGVySGFuZGxlcihhcnJheTogc3RyaW5nLCBpbmRleDogbnVtYmVyfHVuZGVmaW5lZCk6IHZvaWQge1xuICAgIGlmIChpbmRleCA9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3NlcnZpY2UuZHJhZ0VudGVyKGFycmF5LCBpbmRleCk7XG4gIH1cblxuICAvKipcbiAgICogc2lnbiB0aGUgbGVhdmUgb2YgbW91c2UgZHJhZ1xuICAgKlxuICAgKiBAbWVtYmVyT2YgQWpmUmVwb3J0QnVpbGRlckNvbnRlbnRcbiAgICovXG4gIG9uRHJhZ0xlYXZlSGFuZGxlcigpOiB2b2lkIHtcbiAgICB0aGlzLl9zZXJ2aWNlLmRyYWdMZWF2ZSgpO1xuICB9XG5cblxuICAvKipcbiAgICogIHJldHVybiB0cnVlIGlmIGFycmF5IGFuZCBpbmRleCBpcyA9PT0gd2l0aCBhcnJheSBhbmQgaW5kZXggb2Ygb25EcmFnRW50ZXJcbiAgICpcbiAgICogQHBhcmFtIGFycmF5XG4gICAqIEBwYXJhbSBpbmRleFxuICAgKlxuICAgKiBAbWVtYmVyT2YgQWpmUmVwb3J0QnVpbGRlckNvbnRlbnRcbiAgICovXG4gIG9uRHJhZ0VudGVyQ2hlY2soYXJyYXk6IHN0cmluZywgaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIGlmICgoYXJyYXkgPT09IHRoaXMub25EcmFnRW50ZXIuYXJyYXkpICYmXG4gICAgICAgICgoaW5kZXggPT09IHRoaXMub25EcmFnRW50ZXIuaW5kZXgpIHx8IChpbmRleCA9PT0gLTEpKSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogcmVtb3ZlIHdpZGdldCBlbGVtZW50IGZyb20gdHlwZSBhcnJheSBpbiBpZHggcG9zaXRpb25cbiAgICpcbiAgICogQHBhcmFtIHR5cGUgY2FuIGJlIGhlYWRlciBjb250ZW50IG9yIGZvb3RlclxuICAgKiBAcGFyYW0gaWR4XG4gICAqXG4gICAqIEBtZW1iZXJPZiBBamZSZXBvcnRCdWlsZGVyQ29udGVudFxuICAgKi9cbiAgcmVtb3ZlKHR5cGU6IHN0cmluZywgaWR4OiBudW1iZXIpIHtcbiAgICB0aGlzLl9zZXJ2aWNlLnJlbW92ZSh0eXBlLCBpZHgpO1xuICB9XG5cbiAgLyoqXG4gICAqIGFkZCB3aWRnZXQgZWxlbWVudCBpbnRvIHR5cGUgYXJyYXkgaW4gaWR4IHBvc2l0aW9uXG4gICAqXG4gICAqIEBwYXJhbSB0eXBlXG4gICAqIEBwYXJhbSBldmVudFxuICAgKlxuICAgKiBAbWVtYmVyT2YgQWpmUmVwb3J0QnVpbGRlckNvbnRlbnRcbiAgICovXG4gIGFkZFRvTGlzdChhcnJheVRvOiBzdHJpbmcsIGV2ZW50OiBDZGtEcmFnRHJvcDxBamZSZXBvcnRCdWlsZGVyRHJhZ0RhdGE+LCB0bz86IG51bWJlcikge1xuICAgIHRoaXMub25EcmFnRW5kSGFuZGxlcigpO1xuICAgIHRoaXMuX3NlcnZpY2Uuc2V0T3JpZ2luKGFycmF5VG8pO1xuICAgIGNvbnN0IGl0ZW1EYXRhID0gZXZlbnQuaXRlbS5kYXRhIGFzIEFqZlJlcG9ydEJ1aWxkZXJEcmFnRGF0YTtcbiAgICBpZiAoaXRlbURhdGEuZnJvbUNvbHVtbiAhPSBudWxsKSB7XG4gICAgICB0aGlzLl9zZXJ2aWNlLnJlbW92ZVdpZGdldFRvQ29sdW1uKGl0ZW1EYXRhLmZyb21Db2x1bW4sIGl0ZW1EYXRhLmZyb21JbmRleCEpO1xuICAgICAgdGhpcy5jdXJyZW50V2lkZ2V0ID0gaXRlbURhdGEud2lkZ2V0ITtcbiAgICB9IGVsc2UgaWYgKGl0ZW1EYXRhLndpZGdldCAhPSBudWxsKSB7XG4gICAgICB0aGlzLnJlbW92ZShpdGVtRGF0YS5hcnJheUZyb20hLCBpdGVtRGF0YS5mcm9tISk7XG4gICAgICB0aGlzLmN1cnJlbnRXaWRnZXQgPSBpdGVtRGF0YS53aWRnZXQ7XG4gICAgfSBlbHNlIGlmIChpdGVtRGF0YS5qc29uICE9IG51bGwgJiYgaXRlbURhdGEuanNvbiAhPT0gJycpIHtcbiAgICAgIHRoaXMuY3VycmVudFdpZGdldCA9IGRlZXBDb3B5KGl0ZW1EYXRhLmpzb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZXQgb2JqID0geyd3aWRnZXRUeXBlJzogKEFqZldpZGdldFR5cGUgYXMgYW55KVtpdGVtRGF0YS53aWRnZXRUeXBlIV19O1xuICAgICAgdGhpcy5jdXJyZW50V2lkZ2V0ID0gZGVlcENvcHkob2JqKTtcbiAgICB9XG4gICAgdGhpcy5vbkRyYWdFbmRIYW5kbGVyKCk7XG4gICAgaWYgKHRoaXMuY3VycmVudFdpZGdldCAhPSBudWxsKSB7XG4gICAgICBzd2l0Y2ggKGFycmF5VG8pIHtcbiAgICAgICAgY2FzZSAnaGVhZGVyJzpcbiAgICAgICAgICB0aGlzLl9zZXJ2aWNlLmFkZEhlYWRlcldpZGdldCh0aGlzLmN1cnJlbnRXaWRnZXQsIHRvKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnY29udGVudCc6XG4gICAgICAgICAgdGhpcy5fc2VydmljZS5hZGRDb250ZW50V2lkZ2V0KHRoaXMuY3VycmVudFdpZGdldCwgdG8pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdmb290ZXInOlxuICAgICAgICAgIHRoaXMuX3NlcnZpY2UuYWRkZm9vdGVyV2lkZ2V0KHRoaXMuY3VycmVudFdpZGdldCwgdG8pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLm9uRHJhZ0xlYXZlSGFuZGxlcigpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5faGVhZGVyV2lkZ2V0c1N1YiA9IHRoaXMuX3NlcnZpY2UuaGVhZGVyV2lkZ2V0cy5zdWJzY3JpYmUoeCA9PiB7XG4gICAgICB0aGlzLmhlYWRlcldpZGdldHMgPSB4LndpZGdldHM7XG4gICAgfSk7XG4gICAgdGhpcy5fY29udGVudFdpZGdldHNTdWIgPSB0aGlzLl9zZXJ2aWNlLmNvbnRlbnRXaWRnZXRzLnN1YnNjcmliZSh4ID0+IHtcbiAgICAgIHRoaXMuY29udGVudFdpZGdldHMgPSB4LndpZGdldHM7XG4gICAgfSk7XG4gICAgdGhpcy5fZm9vdGVyV2lkZ2V0c1N1YiA9IHRoaXMuX3NlcnZpY2UuZm9vdGVyV2lkZ2V0cy5zdWJzY3JpYmUoeCA9PiB7XG4gICAgICB0aGlzLmZvb3RlcldpZGdldHMgPSB4LndpZGdldHM7XG4gICAgfSk7XG4gICAgdGhpcy5fb25EcmFnZ2VkU3ViID0gdGhpcy5fc2VydmljZS5vbkRyYWdnZWQuc3Vic2NyaWJlKHggPT4ge1xuICAgICAgdGhpcy5vbkRyYWdnZWQgPSB4O1xuICAgIH0pO1xuICAgIHRoaXMuX2ZpeGVkWm9vbVN1YiA9IHRoaXMuX3NlcnZpY2UuZml4ZWRab29tLnN1YnNjcmliZShib29sID0+IHtcbiAgICAgIHRoaXMuZml4ZWRab29tID0gYm9vbDtcbiAgICB9KTtcbiAgICB0aGlzLl9vbkRyYWdFbnRlclN1YiA9IHRoaXMuX3NlcnZpY2Uub25EcmFnRW50ZXIuc3Vic2NyaWJlKHggPT4ge1xuICAgICAgdGhpcy5vbkRyYWdFbnRlciA9IHg7XG4gICAgfSk7XG4gICAgdGhpcy5fb25PdmVyU3ViID0gdGhpcy5fc2VydmljZS5vbk92ZXIuc3Vic2NyaWJlKHggPT4ge1xuICAgICAgdGhpcy5vbk92ZXIgPSB4O1xuICAgIH0pO1xuICB9XG5cbiAgbmdBZnRlclZpZXdDaGVja2VkKCkge1xuICAgIHRoaXMuX2NkUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIFt0aGlzLl9oZWFkZXJXaWRnZXRzU3ViLCB0aGlzLl9jb250ZW50V2lkZ2V0c1N1YiwgdGhpcy5fZm9vdGVyV2lkZ2V0c1N1YixcbiAgICAgdGhpcy5fY3VycmVudFdpZGdldFN1YiwgdGhpcy5fb25EcmFnZ2VkU3ViLCB0aGlzLl9maXhlZFpvb21TdWIsIHRoaXMuX29uT3ZlclN1YixcbiAgICAgdGhpcy5fb25EcmFnRW50ZXJTdWJdXG4gICAgICAgIC5mb3JFYWNoKHMgPT4ge1xuICAgICAgICAgIHMudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfSk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJhamYtb3ZlcmxheVwiXG4gIFtuZ0NsYXNzXT1cInsnYWpmLWRyYWctbW9kZSc6IG9uRHJhZ2dlZCwgJ2FqZi16b29tLW1vZGUnOiBmaXhlZFpvb219XCJcbiAgW2FwcGx5U3R5bGVzXT1cInJlcG9ydFN0eWxlc3xhc3luY1wiXG4gIChtb3VzZWVudGVyKT1cInNob3cgPSB0cnVlXCJcbiAgKG1vdXNlbGVhdmUpPVwic2hvdyA9IGZhbHNlXCJcbj5cbiAgPGRpdlxuICAgIGNsYXNzPVwiYWpmLWhlYWRlclwiXG4gICAgW25nQ2xhc3NdPVwieydhamYtaXMtb24tb3Zlcic6IG9uRHJhZ2dlZCB8fCBzaG93fVwiXG4gICAgW2FwcGx5U3R5bGVzXT1cIihoZWFkZXJTdHlsZXN8YXN5bmMpXCJcbiAgPlxuICAgIDxtYXQtbGlzdCAqbmdGb3I9XCJsZXQgdCBvZiBoZWFkZXJXaWRnZXRzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNka0Ryb3BMaXN0XG4gICAgICAgIGNsYXNzPVwiYWpmLWRyb3Atem9uZVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsnYWpmLXNob3cnOiB0cnVlfVwiXG4gICAgICAgIFtjZGtEcm9wTGlzdEVudGVyUHJlZGljYXRlXT1cImNhbkRyb3BQcmVkaWNhdGUoWyd3aWRnZXQnLCdjb2x1bW4nXSlcIlxuICAgICAgICAoY2RrRHJvcExpc3REcm9wcGVkKT1cImFkZFRvTGlzdCgnaGVhZGVyJywgJGV2ZW50LCBpKTtcIlxuICAgICAgICAoZHJhZ2VudGVyKT1cIm9uRHJhZ0VudGVySGFuZGxlcignaGVhZGVyJywgaSlcIlxuICAgICAgICAoZHJhZ2xlYXZlKT1cIm9uRHJhZ0xlYXZlSGFuZGxlcigpXCJcbiAgICAgID48L2Rpdj5cbiAgICAgIDxhamYtcmVwb3J0LWJ1aWxkZXItd2lkZ2V0cy1yb3ctYnV0dG9uc1xuICAgICAgICBjZGtEcmFnXG4gICAgICAgIFtjZGtEcmFnRGF0YV09XCJ7d2lkZ2V0OiB0LGZyb21JbmRleDogaSxhcnJheUZyb206ICdoZWFkZXInLCBkcm9wWm9uZXM6IFsnd2lkZ2V0JywnY29sdW1uJ119XCJcbiAgICAgICAgW3N0eWxlLmRpc3BsYXldPVwiKHNob3dBY3Rpb25zIHx8IG9uRHJhZ2dlZCk/ICdibG9jaycgOiAnbm9uZSdcIlxuICAgICAgICBbZnJvbV09XCInaGVhZGVyJ1wiXG4gICAgICAgIFt3aWRnZXRdPVwidFwiXG4gICAgICAgIFtwb3NpdGlvbl09XCJpXCJcbiAgICAgICAgKGNka0RyYWdTdGFydGVkKT1cIm9uRHJhZ1N0YXJ0SGFuZGxlcigpO1wiXG4gICAgICAgIChjZGtEcmFnRW5kZWQpPVwib25EcmFnRW5kSGFuZGxlcigpXCJcbiAgICAgID5cbiAgICAgIDwvYWpmLXJlcG9ydC1idWlsZGVyLXdpZGdldHMtcm93LWJ1dHRvbnM+XG4gICAgICA8YWpmLXJlcG9ydC1idWlsZGVyLXJlbmRlcmVyLXdpZGdldFxuICAgICAgICBbd2lkZ2V0XT1cInRcIlxuICAgICAgICBbcG9zaXRpb25dPVwiaVwiXG4gICAgICAgIFtzZWN0aW9uXT1cIidoZWFkZXInXCJcbiAgICAgICAgKGN1cnJlbnRXaWRnZXQpPVwiY3VycmVudFdpZGdldFwiXG4gICAgICA+PC9hamYtcmVwb3J0LWJ1aWxkZXItcmVuZGVyZXItd2lkZ2V0PlxuICAgIDwvbWF0LWxpc3Q+XG4gICAgPGRpdlxuICAgICAgY2RrRHJvcExpc3RcbiAgICAgIGNsYXNzPVwiYWpmLWRyb3Atem9uZS1jb250YWluZXJcIlxuICAgICAgW25nQ2xhc3NdPVwieydhamYtc2hvdyc6IHRydWV9XCJcbiAgICAgIFtjZGtEcm9wTGlzdEVudGVyUHJlZGljYXRlXT1cImNhbkRyb3BQcmVkaWNhdGUoWydoZWFkZXInLCd3aWRnZXQnLCdjb2x1bW4nXSlcIlxuICAgICAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJhZGRUb0xpc3QoJ2hlYWRlcicsICRldmVudClcIlxuICAgICAgKGRyYWdlbnRlcik9XCJvbkRyYWdFbnRlckhhbmRsZXIoJ2hlYWRlcicsIGhlYWRlcldpZGdldHM/Lmxlbmd0aClcIlxuICAgICAgKGRyYWdsZWF2ZSk9XCJvbkRyYWdMZWF2ZUhhbmRsZXIoKVwiXG4gICAgPjwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIGNsYXNzPVwiYWpmLWNvbnRlbnRcIlxuICAgIFtuZ0NsYXNzXT1cInsnYWpmLWlzLW9uLW92ZXInOiBvbkRyYWdnZWQgfHwgc2hvd31cIlxuICAgIFthcHBseVN0eWxlc109XCJjb250ZW50U3R5bGVzfGFzeW5jXCJcbiAgPlxuICAgIDxtYXQtbGlzdCAqbmdGb3I9XCJsZXQgdCBvZiBjb250ZW50V2lkZ2V0czsgbGV0IGkgPSBpbmRleFwiPlxuICAgICAgPGRpdlxuICAgICAgICBjZGtEcm9wTGlzdFxuICAgICAgICBjbGFzcz1cImFqZi1kcm9wLXpvbmVcIlxuICAgICAgICBbbmdDbGFzc109XCJ7J2FqZi1zaG93JzogdHJ1ZX1cIlxuICAgICAgICBbY2RrRHJvcExpc3RFbnRlclByZWRpY2F0ZV09XCJjYW5Ecm9wUHJlZGljYXRlKFsnd2lkZ2V0JywnY29sdW1uJ10pXCJcbiAgICAgICAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJhZGRUb0xpc3QoJ2NvbnRlbnQnLCAkZXZlbnQsIGkpXCJcbiAgICAgICAgKGRyYWdlbnRlcik9XCJvbkRyYWdFbnRlckhhbmRsZXIoJ2NvbnRlbnQnLCBpKVwiXG4gICAgICAgIChkcmFnbGVhdmUpPVwib25EcmFnTGVhdmVIYW5kbGVyKClcIlxuICAgICAgPjwvZGl2PlxuICAgICAgPGFqZi1yZXBvcnQtYnVpbGRlci13aWRnZXRzLXJvdy1idXR0b25zXG4gICAgICAgIGNka0RyYWdcbiAgICAgICAgW2Nka0RyYWdEYXRhXT1cInt3aWRnZXQ6IHQsIGZyb21JbmRleDogaSwgYXJyYXlGcm9tOiAnY29udGVudCcsIGRyb3Bab25lczogWyd3aWRnZXQnLCdjb2x1bW4nXX1cIlxuICAgICAgICBbc3R5bGUuZGlzcGxheV09XCJzaG93QWN0aW9ucyA/ICdibG9jaycgOiAnbm9uZSdcIlxuICAgICAgICBbZnJvbV09XCInY29udGVudCdcIlxuICAgICAgICBbd2lkZ2V0XT1cInRcIlxuICAgICAgICBbcG9zaXRpb25dPVwiaVwiXG4gICAgICAgIChjZGtEcmFnU3RhcnRlZCk9XCJvbkRyYWdTdGFydEhhbmRsZXIoKVwiXG4gICAgICAgIChjZGtEcmFnRW5kZWQpPVwib25EcmFnRW5kSGFuZGxlcigpO1wiXG4gICAgICA+XG4gICAgICA8L2FqZi1yZXBvcnQtYnVpbGRlci13aWRnZXRzLXJvdy1idXR0b25zPlxuICAgICAgPGFqZi1yZXBvcnQtYnVpbGRlci1yZW5kZXJlci13aWRnZXRcbiAgICAgICAgW3dpZGdldF09XCJ0XCJcbiAgICAgICAgW3Bvc2l0aW9uXT1cImlcIlxuICAgICAgICBbc2VjdGlvbl09XCInY29udGVudCdcIlxuICAgICAgICAoY3VycmVudFdpZGdldCk9XCJjdXJyZW50V2lkZ2V0XCJcbiAgICAgID48L2FqZi1yZXBvcnQtYnVpbGRlci1yZW5kZXJlci13aWRnZXQ+XG4gICAgPC9tYXQtbGlzdD5cbiAgICA8ZGl2XG4gICAgICBjZGtEcm9wTGlzdFxuICAgICAgY2xhc3M9XCJhamYtZHJvcC16b25lLWNvbnRhaW5lclwiXG4gICAgICBbbmdDbGFzc109XCJ7J2FqZi1zaG93Jzogb25EcmFnZ2VkfVwiXG4gICAgICBbY2RrRHJvcExpc3RFbnRlclByZWRpY2F0ZV09XCJjYW5Ecm9wUHJlZGljYXRlKFsnY29udGVudCcsJ3dpZGdldCcsJ2NvbHVtbiddKVwiXG4gICAgICAoY2RrRHJvcExpc3REcm9wcGVkKT1cImFkZFRvTGlzdCgnY29udGVudCcsICRldmVudClcIlxuICAgICAgKGRyYWdlbnRlcik9XCJvbkRyYWdFbnRlckhhbmRsZXIoJ2NvbnRlbnQnLCBjb250ZW50V2lkZ2V0cz8ubGVuZ3RoKVwiXG4gICAgICAoZHJhZ2xlYXZlKT1cIm9uRHJhZ0xlYXZlSGFuZGxlcigpXCJcbiAgICA+XG4gICAgICA8bGFiZWw+e3snRHJvcCBoZXJlJ3x0cmFuc2xvY299fTwvbGFiZWw+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJhamYtZm9vdGVyXCJcbiAgICBbbmdDbGFzc109XCJ7J2FqZi1pcy1vbi1vdmVyJzogb25EcmFnZ2VkIHx8IHNob3d9XCJcbiAgICBbYXBwbHlTdHlsZXNdPVwiZm9vdGVyU3R5bGVzfGFzeW5jXCJcbiAgPlxuICAgIDxtYXQtbGlzdCAqbmdGb3I9XCJsZXQgdCBvZiBmb290ZXJXaWRnZXRzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNka0Ryb3BMaXN0XG4gICAgICAgIGNsYXNzPVwiYWpmLWRyb3Atem9uZVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsnYWpmLXNob3cnOiB0cnVlfVwiXG4gICAgICAgIFtjZGtEcm9wTGlzdEVudGVyUHJlZGljYXRlXT1cImNhbkRyb3BQcmVkaWNhdGUoWyd3aWRnZXQnLCdjb2x1bW4nXSlcIlxuICAgICAgICAoY2RrRHJvcExpc3REcm9wcGVkKT1cImFkZFRvTGlzdCgnZm9vdGVyJywgJGV2ZW50LCBpKVwiXG4gICAgICAgIChkcmFnZW50ZXIpPVwib25EcmFnRW50ZXJIYW5kbGVyKCdmb290ZXInLCBpKVwiXG4gICAgICAgIChkcmFnbGVhdmUpPVwib25EcmFnTGVhdmVIYW5kbGVyKClcIlxuICAgICAgPjwvZGl2PlxuICAgICAgPGFqZi1yZXBvcnQtYnVpbGRlci13aWRnZXRzLXJvdy1idXR0b25zXG4gICAgICAgIGNka0RyYWdcbiAgICAgICAgW2Nka0RyYWdEYXRhXT1cInt3aWRnZXQ6IHQsIGZyb21JbmRleDogaSwgYXJyYXlGcm9tOiAnZm9vdGVyJywgZHJvcFpvbmVzOiBbJ3dpZGdldCcsJ2NvbHVtbiddfVwiXG4gICAgICAgIFtzdHlsZS5kaXNwbGF5XT1cInNob3dBY3Rpb25zID8gJ2Jsb2NrJyA6ICdub25lJ1wiXG4gICAgICAgIFtmcm9tXT1cIidmb290ZXInXCJcbiAgICAgICAgW3dpZGdldF09XCJ0XCJcbiAgICAgICAgW3Bvc2l0aW9uXT1cImlcIlxuICAgICAgICAoY2RrRHJhZ1N0YXJ0ZWQpPVwib25EcmFnU3RhcnRIYW5kbGVyKClcIlxuICAgICAgICAoY2RrRHJhZ0VuZGVkKT1cIm9uRHJhZ0VuZEhhbmRsZXIoKVwiXG4gICAgICA+XG4gICAgICA8L2FqZi1yZXBvcnQtYnVpbGRlci13aWRnZXRzLXJvdy1idXR0b25zPlxuICAgICAgPGFqZi1yZXBvcnQtYnVpbGRlci1yZW5kZXJlci13aWRnZXRcbiAgICAgICAgW3dpZGdldF09XCJ0XCJcbiAgICAgICAgW3Bvc2l0aW9uXT1cImlcIlxuICAgICAgICBbc2VjdGlvbl09XCInZm9vdGVyJ1wiXG4gICAgICAgIChjdXJyZW50V2lkZ2V0KT1cImN1cnJlbnRXaWRnZXRcIlxuICAgICAgPjwvYWpmLXJlcG9ydC1idWlsZGVyLXJlbmRlcmVyLXdpZGdldD5cbiAgICA8L21hdC1saXN0PlxuICAgIDxkaXZcbiAgICAgIGNka0Ryb3BMaXN0XG4gICAgICBjbGFzcz1cImFqZi1kcm9wLXpvbmUtY29udGFpbmVyXCJcbiAgICAgIFtuZ0NsYXNzXT1cInsnYWpmLXNob3cnOiBvbkRyYWdnZWR9XCJcbiAgICAgIFtjZGtEcm9wTGlzdEVudGVyUHJlZGljYXRlXT1cImNhbkRyb3BQcmVkaWNhdGUoWydmb290ZXInLCd3aWRnZXQnLCdjb2x1bW4nXSlcIlxuICAgICAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJhZGRUb0xpc3QoJ2Zvb3RlcicsICRldmVudClcIlxuICAgICAgKGRyYWdlbnRlcik9XCJvbkRyYWdFbnRlckhhbmRsZXIoJ2Zvb3RlcicsIGhlYWRlcldpZGdldHM/Lmxlbmd0aClcIlxuICAgICAgKGRyYWdsZWF2ZSk9XCJvbkRyYWdMZWF2ZUhhbmRsZXIoKVwiXG4gICAgPlxuICAgICAgPGxhYmVsPnt7J0Ryb3AgaGVyZSd8dHJhbnNsb2NvfX08L2xhYmVsPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright (C) Gnucoop soc. coop.
|
|
4
|
-
*
|
|
5
|
-
* This file is part of the Advanced JSON forms (ajf).
|
|
6
|
-
*
|
|
7
|
-
* Advanced JSON forms (ajf) is free software: you can redistribute it and/or
|
|
8
|
-
* modify it under the terms of the GNU Affero General Public License as
|
|
9
|
-
* published by the Free Software Foundation, either version 3 of the License,
|
|
10
|
-
* or (at your option) any later version.
|
|
11
|
-
*
|
|
12
|
-
* Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
|
|
13
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
14
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
|
|
15
|
-
* General Public License for more details.
|
|
16
|
-
*
|
|
17
|
-
* You should have received a copy of the GNU Affero General Public License
|
|
18
|
-
* along with Advanced JSON forms (ajf).
|
|
19
|
-
* If not, see http://www.gnu.org/licenses/.
|
|
20
|
-
*
|
|
21
|
-
*/
|
|
22
|
-
import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';
|
|
23
|
-
import { MatDialogRef } from '@angular/material/dialog';
|
|
24
|
-
import { AjfReportBuilderService } from './report-builder-service';
|
|
25
|
-
import * as i0 from "@angular/core";
|
|
26
|
-
import * as i1 from "./report-builder-service";
|
|
27
|
-
import * as i2 from "@angular/material/dialog";
|
|
28
|
-
import * as i3 from "@angular/material/form-field";
|
|
29
|
-
import * as i4 from "@angular/forms";
|
|
30
|
-
export class AjfReportBuilderCustomWidgetDialog {
|
|
31
|
-
constructor(_service, _dialogRef) {
|
|
32
|
-
this._service = _service;
|
|
33
|
-
this._dialogRef = _dialogRef;
|
|
34
|
-
}
|
|
35
|
-
changeLabel() {
|
|
36
|
-
this._service.changeLabelCustomWidget(this.label, this.position);
|
|
37
|
-
this._dialogRef.close();
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
AjfReportBuilderCustomWidgetDialog.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: AjfReportBuilderCustomWidgetDialog, deps: [{ token: i1.AjfReportBuilderService }, { token: i2.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
41
|
-
AjfReportBuilderCustomWidgetDialog.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: AjfReportBuilderCustomWidgetDialog, selector: "custom-widget-dialog", inputs: { label: "label", position: "position" }, ngImport: i0, template: "<h3 matDialogTitle> set the label widget</h3>\n<mat-form-field>\n <input matInput placeholder=\"add the label of this custom widget\" [(ngModel)]=\"label\"/>\n</mat-form-field>\n<button matDialogClose (click)=\"changeLabel()\"> Ok </button>\n\n", components: [{ type: i3.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }], directives: [{ type: i2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
42
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: AjfReportBuilderCustomWidgetDialog, decorators: [{
|
|
43
|
-
type: Component,
|
|
44
|
-
args: [{ selector: 'custom-widget-dialog', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<h3 matDialogTitle> set the label widget</h3>\n<mat-form-field>\n <input matInput placeholder=\"add the label of this custom widget\" [(ngModel)]=\"label\"/>\n</mat-form-field>\n<button matDialogClose (click)=\"changeLabel()\"> Ok </button>\n\n" }]
|
|
45
|
-
}], ctorParameters: function () { return [{ type: i1.AjfReportBuilderService }, { type: i2.MatDialogRef }]; }, propDecorators: { label: [{
|
|
46
|
-
type: Input
|
|
47
|
-
}], position: [{
|
|
48
|
-
type: Input
|
|
49
|
-
}] } });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXdpZGdldC1kaWFsb2cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbWF0ZXJpYWwvcmVwb3J0LWJ1aWxkZXIvY3VzdG9tLXdpZGdldC1kaWFsb2cudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbWF0ZXJpYWwvcmVwb3J0LWJ1aWxkZXIvY3VzdG9tLXdpZGdldC1kaWFsb2cuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFFSCxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFdEQsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sMEJBQTBCLENBQUM7Ozs7OztBQVFqRSxNQUFNLE9BQU8sa0NBQWtDO0lBSTdDLFlBQ1ksUUFBaUMsRUFDakMsVUFBNEQ7UUFENUQsYUFBUSxHQUFSLFFBQVEsQ0FBeUI7UUFDakMsZUFBVSxHQUFWLFVBQVUsQ0FBa0Q7SUFBRyxDQUFDO0lBRTVFLFdBQVc7UUFDVCxJQUFJLENBQUMsUUFBUSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2pFLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDMUIsQ0FBQzs7dUlBWFUsa0NBQWtDOzJIQUFsQyxrQ0FBa0MsOEdDakMvQyx1UEFNQTttR0QyQmEsa0NBQWtDO2tCQU45QyxTQUFTOytCQUNFLHNCQUFzQixpQkFFakIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTt5SUFHdEMsS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgKEMpIEdudWNvb3Agc29jLiBjb29wLlxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpLlxuICpcbiAqIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yXG4gKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXNcbiAqIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLFxuICogb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlIEdOVSBBZmZlcm9cbiAqIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGFsb25nIHdpdGggQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqIElmIG5vdCwgc2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8uXG4gKlxuICovXG5cbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWF0RGlhbG9nUmVmfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5pbXBvcnQge0FqZlJlcG9ydEJ1aWxkZXJTZXJ2aWNlfSBmcm9tICcuL3JlcG9ydC1idWlsZGVyLXNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjdXN0b20td2lkZ2V0LWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnY3VzdG9tLXdpZGdldC1kaWFsb2cuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEFqZlJlcG9ydEJ1aWxkZXJDdXN0b21XaWRnZXREaWFsb2cge1xuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nO1xuICBASW5wdXQoKSBwb3NpdGlvbjogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBfc2VydmljZTogQWpmUmVwb3J0QnVpbGRlclNlcnZpY2UsXG4gICAgICBwcml2YXRlIF9kaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxBamZSZXBvcnRCdWlsZGVyQ3VzdG9tV2lkZ2V0RGlhbG9nPikge31cblxuICBjaGFuZ2VMYWJlbCgpIHtcbiAgICB0aGlzLl9zZXJ2aWNlLmNoYW5nZUxhYmVsQ3VzdG9tV2lkZ2V0KHRoaXMubGFiZWwsIHRoaXMucG9zaXRpb24pO1xuICAgIHRoaXMuX2RpYWxvZ1JlZi5jbG9zZSgpO1xuICB9XG59XG4iLCI8aDMgbWF0RGlhbG9nVGl0bGU+IHNldCB0aGUgbGFiZWwgd2lkZ2V0PC9oMz5cbjxtYXQtZm9ybS1maWVsZD5cbiAgPGlucHV0IG1hdElucHV0IHBsYWNlaG9sZGVyPVwiYWRkIHRoZSBsYWJlbCBvZiB0aGlzIGN1c3RvbSB3aWRnZXRcIiBbKG5nTW9kZWwpXT1cImxhYmVsXCIvPlxuPC9tYXQtZm9ybS1maWVsZD5cbjxidXR0b24gbWF0RGlhbG9nQ2xvc2UgKGNsaWNrKT1cImNoYW5nZUxhYmVsKClcIj4gT2sgPC9idXR0b24+XG5cbiJdfQ==
|