@ng-formworks/core 17.6.5 → 17.6.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/json-schema-form.component.mjs +1 -1
- package/esm2022/lib/json-schema-form.service.mjs +25 -17
- package/esm2022/lib/shared/form-group.functions.mjs +52 -3
- package/esm2022/lib/shared/layout.functions.mjs +32 -9
- package/esm2022/lib/widget-library/add-reference.component.mjs +13 -6
- package/esm2022/lib/widget-library/button.component.mjs +9 -4
- package/esm2022/lib/widget-library/checkbox.component.mjs +2 -1
- package/esm2022/lib/widget-library/index.mjs +2 -1
- package/esm2022/lib/widget-library/input.component.mjs +9 -4
- package/esm2022/lib/widget-library/number.component.mjs +9 -6
- package/esm2022/lib/widget-library/root.component.mjs +167 -124
- package/esm2022/lib/widget-library/section.component.mjs +2 -2
- package/esm2022/lib/widget-library/select-framework.component.mjs +9 -5
- package/esm2022/lib/widget-library/select-widget.component.mjs +5 -4
- package/esm2022/lib/widget-library/stop-propagation.directive.mjs +42 -0
- package/esm2022/lib/widget-library/submit.component.mjs +9 -4
- package/esm2022/lib/widget-library/tab.component.mjs +1 -1
- package/esm2022/lib/widget-library/widget-library.module.mjs +9 -32
- package/fesm2022/ng-formworks-core.mjs +500 -334
- package/fesm2022/ng-formworks-core.mjs.map +1 -1
- package/lib/json-schema-form.service.d.ts +0 -3
- package/lib/widget-library/index.d.ts +1 -0
- package/lib/widget-library/root.component.d.ts +25 -7
- package/lib/widget-library/select-framework.component.d.ts +2 -1
- package/lib/widget-library/select-widget.component.d.ts +2 -2
- package/lib/widget-library/stop-propagation.directive.d.ts +13 -0
- package/lib/widget-library/widget-library.module.d.ts +5 -4
- package/package.json +3 -4
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { Component, inject, input } from '@angular/core';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, inject, input } from '@angular/core';
|
|
2
|
+
import { memoize } from 'lodash';
|
|
2
3
|
import { JsonSchemaFormService } from '../json-schema-form.service';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
import * as i1 from "@angular/common";
|
|
5
|
-
import * as i2 from "
|
|
6
|
+
import * as i2 from "@angular/cdk/drag-drop";
|
|
6
7
|
import * as i3 from "./select-framework.component";
|
|
7
|
-
import * as i4 from "./orderable.directive";
|
|
8
8
|
export class RootComponent {
|
|
9
9
|
constructor() {
|
|
10
10
|
this.jsf = inject(JsonSchemaFormService);
|
|
@@ -13,105 +13,84 @@ export class RootComponent {
|
|
|
13
13
|
this.layout = input(undefined);
|
|
14
14
|
this.isOrderable = input(undefined);
|
|
15
15
|
this.isFlexItem = input(false);
|
|
16
|
-
this.
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
layoutIndex: () => { return layoutInd; },
|
|
33
|
-
layoutNode: () => { return layoutItem; },
|
|
34
|
-
};
|
|
35
|
-
//must set moveLayout to false as nxtSortable already moves it
|
|
36
|
-
this.jsf.moveArrayItem(itemCtx, evt.oldIndex, evt.newIndex, false);
|
|
37
|
-
},
|
|
38
|
-
onMove: function (/**Event*/ evt, /**Event*/ originalEvent) {
|
|
39
|
-
if (evt.related.classList.contains("sortable-fixed")) {
|
|
40
|
-
//console.log(evt.related);
|
|
41
|
-
return false;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
16
|
+
this.memoizationEnabled = input(true);
|
|
17
|
+
/**
|
|
18
|
+
* Predicate function that disallows '$ref' item sorts
|
|
19
|
+
* NB declared as a var instead of a function
|
|
20
|
+
* like sortPredicate(index: number, item: CdkDrag<number>){..}
|
|
21
|
+
* since 'this' is bound to the draglist and doesn't reference the
|
|
22
|
+
* FlexLayoutRootComponent instance
|
|
23
|
+
*/
|
|
24
|
+
//TODO also need to think of other types such as button which can be
|
|
25
|
+
//created by an arbitrary layout
|
|
26
|
+
//might not be needed added condition to [cdkDragDisabled]
|
|
27
|
+
this.sortPredicate = (index, item) => {
|
|
28
|
+
let layoutItem = this.layout()[index];
|
|
29
|
+
let result = this.isDraggable(layoutItem);
|
|
30
|
+
//layoutItem.type != '$ref';
|
|
31
|
+
return result;
|
|
44
32
|
};
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
zone.runOutsideAngular(() => {
|
|
59
|
-
console.log(`pluginEvent3 ${pluginEvent}`)
|
|
60
|
-
pluginEvent('nulling', this);
|
|
61
|
-
|
|
62
|
-
rootEl =
|
|
63
|
-
dragEl =
|
|
64
|
-
parentEl =
|
|
65
|
-
ghostEl =
|
|
66
|
-
nextEl =
|
|
67
|
-
cloneEl =
|
|
68
|
-
lastDownEl =
|
|
69
|
-
cloneHidden =
|
|
70
|
-
|
|
71
|
-
tapEvt =
|
|
72
|
-
touchEvt =
|
|
33
|
+
//private selectframeworkInputCache = new Map<string, { dataIndex: any[], layoutIndex: any[], layoutNode: any }>();
|
|
34
|
+
//TODO review caching-if form field values change, the changes are not propagated
|
|
35
|
+
/*
|
|
36
|
+
getSelectFrameworkInputs(layoutItem: any, i: number) {
|
|
37
|
+
// Create a unique key based on the layoutItem and index
|
|
38
|
+
const cacheKey = `${layoutItem._id}-${i}`;
|
|
39
|
+
|
|
40
|
+
// If the result is already in the cache, return it
|
|
41
|
+
if(this.enableCaching){
|
|
42
|
+
if (this.selectframeworkInputCache.has(cacheKey)) {
|
|
43
|
+
return this.selectframeworkInputCache.get(cacheKey);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
73
46
|
|
|
74
|
-
moved =
|
|
75
|
-
newIndex =
|
|
76
|
-
newDraggableIndex =
|
|
77
|
-
oldIndex =
|
|
78
|
-
oldDraggableIndex =
|
|
79
47
|
|
|
80
|
-
|
|
81
|
-
|
|
48
|
+
// If not cached, calculate the values (assuming dataIndex() and layoutIndex() are functions)
|
|
49
|
+
const dataIndex = layoutItem?.arrayItem ? (this.dataIndex() || []).concat(i) : (this.dataIndex() || []);
|
|
50
|
+
const layoutIndex = (this.layoutIndex() || []).concat(i);
|
|
82
51
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
Sortable.active = null;
|
|
52
|
+
// Save the result in the cache
|
|
53
|
+
const result = { dataIndex, layoutIndex, layoutNode: layoutItem };
|
|
54
|
+
if(this.enableCaching){
|
|
55
|
+
this.selectframeworkInputCache.set(cacheKey, result);
|
|
56
|
+
}
|
|
89
57
|
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
58
|
+
return result;
|
|
59
|
+
}
|
|
60
|
+
*/
|
|
61
|
+
this._getSelectFrameworkInputsRaw = (layoutItem, i) => {
|
|
62
|
+
const dataIndexValue = this.dataIndex() || [];
|
|
63
|
+
const layoutIndexValue = this.layoutIndex() || [];
|
|
64
|
+
return {
|
|
65
|
+
layoutNode: layoutItem,
|
|
66
|
+
layoutIndex: [...layoutIndexValue, i],
|
|
67
|
+
dataIndex: layoutItem?.arrayItem ? [...dataIndexValue, i] : dataIndexValue,
|
|
68
|
+
};
|
|
69
|
+
};
|
|
70
|
+
// Define a separate function to hold the memoized version
|
|
71
|
+
this._getSelectFrameworkInputsMemoized = memoize(this._getSelectFrameworkInputsRaw, (layoutItem, i) => {
|
|
72
|
+
const layoutItemKey = layoutItem?.id ?? JSON.stringify(layoutItem);
|
|
73
|
+
return `${layoutItemKey}-${i}`;
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
drop(event) {
|
|
77
|
+
// most likely why this event is used is to get the dragging element's current index
|
|
78
|
+
let srcInd = event.previousIndex;
|
|
79
|
+
let trgInd = event.currentIndex;
|
|
80
|
+
let layoutItem = this.layout()[trgInd];
|
|
81
|
+
let dataInd = layoutItem?.arrayItem ? (this.dataIndex() || []).concat(trgInd) : (this.dataIndex() || []);
|
|
82
|
+
let layoutInd = (this.layoutIndex() || []).concat(trgInd);
|
|
83
|
+
let itemCtx = {
|
|
84
|
+
dataIndex: () => { return dataInd; },
|
|
85
|
+
layoutIndex: () => { return layoutInd; },
|
|
86
|
+
layoutNode: () => { return layoutItem; },
|
|
87
|
+
};
|
|
88
|
+
this.jsf.moveArrayItem(itemCtx, srcInd, trgInd, true);
|
|
106
89
|
}
|
|
107
90
|
isDraggable(node) {
|
|
108
91
|
let result = node.arrayItem && node.type !== '$ref' &&
|
|
109
|
-
node.arrayItemType === 'list' && this.isOrderable() !== false
|
|
110
|
-
|
|
111
|
-
//this.sortableObj.option("disabled",true);
|
|
112
|
-
//this.sortableObj.option("sort",false);
|
|
113
|
-
//this.sortableObj.option("disabled",!result);
|
|
114
|
-
}
|
|
92
|
+
node.arrayItemType === 'list' && this.isOrderable() !== false
|
|
93
|
+
&& node.type !== 'submit';
|
|
115
94
|
return result;
|
|
116
95
|
}
|
|
117
96
|
//TODO also need to think of other types such as button which can be
|
|
@@ -127,92 +106,156 @@ export class RootComponent {
|
|
|
127
106
|
return ((node.options || {}).flex || '').split(/\s+/)[index] ||
|
|
128
107
|
(node.options || {})[attribute] || ['1', '1', 'auto'][index];
|
|
129
108
|
}
|
|
109
|
+
// This is the public function that the template calls
|
|
110
|
+
getSelectFrameworkInputs(layoutItem, i) {
|
|
111
|
+
if (this.memoizationEnabled) {
|
|
112
|
+
return this._getSelectFrameworkInputsMemoized(layoutItem, i);
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
return this._getSelectFrameworkInputsRaw(layoutItem, i);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
trackByFn(index, item) {
|
|
119
|
+
return item._id ?? index;
|
|
120
|
+
}
|
|
121
|
+
/*
|
|
122
|
+
ngOnChanges(changes: SimpleChanges): void {
|
|
123
|
+
// If any of the input properties change, clear the cache
|
|
124
|
+
if (changes.dataIndex || changes.layoutIndex || changes.layout) {
|
|
125
|
+
this.selectframeworkInputCache?.clear(); // Clear the entire cache
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
*/
|
|
129
|
+
ngOnChanges(changes) {
|
|
130
|
+
if (changes['layout'] || changes['dataIndex'] || changes['layoutIndex']) {
|
|
131
|
+
// Clear the entire cache of the memoized function
|
|
132
|
+
this._getSelectFrameworkInputsMemoized.cache.clear();
|
|
133
|
+
}
|
|
134
|
+
}
|
|
130
135
|
showWidget(layoutNode) {
|
|
131
136
|
return this.jsf.evaluateCondition(layoutNode, this.dataIndex());
|
|
132
137
|
}
|
|
133
138
|
ngOnInit() {
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
});
|
|
141
|
-
//this.sortableObj.option("disabled",true);
|
|
142
|
-
//this.sortableObj.option("sort",false);
|
|
143
|
-
}
|
|
144
|
-
});
|
|
139
|
+
if (this.memoizationEnabled) {
|
|
140
|
+
this.jsf.dataChanges.subscribe((val) => {
|
|
141
|
+
//this.selectframeworkInputCache?.clear();
|
|
142
|
+
this._getSelectFrameworkInputsMemoized.cache.clear();
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
145
|
}
|
|
146
146
|
ngOnDestroy() {
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
147
|
+
//this.selectframeworkInputCache?.clear()
|
|
148
|
+
//this.selectframeworkInputCache=null;
|
|
149
|
+
this._getSelectFrameworkInputsMemoized.cache.clear();
|
|
150
|
+
this.dataChangesSubs?.unsubscribe();
|
|
150
151
|
}
|
|
151
152
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RootComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
152
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: RootComponent, selector: "root-widget", inputs: { dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, layout: { classPropertyName: "layout", publicName: "layout", isSignal: true, isRequired: false, transformFunction: null }, isOrderable: { classPropertyName: "isOrderable", publicName: "isOrderable", isSignal: true, isRequired: false, transformFunction: null }, isFlexItem: { classPropertyName: "isFlexItem", publicName: "isFlexItem", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
153
|
-
<div
|
|
154
|
-
|
|
153
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: RootComponent, selector: "root-widget", inputs: { dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, layout: { classPropertyName: "layout", publicName: "layout", isSignal: true, isRequired: false, transformFunction: null }, isOrderable: { classPropertyName: "isOrderable", publicName: "isOrderable", isSignal: true, isRequired: false, transformFunction: null }, isFlexItem: { classPropertyName: "isFlexItem", publicName: "isFlexItem", isSignal: true, isRequired: false, transformFunction: null }, memoizationEnabled: { classPropertyName: "memoizationEnabled", publicName: "memoizationEnabled", isSignal: true, isRequired: false, transformFunction: null } }, usesOnChanges: true, ngImport: i0, template: `
|
|
154
|
+
<div cdkDropList (cdkDropListDropped)="drop($event)"
|
|
155
|
+
[class.flex-inherit]="true"
|
|
156
|
+
[cdkDropListSortPredicate]="sortPredicate"
|
|
157
|
+
>
|
|
158
|
+
<!-- -for now left out
|
|
159
|
+
cdkDragHandle directive, by itself, does not disable the
|
|
160
|
+
default drag behavior of its parent cdkDrag element.
|
|
161
|
+
You must explicitly disable dragging on the main element
|
|
162
|
+
and re-enable it only when using the handle.
|
|
163
|
+
-->
|
|
164
|
+
<div *ngFor="let layoutItem of layout(); let i = index;trackBy: trackByFn"
|
|
165
|
+
cdkDrag [cdkDragStartDelay]="{touch:1000,mouse:0}"
|
|
166
|
+
[cdkDragDisabled]="!isDraggable(layoutItem)"
|
|
155
167
|
[class.form-flex-item]="isFlexItem()"
|
|
156
168
|
[style.align-self]="(layoutItem.options || {})['align-self']"
|
|
157
169
|
[style.flex-basis]="getFlexAttribute(layoutItem, 'flex-basis')"
|
|
158
170
|
[style.flex-grow]="getFlexAttribute(layoutItem, 'flex-grow')"
|
|
159
171
|
[style.flex-shrink]="getFlexAttribute(layoutItem, 'flex-shrink')"
|
|
160
172
|
[style.order]="(layoutItem.options || {}).order"
|
|
161
|
-
[class.sortable-filter]="!isDraggable(layoutItem)"
|
|
162
|
-
[class.sortable-fixed]="isFixed(layoutItem)"
|
|
163
173
|
>
|
|
174
|
+
|
|
175
|
+
<!-- workaround to disbale dragging of input fields -->
|
|
176
|
+
<!--
|
|
177
|
+
<div *ngIf="layoutItem?.dataType !='object'" cdkDragHandle>
|
|
178
|
+
<p>Drag Handle {{layoutItem?.dataType}}</p>
|
|
179
|
+
</div>
|
|
180
|
+
-->
|
|
164
181
|
<!--NB orderable directive is not used but has been left in for now and set to false
|
|
165
182
|
otherwise the compiler won't recognize dataIndex and other dependent attributes
|
|
166
183
|
-->
|
|
184
|
+
<!--
|
|
167
185
|
<div
|
|
168
186
|
[dataIndex]="layoutItem?.arrayItem ? (dataIndex() || []).concat(i) : (dataIndex() || [])"
|
|
169
187
|
[layoutIndex]="(layoutIndex() || []).concat(i)"
|
|
170
188
|
[layoutNode]="layoutItem"
|
|
171
189
|
[orderable]="false"
|
|
172
|
-
[class.sortable-filter]="!isDraggable(layoutItem)"
|
|
173
|
-
[class.sortable-fixed]="isFixed(layoutItem)"
|
|
174
190
|
>
|
|
175
191
|
<select-framework-widget *ngIf="showWidget(layoutItem)"
|
|
176
192
|
[dataIndex]="layoutItem?.arrayItem ? (dataIndex() || []).concat(i) : (dataIndex() || [])"
|
|
177
193
|
[layoutIndex]="(layoutIndex() || []).concat(i)"
|
|
178
194
|
[layoutNode]="layoutItem"></select-framework-widget>
|
|
179
195
|
</div>
|
|
196
|
+
-->
|
|
197
|
+
<select-framework-widget *ngIf="showWidget(layoutItem)"
|
|
198
|
+
[dataIndex]="getSelectFrameworkInputs(layoutItem,i).dataIndex"
|
|
199
|
+
[layoutIndex]="getSelectFrameworkInputs(layoutItem,i).layoutIndex"
|
|
200
|
+
[layoutNode]="getSelectFrameworkInputs(layoutItem,i).layoutNode">
|
|
201
|
+
</select-framework-widget>
|
|
180
202
|
</div>
|
|
181
203
|
</div>
|
|
182
|
-
`, isInline: true, styles: ["[draggable=true]{transition:all .15s cubic-bezier(.4,0,.2,1)}[draggable=true]:hover{cursor:move;box-shadow:2px 2px 4px #0003;position:relative;z-index:10;margin:-1px 1px 1px -1px}[draggable=true].drag-target-top{box-shadow:0 -2px #000;position:relative;z-index:20}[draggable=true].drag-target-bottom{box-shadow:0 2px #000;position:relative;z-index:20}.flex-inherit{display:inherit;flex-flow:inherit;flex-wrap:inherit;flex-direction:inherit;width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.
|
|
204
|
+
`, isInline: true, styles: ["[draggable=true]{transition:all .15s cubic-bezier(.4,0,.2,1)}[draggable=true]:hover{cursor:move;box-shadow:2px 2px 4px #0003;position:relative;z-index:10;margin:-1px 1px 1px -1px}[draggable=true].drag-target-top{box-shadow:0 -2px #000;position:relative;z-index:20}[draggable=true].drag-target-bottom{box-shadow:0 2px #000;position:relative;z-index:20}.flex-inherit{display:inherit;flex-flow:inherit;flex-wrap:inherit;flex-direction:inherit;width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.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"] }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i3.SelectFrameworkComponent, selector: "select-framework-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
183
205
|
}
|
|
184
206
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RootComponent, decorators: [{
|
|
185
207
|
type: Component,
|
|
186
208
|
args: [{ selector: 'root-widget', template: `
|
|
187
|
-
<div
|
|
188
|
-
|
|
209
|
+
<div cdkDropList (cdkDropListDropped)="drop($event)"
|
|
210
|
+
[class.flex-inherit]="true"
|
|
211
|
+
[cdkDropListSortPredicate]="sortPredicate"
|
|
212
|
+
>
|
|
213
|
+
<!-- -for now left out
|
|
214
|
+
cdkDragHandle directive, by itself, does not disable the
|
|
215
|
+
default drag behavior of its parent cdkDrag element.
|
|
216
|
+
You must explicitly disable dragging on the main element
|
|
217
|
+
and re-enable it only when using the handle.
|
|
218
|
+
-->
|
|
219
|
+
<div *ngFor="let layoutItem of layout(); let i = index;trackBy: trackByFn"
|
|
220
|
+
cdkDrag [cdkDragStartDelay]="{touch:1000,mouse:0}"
|
|
221
|
+
[cdkDragDisabled]="!isDraggable(layoutItem)"
|
|
189
222
|
[class.form-flex-item]="isFlexItem()"
|
|
190
223
|
[style.align-self]="(layoutItem.options || {})['align-self']"
|
|
191
224
|
[style.flex-basis]="getFlexAttribute(layoutItem, 'flex-basis')"
|
|
192
225
|
[style.flex-grow]="getFlexAttribute(layoutItem, 'flex-grow')"
|
|
193
226
|
[style.flex-shrink]="getFlexAttribute(layoutItem, 'flex-shrink')"
|
|
194
227
|
[style.order]="(layoutItem.options || {}).order"
|
|
195
|
-
[class.sortable-filter]="!isDraggable(layoutItem)"
|
|
196
|
-
[class.sortable-fixed]="isFixed(layoutItem)"
|
|
197
228
|
>
|
|
229
|
+
|
|
230
|
+
<!-- workaround to disbale dragging of input fields -->
|
|
231
|
+
<!--
|
|
232
|
+
<div *ngIf="layoutItem?.dataType !='object'" cdkDragHandle>
|
|
233
|
+
<p>Drag Handle {{layoutItem?.dataType}}</p>
|
|
234
|
+
</div>
|
|
235
|
+
-->
|
|
198
236
|
<!--NB orderable directive is not used but has been left in for now and set to false
|
|
199
237
|
otherwise the compiler won't recognize dataIndex and other dependent attributes
|
|
200
238
|
-->
|
|
239
|
+
<!--
|
|
201
240
|
<div
|
|
202
241
|
[dataIndex]="layoutItem?.arrayItem ? (dataIndex() || []).concat(i) : (dataIndex() || [])"
|
|
203
242
|
[layoutIndex]="(layoutIndex() || []).concat(i)"
|
|
204
243
|
[layoutNode]="layoutItem"
|
|
205
244
|
[orderable]="false"
|
|
206
|
-
[class.sortable-filter]="!isDraggable(layoutItem)"
|
|
207
|
-
[class.sortable-fixed]="isFixed(layoutItem)"
|
|
208
245
|
>
|
|
209
246
|
<select-framework-widget *ngIf="showWidget(layoutItem)"
|
|
210
247
|
[dataIndex]="layoutItem?.arrayItem ? (dataIndex() || []).concat(i) : (dataIndex() || [])"
|
|
211
248
|
[layoutIndex]="(layoutIndex() || []).concat(i)"
|
|
212
249
|
[layoutNode]="layoutItem"></select-framework-widget>
|
|
213
250
|
</div>
|
|
251
|
+
-->
|
|
252
|
+
<select-framework-widget *ngIf="showWidget(layoutItem)"
|
|
253
|
+
[dataIndex]="getSelectFrameworkInputs(layoutItem,i).dataIndex"
|
|
254
|
+
[layoutIndex]="getSelectFrameworkInputs(layoutItem,i).layoutIndex"
|
|
255
|
+
[layoutNode]="getSelectFrameworkInputs(layoutItem,i).layoutNode">
|
|
256
|
+
</select-framework-widget>
|
|
214
257
|
</div>
|
|
215
258
|
</div>
|
|
216
|
-
`, standalone: false, styles: ["[draggable=true]{transition:all .15s cubic-bezier(.4,0,.2,1)}[draggable=true]:hover{cursor:move;box-shadow:2px 2px 4px #0003;position:relative;z-index:10;margin:-1px 1px 1px -1px}[draggable=true].drag-target-top{box-shadow:0 -2px #000;position:relative;z-index:20}[draggable=true].drag-target-bottom{box-shadow:0 2px #000;position:relative;z-index:20}.flex-inherit{display:inherit;flex-flow:inherit;flex-wrap:inherit;flex-direction:inherit;width:100%}\n"] }]
|
|
259
|
+
`, changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, styles: ["[draggable=true]{transition:all .15s cubic-bezier(.4,0,.2,1)}[draggable=true]:hover{cursor:move;box-shadow:2px 2px 4px #0003;position:relative;z-index:10;margin:-1px 1px 1px -1px}[draggable=true].drag-target-top{box-shadow:0 -2px #000;position:relative;z-index:20}[draggable=true].drag-target-bottom{box-shadow:0 2px #000;position:relative;z-index:20}.flex-inherit{display:inherit;flex-flow:inherit;flex-wrap:inherit;flex-direction:inherit;width:100%}\n"] }]
|
|
217
260
|
}] });
|
|
218
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1mb3Jtd29ya3MtY29yZS9zcmMvbGliL3dpZGdldC1saWJyYXJ5L3Jvb3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFFNUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7OztBQWtFcEUsTUFBTSxPQUFPLGFBQWE7SUFqRTFCO1FBb0VVLFFBQUcsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUduQyxjQUFTLEdBQUcsS0FBSyxDQUFXLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZDLGdCQUFXLEdBQUcsS0FBSyxDQUFXLFNBQVMsQ0FBQyxDQUFDO1FBQ3pDLFdBQU0sR0FBRyxLQUFLLENBQVEsU0FBUyxDQUFDLENBQUM7UUFDakMsZ0JBQVcsR0FBRyxLQUFLLENBQVUsU0FBUyxDQUFDLENBQUM7UUFDeEMsZUFBVSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQU1uQyxtQkFBYyxHQUFLO1lBQ2pCLE1BQU0sRUFBQyxrQkFBa0I7WUFDekIsZUFBZSxFQUFFLEtBQUs7WUFDdEIsS0FBSyxFQUFFLElBQUk7WUFDWCxnQkFBZ0IsRUFBRSxJQUFJO1lBQ3RCLEtBQUssRUFBRSxDQUFDLFVBQVUsQ0FBQSxHQUFHLEVBQUMsRUFBRTtnQkFDdEIsR0FBRyxDQUFDLFFBQVEsQ0FBQSxDQUFDLG9GQUFvRjtnQkFDakcsMkJBQTJCO2dCQUMzQix5Q0FBeUM7Z0JBQ3pDLElBQUksTUFBTSxHQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7Z0JBQ3hCLElBQUksTUFBTSxHQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7Z0JBQ3hCLElBQUksVUFBVSxHQUFDLElBQUksQ0FB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RUQsVUFBVSxDQUFDLFVBQWU7UUFDeEIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBQ0QsUUFBUTtRQUNOLG1DQUFtQztRQUNuQyxJQUFJLENBQUMsMkJBQTJCLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQ3BFLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDWixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7Z0JBQ3BCLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQSxFQUFFO29CQUNsQyxJQUFJLE1BQU0sR0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBQyxNQUFNLENBQUMsQ0FBQztnQkFDdEMsQ0FBQyxDQUFDLENBQUE7Z0JBQ0YsMkNBQTJDO2dCQUMzQyx3Q0FBd0M7YUFDekM7UUFDSCxDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFDRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsMkJBQTJCLEVBQUU7WUFDcEMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ2hEO0lBQ0gsQ0FBQzsrR0E5SlUsYUFBYTttR0FBYixhQUFhLHl0QkE5RGQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQThCUDs7NEZBZ0NRLGFBQWE7a0JBakV6QixTQUFTOytCQUVFLGFBQWEsWUFDYjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBOEJQLGNBOEJTLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCwgaW5wdXQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBKc29uU2NoZW1hRm9ybVNlcnZpY2UgfSBmcm9tICcuLi9qc29uLXNjaGVtYS1mb3JtLnNlcnZpY2UnO1xyXG5AQ29tcG9uZW50KHtcclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6Y29tcG9uZW50LXNlbGVjdG9yXHJcbiAgc2VsZWN0b3I6ICdyb290LXdpZGdldCcsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgW2NsYXNzLmZsZXgtaW5oZXJpdF09XCJ0cnVlXCIgI3NvcnRhYmxlQ29udGFpbnRlciBbbnh0U29ydGFibGVqc109XCJsYXlvdXQoKVwiIFtjb25maWddPVwic29ydGFibGVDb25maWdcIiAoaW5pdCk9XCJzb3J0YWJsZUluaXQoJGV2ZW50KVwiPlxyXG4gICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBsYXlvdXRJdGVtIG9mIGxheW91dCgpOyBsZXQgaSA9IGluZGV4XCJcclxuICAgICAgICBbY2xhc3MuZm9ybS1mbGV4LWl0ZW1dPVwiaXNGbGV4SXRlbSgpXCJcclxuICAgICAgICBbc3R5bGUuYWxpZ24tc2VsZl09XCIobGF5b3V0SXRlbS5vcHRpb25zIHx8IHt9KVsnYWxpZ24tc2VsZiddXCJcclxuICAgICAgICBbc3R5bGUuZmxleC1iYXNpc109XCJnZXRGbGV4QXR0cmlidXRlKGxheW91dEl0ZW0sICdmbGV4LWJhc2lzJylcIlxyXG4gICAgICAgIFtzdHlsZS5mbGV4LWdyb3ddPVwiZ2V0RmxleEF0dHJpYnV0ZShsYXlvdXRJdGVtLCAnZmxleC1ncm93JylcIlxyXG4gICAgICAgIFtzdHlsZS5mbGV4LXNocmlua109XCJnZXRGbGV4QXR0cmlidXRlKGxheW91dEl0ZW0sICdmbGV4LXNocmluaycpXCJcclxuICAgICAgICBbc3R5bGUub3JkZXJdPVwiKGxheW91dEl0ZW0ub3B0aW9ucyB8fCB7fSkub3JkZXJcIlxyXG4gICAgICAgIFtjbGFzcy5zb3J0YWJsZS1maWx0ZXJdPVwiIWlzRHJhZ2dhYmxlKGxheW91dEl0ZW0pXCJcclxuICAgICAgICBbY2xhc3Muc29ydGFibGUtZml4ZWRdPVwiaXNGaXhlZChsYXlvdXRJdGVtKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwhLS1OQiBvcmRlcmFibGUgZGlyZWN0aXZlIGlzIG5vdCB1c2VkIGJ1dCBoYXMgYmVlbiBsZWZ0IGluIGZvciBub3cgYW5kIHNldCB0byBmYWxzZVxyXG4gICAgICAgICAgb3RoZXJ3aXNlIHRoZSBjb21waWxlciB3b24ndCByZWNvZ25pemUgZGF0YUluZGV4IGFuZCBvdGhlciBkZXBlbmRlbnQgYXR0cmlidXRlc1xyXG4gICAgICAgIC0tPlxyXG4gICAgICAgIDxkaXYgXHJcbiAgICAgICAgICBbZGF0YUluZGV4XT1cImxheW91dEl0ZW0/LmFycmF5SXRlbSA/IChkYXRhSW5kZXgoKSB8fCBbXSkuY29uY2F0KGkpIDogKGRhdGFJbmRleCgpIHx8IFtdKVwiXHJcbiAgICAgICAgICBbbGF5b3V0SW5kZXhdPVwiKGxheW91dEluZGV4KCkgfHwgW10pLmNvbmNhdChpKVwiXHJcbiAgICAgICAgICBbbGF5b3V0Tm9kZV09XCJsYXlvdXRJdGVtXCJcclxuICAgICAgICAgIFtvcmRlcmFibGVdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgW2NsYXNzLnNvcnRhYmxlLWZpbHRlcl09XCIhaXNEcmFnZ2FibGUobGF5b3V0SXRlbSlcIlxyXG4gICAgICAgICAgW2NsYXNzLnNvcnRhYmxlLWZpeGVkXT1cImlzRml4ZWQobGF5b3V0SXRlbSlcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgPHNlbGVjdC1mcmFtZXdvcmstd2lkZ2V0ICpuZ0lmPVwic2hvd1dpZGdldChsYXlvdXRJdGVtKVwiXHJcbiAgICAgICAgICAgIFtkYXRhSW5kZXhdPVwibGF5b3V0SXRlbT8uYXJyYXlJdGVtID8gKGRhdGFJbmRleCgpIHx8IFtdKS5jb25jYXQoaSkgOiAoZGF0YUluZGV4KCkgfHwgW10pXCJcclxuICAgICAgICAgICAgW2xheW91dEluZGV4XT1cIihsYXlvdXRJbmRleCgpIHx8IFtdKS5jb25jYXQoaSlcIlxyXG4gICAgICAgICAgICBbbGF5b3V0Tm9kZV09XCJsYXlvdXRJdGVtXCI+PC9zZWxlY3QtZnJhbWV3b3JrLXdpZGdldD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIGAsXHJcbiAgc3R5bGVzOiBbYFxyXG4gICAgW2RyYWdnYWJsZT10cnVlXSB7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcyBjdWJpYy1iZXppZXIoLjQsIDAsIC4yLCAxKTtcclxuICAgIH1cclxuICAgIFtkcmFnZ2FibGU9dHJ1ZV06aG92ZXIge1xyXG4gICAgICBjdXJzb3I6IG1vdmU7XHJcbiAgICAgIGJveC1zaGFkb3c6IDJweCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiAxMDtcclxuICAgICAgbWFyZ2luLXRvcDogLTFweDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMXB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxcHg7XHJcbiAgICB9XHJcbiAgICBbZHJhZ2dhYmxlPXRydWVdLmRyYWctdGFyZ2V0LXRvcCB7XHJcbiAgICAgIGJveC1zaGFkb3c6IDAgLTJweCAwICMwMDA7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogMjA7XHJcbiAgICB9XHJcbiAgICBbZHJhZ2dhYmxlPXRydWVdLmRyYWctdGFyZ2V0LWJvdHRvbSB7XHJcbiAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDAgIzAwMDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiAyMDtcclxuICAgIH1cclxuICAgIC5mbGV4LWluaGVyaXR7XHJcbiAgICAgIGRpc3BsYXk6aW5oZXJpdDtcclxuICAgICAgZmxleC1mbG93OmluaGVyaXQ7XHJcbiAgICAgIGZsZXgtd3JhcDppbmhlcml0O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjppbmhlcml0O1xyXG4gICAgICB3aWR0aDoxMDAlXHJcbiAgICB9XHJcbiAgYF0sXHJcbiAgc3RhbmRhbG9uZTogZmFsc2VcclxufSlcclxuZXhwb3J0IGNsYXNzIFJvb3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcblxyXG5cclxuICBwcml2YXRlIGpzZiA9IGluamVjdChKc29uU2NoZW1hRm9ybVNlcnZpY2UpO1xyXG5cclxuICBvcHRpb25zOiBhbnk7XHJcbiAgcmVhZG9ubHkgZGF0YUluZGV4ID0gaW5wdXQ8bnVtYmVyW10+KHVuZGVmaW5lZCk7XHJcbiAgcmVhZG9ubHkgbGF5b3V0SW5kZXggPSBpbnB1dDxudW1iZXJbXT4odW5kZWZpbmVkKTtcclxuICByZWFkb25seSBsYXlvdXQgPSBpbnB1dDxhbnlbXT4odW5kZWZpbmVkKTtcclxuICByZWFkb25seSBpc09yZGVyYWJsZSA9IGlucHV0PGJvb2xlYW4+KHVuZGVmaW5lZCk7XHJcbiAgcmVhZG9ubHkgaXNGbGV4SXRlbSA9IGlucHV0KGZhbHNlKTtcclxuXHJcbiAgLy8gQFZpZXdDaGlsZCgnc29ydGFibGVDb250YWludGVyJywge30pXHJcbiAgLy8gc29ydGFibGVDb250YWludGVyRWx0OiBFbGVtZW50UmVmO1xyXG5cclxuICBzb3J0YWJsZU9iajogYW55O1xyXG4gIHNvcnRhYmxlQ29uZmlnOmFueT17XHJcbiAgICBmaWx0ZXI6XCIuc29ydGFibGUtZmlsdGVyXCIsLy9uZWVkZWQgdG8gZGlzYWJsZSBkcmFnZ2luZyBvbiBpbnB1dCByYW5nZSBlbGVtZW50cywgY2xhc3MgbmVlZHMgdG8gYmUgYWRkZWQgdG8gdGhlIGVsZW1lbnQgb3IgaXRzIHBhcmVudFxyXG4gICAgcHJldmVudE9uRmlsdGVyOiBmYWxzZSwvL25lZWRlZCBmb3IgaW5wdXQgcmFuZ2UgZWxlbWVudHMgc2xpZGVyIGRvIHN0aWxsIHdvcmtcclxuICAgIGRlbGF5OiAxMDAwLFxyXG4gICAgZGVsYXlPblRvdWNoT25seTogdHJ1ZSxcclxuICAgIG9uRW5kOiAoLyoqRXZlbnQqL2V2dCk9PiB7XHJcbiAgICAgIGV2dC5uZXdJbmRleCAvLyBtb3N0IGxpa2VseSB3aHkgdGhpcyBldmVudCBpcyB1c2VkIGlzIHRvIGdldCB0aGUgZHJhZ2dpbmcgZWxlbWVudCdzIGN1cnJlbnQgaW5kZXhcclxuICAgICAgLy8gc2FtZSBwcm9wZXJ0aWVzIGFzIG9uRW5kXHJcbiAgICAgIC8vY29uc29sZS5sb2coYHNvcnRhYmxlanMgZXZlbnQ6JHtldnR9YCk7XHJcbiAgICAgIGxldCBzcmNJbmQ9ZXZ0Lm9sZEluZGV4O1xyXG4gICAgICBsZXQgdHJnSW5kPWV2dC5uZXdJbmRleDtcclxuICAgICAgbGV0IGxheW91dEl0ZW09dGhpcy5sYXlvdXQoKVt0cmdJbmRdO1xyXG4gICAgICBsZXQgZGF0YUluZD1sYXlvdXRJdGVtPy5hcnJheUl0ZW0gPyAodGhpcy5kYXRhSW5kZXgoKSB8fCBbXSkuY29uY2F0KHRyZ0luZCkgOiAodGhpcy5kYXRhSW5kZXgoKSB8fCBbXSk7XHJcbiAgICAgIGxldCBsYXlvdXRJbmQ9KHRoaXMubGF5b3V0SW5kZXgoKSB8fCBbXSkuY29uY2F0KHRyZ0luZClcclxuICAgICAgbGV0IGl0ZW1DdHg6YW55PXtcclxuICAgICAgICBkYXRhSW5kZXg6KCk9PntyZXR1cm4gZGF0YUluZH0sXHJcbiAgICAgICAgbGF5b3V0SW5kZXg6KCk9PntyZXR1cm4gbGF5b3V0SW5kfSxcclxuICAgICAgICBsYXlvdXROb2RlOigpPT57cmV0dXJuIGxheW91dEl0ZW19LFxyXG4gICAgICB9XHJcbiAgICAgIC8vbXVzdCBzZXQgbW92ZUxheW91dCB0byBmYWxzZSBhcyBueHRTb3J0YWJsZSBhbHJlYWR5IG1vdmVzIGl0XHJcbiAgICAgIHRoaXMuanNmLm1vdmVBcnJheUl0ZW0oaXRlbUN0eCwgZXZ0Lm9sZEluZGV4LCBldnQubmV3SW5kZXgsZmFsc2UpO1xyXG4gICAgICBcclxuICAgIH0sXHJcbiAgICBvbk1vdmU6IGZ1bmN0aW9uICgvKipFdmVudCovZXZ0LCAvKipFdmVudCovb3JpZ2luYWxFdmVudCkge1xyXG4gICAgICBpZihldnQucmVsYXRlZC5jbGFzc0xpc3QuY29udGFpbnMoXCJzb3J0YWJsZS1maXhlZFwiKSl7XHJcbiAgICAgICAvL2NvbnNvbGUubG9nKGV2dC5yZWxhdGVkKTtcclxuICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICB9XHJcbiAgIH1cclxuICB9XHJcbiAgcHJpdmF0ZSBzb3J0YWJsZU9wdGlvbnNTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuICBzb3J0YWJsZUluaXQoc29ydGFibGUpIHtcclxuICAgIHRoaXMuc29ydGFibGVPYmogPSBzb3J0YWJsZTtcclxuICAgIC8vU29ydGFibGUudXRpbHMub24odGhpcy5zb3J0YWJsZU9iai5lbCxcIm51bGxpbmdcIiwocyk9Pntjb25zb2xlLmxvZyhcImV2ZW50IG51bGxpbmcgc29ydGFibGVqc1wiKX0pXHJcbiAgICAvLy9OQiBpc3N1ZSBjYXVzZWQgYnkgc29ydGFibGVqcyB3aGVuIGl0IGl0cyBkZXN0cm95ZWRcclxuICAgIC8vdGhpcyBtYWlubHkgYWZmZWN0cyBjaGVja2JveGVzIGNvdXBsZWQgd2l0aCBjb25kaXRpb25zXHJcbiAgICAvLy10aGUgdmFsdWUgaXMgcmVjaGVja2VkXHJcbiAgICAvLy1zZWUgaHR0cHM6Ly9naXRodWIuY29tL1NvcnRhYmxlSlMvU29ydGFibGUvaXNzdWVzLzEwNTIjaXNzdWVjb21tZW50LTM2OTYxMzA3MlxyXG4gICAgLyogYXR0ZW1wdCB0byBtb25rZXkgcGF0Y2ggc29ydGFibGUganMgXHJcbiAgICBjb25zdCBvcmlnaW5hbE1ldGhvZCA9IHNvcnRhYmxlLl9udWxsaW5nO1xyXG4gICAgbGV0IHpvbmU9dGhpcy56b25lO1xyXG4gICAgc29ydGFibGUuX251bGxpbmc9ZnVuY3Rpb24oKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKGBwbHVnaW5FdmVudCAyICR7cGx1Z2luRXZlbnR9YClcclxuICAgICAgICAgICAgem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XHJcbiAgICAgICAgICAgICAgY29uc29sZS5sb2coYHBsdWdpbkV2ZW50MyAke3BsdWdpbkV2ZW50fWApXHJcbiAgICAgIHBsdWdpbkV2ZW50KCdudWxsaW5nJywgdGhpcyk7XHJcbiAgXHJcbiAgICAgIHJvb3RFbCA9XHJcbiAgICAgIGRyYWdFbCA9XHJcbiAgICAgIHBhcmVudEVsID1cclxuICAgICAgZ2hvc3RFbCA9XHJcbiAgICAgIG5leHRFbCA9XHJcbiAgICAgIGNsb25lRWwgPVxyXG4gICAgICBsYXN0RG93bkVsID1cclxuICAgICAgY2xvbmVIaWRkZW4gPVxyXG4gIFxyXG4gICAgICB0YXBFdnQgPVxyXG4gICAgICB0b3VjaEV2dCA9XHJcbiAgXHJcbiAgICAgIG1vdmVkID1cclxuICAgICAgbmV3SW5kZXggPVxyXG4gICAgICBuZXdEcmFnZ2FibGVJbmRleCA9XHJcbiAgICAgIG9sZEluZGV4ID1cclxuICAgICAgb2xkRHJhZ2dhYmxlSW5kZXggPVxyXG4gIFxyXG4gICAgICBsYXN0VGFyZ2V0ID1cclxuICAgICAgbGFzdERpcmVjdGlvbiA9XHJcbiAgXHJcbiAgICAgIHB1dFNvcnRhYmxlID1cclxuICAgICAgYWN0aXZlR3JvdXAgPVxyXG4gICAgICBTb3J0YWJsZS5kcmFnZ2VkID1cclxuICAgICAgU29ydGFibGUuZ2hvc3QgPVxyXG4gICAgICBTb3J0YWJsZS5jbG9uZSA9XHJcbiAgICAgIFNvcnRhYmxlLmFjdGl2ZSA9IG51bGw7XHJcbiAgXHJcbiAgICBcclxuICAgICAgICBsZXQgZWwgPSB0aGlzLmVsO1xyXG4gICAgICAgIHNhdmVkSW5wdXRDaGVja2VkLmZvckVhY2goZnVuY3Rpb24gKGNoZWNrRWwpIHtcclxuICAgICAgICAgIGlmIChlbC5jb250YWlucyhjaGVja0VsKSkge1xyXG4gICAgICAgICAgICBjaGVja0VsLmNoZWNrZWQgPSB0cnVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgXHJcbiAgICAgICAgc2F2ZWRJbnB1dENoZWNrZWQubGVuZ3RoID1cclxuICAgICAgICBsYXN0RHggPVxyXG4gICAgICAgIGxhc3REeSA9IDA7XHJcblxyXG4gICAgICB9KVxyXG5cclxuICAgIH0uYmluZChzb3J0YWJsZSlcclxuICAgICovXHJcbiAgfVxyXG5cclxuICBpc0RyYWdnYWJsZShub2RlOiBhbnkpOiBib29sZWFuIHtcclxuICAgIGxldCByZXN1bHQ9bm9kZS5hcnJheUl0ZW0gJiYgbm9kZS50eXBlICE9PSAnJHJlZicgJiZcclxuICAgIG5vZGUuYXJyYXlJdGVtVHlwZSA9PT0gJ2xpc3QnICYmIHRoaXMuaXNPcmRlcmFibGUoKSAhPT0gZmFsc2U7XHJcbiAgICBpZiAodGhpcy5zb3J0YWJsZU9iaikge1xyXG4gICAgICAvL3RoaXMuc29ydGFibGVPYmoub3B0aW9uKFwiZGlzYWJsZWRcIix0cnVlKTtcclxuICAgICAgLy90aGlzLnNvcnRhYmxlT2JqLm9wdGlvbihcInNvcnRcIixmYWxzZSk7XHJcbiAgICAgIC8vdGhpcy5zb3J0YWJsZU9iai5vcHRpb24oXCJkaXNhYmxlZFwiLCFyZXN1bHQpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG5cclxuICAvL1RPRE8gYWxzbyBuZWVkIHRvIHRoaW5rIG9mIG90aGVyIHR5cGVzIHN1Y2ggYXMgYnV0dG9uIHdoaWNoIGNhbiBiZVxyXG4gIC8vY3JlYXRlZCBieSBhbiBhcmJpdHJhcnkgbGF5b3V0XHJcbiAgaXNGaXhlZChub2RlOiBhbnkpOiBib29sZWFuIHtcclxuICAgIGxldCByZXN1bHQ9bm9kZS50eXBlID09ICckcmVmJztcclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG5cclxuICAvLyBTZXQgYXR0cmlidXRlcyBmb3IgZmxleGJveCBjaGlsZFxyXG4gIC8vIChjb250YWluZXIgYXR0cmlidXRlcyBhcmUgc2V0IGluIHNlY3Rpb24uY29tcG9uZW50KVxyXG4gIGdldEZsZXhBdHRyaWJ1dGUobm9kZTogYW55LCBhdHRyaWJ1dGU6IHN0cmluZykge1xyXG4gICAgY29uc3QgaW5kZXggPSBbJ2ZsZXgtZ3JvdycsICdmbGV4LXNocmluaycsICdmbGV4LWJhc2lzJ10uaW5kZXhPZihhdHRyaWJ1dGUpO1xyXG4gICAgcmV0dXJuICgobm9kZS5vcHRpb25zIHx8IHt9KS5mbGV4IHx8ICcnKS5zcGxpdCgvXFxzKy8pW2luZGV4XSB8fFxyXG4gICAgICAobm9kZS5vcHRpb25zIHx8IHt9KVthdHRyaWJ1dGVdIHx8IFsnMScsICcxJywgJ2F1dG8nXVtpbmRleF07XHJcbiAgfVxyXG5cclxuICBzaG93V2lkZ2V0KGxheW91dE5vZGU6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuanNmLmV2YWx1YXRlQ29uZGl0aW9uKGxheW91dE5vZGUsIHRoaXMuZGF0YUluZGV4KCkpO1xyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIC8vIFN1YnNjcmliZSB0byB0aGUgZHJhZ2dhYmxlIHN0YXRlXHJcbiAgICB0aGlzLnNvcnRhYmxlT3B0aW9uc1N1YnNjcmlwdGlvbiA9IHRoaXMuanNmLnNvcnRhYmxlT3B0aW9ucyQuc3Vic2NyaWJlKFxyXG4gICAgICAob3B0c1ZhbHVlKSA9PiB7XHJcbiAgICAgICAgaWYgKHRoaXMuc29ydGFibGVPYmopIHtcclxuICAgICAgICAgIE9iamVjdC5rZXlzKG9wdHNWYWx1ZSkuZm9yRWFjaChvcHQ9PntcclxuICAgICAgICAgICAgbGV0IG9wdFZhbD1vcHRzVmFsdWVbb3B0XTtcclxuICAgICAgICAgICAgdGhpcy5zb3J0YWJsZU9iai5vcHRpb24ob3B0LG9wdFZhbCk7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICAgLy90aGlzLnNvcnRhYmxlT2JqLm9wdGlvbihcImRpc2FibGVkXCIsdHJ1ZSk7XHJcbiAgICAgICAgICAvL3RoaXMuc29ydGFibGVPYmoub3B0aW9uKFwic29ydFwiLGZhbHNlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuc29ydGFibGVPcHRpb25zU3Vic2NyaXB0aW9uKSB7XHJcbiAgICAgIHRoaXMuc29ydGFibGVPcHRpb25zU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
261
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1mb3Jtd29ya3MtY29yZS9zcmMvbGliL3dpZGdldC1saWJyYXJ5L3Jvb3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBK0MsTUFBTSxlQUFlLENBQUM7QUFDL0gsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUVqQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7QUF3RnBFLE1BQU0sT0FBTyxhQUFhO0lBdkYxQjtRQXlGVSxRQUFHLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFHbkMsY0FBUyxHQUFHLEtBQUssQ0FBVyxTQUFTLENBQUMsQ0FBQztRQUN2QyxnQkFBVyxHQUFHLEtBQUssQ0FBVyxTQUFTLENBQUMsQ0FBQztRQUN6QyxXQUFNLEdBQUcsS0FBSyxDQUFRLFNBQVMsQ0FBQyxDQUFDO1FBQ2pDLGdCQUFXLEdBQUcsS0FBSyxDQUFVLFNBQVMsQ0FBQyxDQUFDO1FBQ3hDLGVBQVUsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUIsdUJBQWtCLEdBQUUsS0FBSyxDQUFVLElBQUksQ0FBQyxDQUFDO1FBaUNsRDs7Ozs7O1dBTUc7UUFDRCxvRUFBb0U7UUFDcEUsZ0NBQWdDO1FBQ2hDLDBEQUEwRDtRQUMxRCxrQkFBYSxHQUFDLENBQUMsS0FBYSxFQUFFLElBQXFCLEVBQUMsRUFBRTtZQUNwRCxJQUFJLFVBQVUsR0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDcEMsSUFBSSxNQUFNLEdBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUN4Qyw0QkFBNEI7WUFD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Q3hCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUNELFFBQVE7UUFDSixJQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFBQztZQUN6QixJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLEVBQUMsRUFBRTtnQkFDcEMsMENBQTBDO2dCQUMxQyxJQUFJLENBQUMsaUNBQWlDLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3ZELENBQUMsQ0FBQyxDQUFBO1NBQ0g7SUFFTCxDQUFDO0lBQ0QsV0FBVztRQUNQLHlDQUF5QztRQUN6QyxzQ0FBc0M7UUFDdEMsSUFBSSxDQUFDLGlDQUFpQyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNyRCxJQUFJLENBQUMsZUFBZSxFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ3hDLENBQUM7K0dBdEtVLGFBQWE7bUdBQWIsYUFBYSw2NEJBcEZkOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S0FtRFA7OzRGQWlDUSxhQUFhO2tCQXZGekIsU0FBUzsrQkFFRSxhQUFhLFlBQ2I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQW1EUCxtQkE4QmEsdUJBQXVCLENBQUMsTUFBTSxjQUNsQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2RrRHJhZywgQ2RrRHJhZ0Ryb3AgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0LCBpbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBtZW1vaXplIH0gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEpzb25TY2hlbWFGb3JtU2VydmljZSB9IGZyb20gJy4uL2pzb24tc2NoZW1hLWZvcm0uc2VydmljZSc7XHJcbkBDb21wb25lbnQoe1xyXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpjb21wb25lbnQtc2VsZWN0b3JcclxuICBzZWxlY3RvcjogJ3Jvb3Qtd2lkZ2V0JyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjZGtEcm9wTGlzdCAoY2RrRHJvcExpc3REcm9wcGVkKT1cImRyb3AoJGV2ZW50KVwiIFxyXG4gICAgICBbY2xhc3MuZmxleC1pbmhlcml0XT1cInRydWVcIlxyXG4gICAgICBbY2RrRHJvcExpc3RTb3J0UHJlZGljYXRlXT1cInNvcnRQcmVkaWNhdGVcIlxyXG4gICAgPlxyXG4gICAgICA8IS0tIC1mb3Igbm93IGxlZnQgb3V0XHJcbiAgICAgIGNka0RyYWdIYW5kbGUgZGlyZWN0aXZlLCBieSBpdHNlbGYsIGRvZXMgbm90IGRpc2FibGUgdGhlIFxyXG4gICAgICBkZWZhdWx0IGRyYWcgYmVoYXZpb3Igb2YgaXRzIHBhcmVudCBjZGtEcmFnIGVsZW1lbnQuIFxyXG4gICAgICBZb3UgbXVzdCBleHBsaWNpdGx5IGRpc2FibGUgZHJhZ2dpbmcgb24gdGhlIG1haW4gZWxlbWVudCBcclxuICAgICAgYW5kIHJlLWVuYWJsZSBpdCBvbmx5IHdoZW4gdXNpbmcgdGhlIGhhbmRsZS5cclxuICAgICAgLS0+XHJcbiAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGxheW91dEl0ZW0gb2YgbGF5b3V0KCk7IGxldCBpID0gaW5kZXg7dHJhY2tCeTogdHJhY2tCeUZuXCJcclxuICAgICAgICAgY2RrRHJhZyAgW2Nka0RyYWdTdGFydERlbGF5XT1cInt0b3VjaDoxMDAwLG1vdXNlOjB9XCJcclxuICAgICAgICBbY2RrRHJhZ0Rpc2FibGVkXT1cIiFpc0RyYWdnYWJsZShsYXlvdXRJdGVtKVwiXHJcbiAgICAgICAgW2NsYXNzLmZvcm0tZmxleC1pdGVtXT1cImlzRmxleEl0ZW0oKVwiXHJcbiAgICAgICAgW3N0eWxlLmFsaWduLXNlbGZdPVwiKGxheW91dEl0ZW0ub3B0aW9ucyB8fCB7fSlbJ2FsaWduLXNlbGYnXVwiXHJcbiAgICAgICAgW3N0eWxlLmZsZXgtYmFzaXNdPVwiZ2V0RmxleEF0dHJpYnV0ZShsYXlvdXRJdGVtLCAnZmxleC1iYXNpcycpXCJcclxuICAgICAgICBbc3R5bGUuZmxleC1ncm93XT1cImdldEZsZXhBdHRyaWJ1dGUobGF5b3V0SXRlbSwgJ2ZsZXgtZ3JvdycpXCJcclxuICAgICAgICBbc3R5bGUuZmxleC1zaHJpbmtdPVwiZ2V0RmxleEF0dHJpYnV0ZShsYXlvdXRJdGVtLCAnZmxleC1zaHJpbmsnKVwiXHJcbiAgICAgICAgW3N0eWxlLm9yZGVyXT1cIihsYXlvdXRJdGVtLm9wdGlvbnMgfHwge30pLm9yZGVyXCJcclxuICAgICAgICA+XHJcblxyXG4gICAgICAgIDwhLS0gd29ya2Fyb3VuZCB0byBkaXNiYWxlIGRyYWdnaW5nIG9mIGlucHV0IGZpZWxkcyAtLT5cclxuICAgICAgICA8IS0tXHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImxheW91dEl0ZW0/LmRhdGFUeXBlICE9J29iamVjdCdcIiAgY2RrRHJhZ0hhbmRsZT5cclxuICAgICAgICAgPHA+RHJhZyBIYW5kbGUge3tsYXlvdXRJdGVtPy5kYXRhVHlwZX19PC9wPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIC0tPlxyXG4gICAgICAgIDwhLS1OQiBvcmRlcmFibGUgZGlyZWN0aXZlIGlzIG5vdCB1c2VkIGJ1dCBoYXMgYmVlbiBsZWZ0IGluIGZvciBub3cgYW5kIHNldCB0byBmYWxzZVxyXG4gICAgICAgICAgb3RoZXJ3aXNlIHRoZSBjb21waWxlciB3b24ndCByZWNvZ25pemUgZGF0YUluZGV4IGFuZCBvdGhlciBkZXBlbmRlbnQgYXR0cmlidXRlc1xyXG4gICAgICAgIC0tPlxyXG4gICAgICAgIDwhLS1cclxuICAgICAgICA8ZGl2IFxyXG4gICAgICAgICAgW2RhdGFJbmRleF09XCJsYXlvdXRJdGVtPy5hcnJheUl0ZW0gPyAoZGF0YUluZGV4KCkgfHwgW10pLmNvbmNhdChpKSA6IChkYXRhSW5kZXgoKSB8fCBbXSlcIlxyXG4gICAgICAgICAgW2xheW91dEluZGV4XT1cIihsYXlvdXRJbmRleCgpIHx8IFtdKS5jb25jYXQoaSlcIlxyXG4gICAgICAgICAgW2xheW91dE5vZGVdPVwibGF5b3V0SXRlbVwiXHJcbiAgICAgICAgICBbb3JkZXJhYmxlXT1cImZhbHNlXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgIDxzZWxlY3QtZnJhbWV3b3JrLXdpZGdldCAqbmdJZj1cInNob3dXaWRnZXQobGF5b3V0SXRlbSlcIlxyXG4gICAgICAgICAgICBbZGF0YUluZGV4XT1cImxheW91dEl0ZW0/LmFycmF5SXRlbSA/IChkYXRhSW5kZXgoKSB8fCBbXSkuY29uY2F0KGkpIDogKGRhdGFJbmRleCgpIHx8IFtdKVwiXHJcbiAgICAgICAgICAgIFtsYXlvdXRJbmRleF09XCIobGF5b3V0SW5kZXgoKSB8fCBbXSkuY29uY2F0KGkpXCJcclxuICAgICAgICAgICAgW2xheW91dE5vZGVdPVwibGF5b3V0SXRlbVwiPjwvc2VsZWN0LWZyYW1ld29yay13aWRnZXQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgLS0+XHJcbiAgICAgIDxzZWxlY3QtZnJhbWV3b3JrLXdpZGdldCAqbmdJZj1cInNob3dXaWRnZXQobGF5b3V0SXRlbSlcIlxyXG4gICAgICAgICAgICBbZGF0YUluZGV4XT1cImdldFNlbGVjdEZyYW1ld29ya0lucHV0cyhsYXlvdXRJdGVtLGkpLmRhdGFJbmRleFwiXHJcbiAgICAgICAgICAgIFtsYXlvdXRJbmRleF09XCJnZXRTZWxlY3RGcmFtZXdvcmtJbnB1dHMobGF5b3V0SXRlbSxpKS5sYXlvdXRJbmRleFwiXHJcbiAgICAgICAgICAgIFtsYXlvdXROb2RlXT1cImdldFNlbGVjdEZyYW1ld29ya0lucHV0cyhsYXlvdXRJdGVtLGkpLmxheW91dE5vZGVcIj5cclxuXHRcdCAgPC9zZWxlY3QtZnJhbWV3b3JrLXdpZGdldD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIGAsXHJcbiAgc3R5bGVzOiBbYFxyXG4gICAgW2RyYWdnYWJsZT10cnVlXSB7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcyBjdWJpYy1iZXppZXIoLjQsIDAsIC4yLCAxKTtcclxuICAgIH1cclxuICAgIFtkcmFnZ2FibGU9dHJ1ZV06aG92ZXIge1xyXG4gICAgICBjdXJzb3I6IG1vdmU7XHJcbiAgICAgIGJveC1zaGFkb3c6IDJweCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiAxMDtcclxuICAgICAgbWFyZ2luLXRvcDogLTFweDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMXB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxcHg7XHJcbiAgICB9XHJcbiAgICBbZHJhZ2dhYmxlPXRydWVdLmRyYWctdGFyZ2V0LXRvcCB7XHJcbiAgICAgIGJveC1zaGFkb3c6IDAgLTJweCAwICMwMDA7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogMjA7XHJcbiAgICB9XHJcbiAgICBbZHJhZ2dhYmxlPXRydWVdLmRyYWctdGFyZ2V0LWJvdHRvbSB7XHJcbiAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDAgIzAwMDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiAyMDtcclxuICAgIH1cclxuICAgIC5mbGV4LWluaGVyaXR7XHJcbiAgICAgIGRpc3BsYXk6aW5oZXJpdDtcclxuICAgICAgZmxleC1mbG93OmluaGVyaXQ7XHJcbiAgICAgIGZsZXgtd3JhcDppbmhlcml0O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjppbmhlcml0O1xyXG4gICAgICB3aWR0aDoxMDAlXHJcbiAgICB9XHJcbiAgYF0sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOkNoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBzdGFuZGFsb25lOiBmYWxzZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUm9vdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LE9uQ2hhbmdlcyB7XHJcblxyXG4gIHByaXZhdGUganNmID0gaW5qZWN0KEpzb25TY2hlbWFGb3JtU2VydmljZSk7XHJcblxyXG4gIG9wdGlvbnM6IGFueTtcclxuICByZWFkb25seSBkYXRhSW5kZXggPSBpbnB1dDxudW1iZXJbXT4odW5kZWZpbmVkKTtcclxuICByZWFkb25seSBsYXlvdXRJbmRleCA9IGlucHV0PG51bWJlcltdPih1bmRlZmluZWQpO1xyXG4gIHJlYWRvbmx5IGxheW91dCA9IGlucHV0PGFueVtdPih1bmRlZmluZWQpO1xyXG4gIHJlYWRvbmx5IGlzT3JkZXJhYmxlID0gaW5wdXQ8Ym9vbGVhbj4odW5kZWZpbmVkKTtcclxuICByZWFkb25seSBpc0ZsZXhJdGVtID0gaW5wdXQoZmFsc2UpO1xyXG4gIHJlYWRvbmx5IG1lbW9pemF0aW9uRW5hYmxlZD0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XHJcblxyXG4gIGRhdGFDaGFuZ2VzU3ViczpTdWJzY3JpcHRpb247XHJcblxyXG4gIGRyb3AoZXZlbnQ6IENka0RyYWdEcm9wPHN0cmluZ1tdPikge1xyXG4gICAgLy8gbW9zdCBsaWtlbHkgd2h5IHRoaXMgZXZlbnQgaXMgdXNlZCBpcyB0byBnZXQgdGhlIGRyYWdnaW5nIGVsZW1lbnQncyBjdXJyZW50IGluZGV4XHJcbiAgICBsZXQgc3JjSW5kPWV2ZW50LnByZXZpb3VzSW5kZXg7XHJcbiAgICBsZXQgdHJnSW5kPWV2ZW50LmN1cnJlbnRJbmRleDtcclxuICAgIGxldCBsYXlvdXRJdGVtPXRoaXMubGF5b3V0KClbdHJnSW5kXTtcclxuICAgIGxldCBkYXRhSW5kPWxheW91dEl0ZW0/LmFycmF5SXRlbSA/ICh0aGlzLmRhdGFJbmRleCgpIHx8IFtdKS5jb25jYXQodHJnSW5kKSA6ICh0aGlzLmRhdGFJbmRleCgpIHx8IFtdKTtcclxuICAgIGxldCBsYXlvdXRJbmQ9KHRoaXMubGF5b3V0SW5kZXgoKSB8fCBbXSkuY29uY2F0KHRyZ0luZClcclxuICAgIGxldCBpdGVtQ3R4OmFueT17XHJcbiAgICAgIGRhdGFJbmRleDooKT0+e3JldHVybiBkYXRhSW5kfSxcclxuICAgICAgbGF5b3V0SW5kZXg6KCk9PntyZXR1cm4gbGF5b3V0SW5kfSxcclxuICAgICAgbGF5b3V0Tm9kZTooKT0+e3JldHVybiBsYXlvdXRJdGVtfSxcclxuICAgIH1cclxuICAgIHRoaXMuanNmLm1vdmVBcnJheUl0ZW0oaXRlbUN0eCwgc3JjSW5kLCB0cmdJbmQsdHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBpc0RyYWdnYWJsZShub2RlOiBhbnkpOiBib29sZWFuIHtcclxuICAgIGxldCByZXN1bHQ9bm9kZS5hcnJheUl0ZW0gJiYgbm9kZS50eXBlICE9PSAnJHJlZicgJiZcclxuICAgIG5vZGUuYXJyYXlJdGVtVHlwZSA9PT0gJ2xpc3QnICYmIHRoaXMuaXNPcmRlcmFibGUoKSAhPT0gZmFsc2VcclxuICAgICYmIG5vZGUudHlwZSAhPT0nc3VibWl0J1xyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG4gIC8vVE9ETyBhbHNvIG5lZWQgdG8gdGhpbmsgb2Ygb3RoZXIgdHlwZXMgc3VjaCBhcyBidXR0b24gd2hpY2ggY2FuIGJlXHJcbiAgLy9jcmVhdGVkIGJ5IGFuIGFyYml0cmFyeSBsYXlvdXRcclxuICBpc0ZpeGVkKG5vZGU6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IHJlc3VsdD1ub2RlLnR5cGUgPT0gJyRyZWYnO1xyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFByZWRpY2F0ZSBmdW5jdGlvbiB0aGF0IGRpc2FsbG93cyAnJHJlZicgaXRlbSBzb3J0c1xyXG4gICAqIE5CIGRlY2xhcmVkIGFzIGEgdmFyIGluc3RlYWQgb2YgYSBmdW5jdGlvbiBcclxuICAgKiBsaWtlIHNvcnRQcmVkaWNhdGUoaW5kZXg6IG51bWJlciwgaXRlbTogQ2RrRHJhZzxudW1iZXI+KXsuLn1cclxuICAgKiBzaW5jZSAndGhpcycgaXMgYm91bmQgdG8gdGhlIGRyYWdsaXN0IGFuZCBkb2Vzbid0IHJlZmVyZW5jZSB0aGVcclxuICAgKiBGbGV4TGF5b3V0Um9vdENvbXBvbmVudCBpbnN0YW5jZVxyXG4gICAqL1xyXG4gICAgLy9UT0RPIGFsc28gbmVlZCB0byB0aGluayBvZiBvdGhlciB0eXBlcyBzdWNoIGFzIGJ1dHRvbiB3aGljaCBjYW4gYmVcclxuICAgIC8vY3JlYXRlZCBieSBhbiBhcmJpdHJhcnkgbGF5b3V0XHJcbiAgICAvL21pZ2h0IG5vdCBiZSBuZWVkZWQgYWRkZWQgY29uZGl0aW9uIHRvIFtjZGtEcmFnRGlzYWJsZWRdXHJcbiAgICBzb3J0UHJlZGljYXRlPShpbmRleDogbnVtYmVyLCBpdGVtOiBDZGtEcmFnPG51bWJlcj4pPT4ge1xyXG4gICAgICBsZXQgbGF5b3V0SXRlbT10aGlzLmxheW91dCgpW2luZGV4XTtcclxuICAgICAgbGV0IHJlc3VsdD10aGlzLmlzRHJhZ2dhYmxlKGxheW91dEl0ZW0pO1xyXG4gICAgICAvL2xheW91dEl0ZW0udHlwZSAhPSAnJHJlZic7XHJcbiAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9XHJcblxyXG4gIC8vIFNldCBhdHRyaWJ1dGVzIGZvciBmbGV4Ym94IGNoaWxkXHJcbiAgLy8gKGNvbnRhaW5lciBhdHRyaWJ1dGVzIGFyZSBzZXQgaW4gc2VjdGlvbi5jb21wb25lbnQpXHJcbiAgZ2V0RmxleEF0dHJpYnV0ZShub2RlOiBhbnksIGF0dHJpYnV0ZTogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBpbmRleCA9IFsnZmxleC1ncm93JywgJ2ZsZXgtc2hyaW5rJywgJ2ZsZXgtYmFzaXMnXS5pbmRleE9mKGF0dHJpYnV0ZSk7XHJcbiAgICByZXR1cm4gKChub2RlLm9wdGlvbnMgfHwge30pLmZsZXggfHwgJycpLnNwbGl0KC9cXHMrLylbaW5kZXhdIHx8XHJcbiAgICAgIChub2RlLm9wdGlvbnMgfHwge30pW2F0dHJpYnV0ZV0gfHwgWycxJywgJzEnLCAnYXV0byddW2luZGV4XTtcclxuICB9XHJcblxyXG4gIC8vcHJpdmF0ZSBzZWxlY3RmcmFtZXdvcmtJbnB1dENhY2hlID0gbmV3IE1hcDxzdHJpbmcsIHsgZGF0YUluZGV4OiBhbnlbXSwgbGF5b3V0SW5kZXg6IGFueVtdLCBsYXlvdXROb2RlOiBhbnkgfT4oKTtcclxuXHJcbiAgLy9UT0RPIHJldmlldyBjYWNoaW5nLWlmIGZvcm0gZmllbGQgdmFsdWVzIGNoYW5nZSwgdGhlIGNoYW5nZXMgYXJlIG5vdCBwcm9wYWdhdGVkXHJcblxyXG4gIC8qXHJcbiAgZ2V0U2VsZWN0RnJhbWV3b3JrSW5wdXRzKGxheW91dEl0ZW06IGFueSwgaTogbnVtYmVyKSB7XHJcbiAgICAvLyBDcmVhdGUgYSB1bmlxdWUga2V5IGJhc2VkIG9uIHRoZSBsYXlvdXRJdGVtIGFuZCBpbmRleFxyXG4gICAgY29uc3QgY2FjaGVLZXkgPSBgJHtsYXlvdXRJdGVtLl9pZH0tJHtpfWA7XHJcbiAgXHJcbiAgICAvLyBJZiB0aGUgcmVzdWx0IGlzIGFscmVhZHkgaW4gdGhlIGNhY2hlLCByZXR1cm4gaXRcclxuICAgIGlmKHRoaXMuZW5hYmxlQ2FjaGluZyl7XHJcbiAgICAgIGlmICh0aGlzLnNlbGVjdGZyYW1ld29ya0lucHV0Q2FjaGUuaGFzKGNhY2hlS2V5KSkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnNlbGVjdGZyYW1ld29ya0lucHV0Q2FjaGUuZ2V0KGNhY2hlS2V5KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvLyBJZiBub3QgY2FjaGVkLCBjYWxjdWxhdGUgdGhlIHZhbHVlcyAoYXNzdW1pbmcgZGF0YUluZGV4KCkgYW5kIGxheW91dEluZGV4KCkgYXJlIGZ1bmN0aW9ucylcclxuICAgIGNvbnN0IGRhdGFJbmRleCA9IGxheW91dEl0ZW0/LmFycmF5SXRlbSA/ICh0aGlzLmRhdGFJbmRleCgpIHx8IFtdKS5jb25jYXQoaSkgOiAodGhpcy5kYXRhSW5kZXgoKSB8fCBbXSk7XHJcbiAgICBjb25zdCBsYXlvdXRJbmRleCA9ICh0aGlzLmxheW91dEluZGV4KCkgfHwgW10pLmNvbmNhdChpKTtcclxuXHJcbiAgICAvLyBTYXZlIHRoZSByZXN1bHQgaW4gdGhlIGNhY2hlXHJcbiAgICBjb25zdCByZXN1bHQgPSB7IGRhdGFJbmRleCwgbGF5b3V0SW5kZXgsIGxheW91dE5vZGU6IGxheW91dEl0ZW0gfTtcclxuICAgIGlmKHRoaXMuZW5hYmxlQ2FjaGluZyl7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZnJhbWV3b3JrSW5wdXRDYWNoZS5zZXQoY2FjaGVLZXksIHJlc3VsdCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcbiAgICAqL1xyXG5cclxuICBwcml2YXRlIF9nZXRTZWxlY3RGcmFtZXdvcmtJbnB1dHNSYXcgPSAobGF5b3V0SXRlbTogYW55LCBpOiBudW1iZXIpID0+IHtcclxuICAgIGNvbnN0IGRhdGFJbmRleFZhbHVlID0gdGhpcy5kYXRhSW5kZXgoKSB8fCBbXTtcclxuICAgIGNvbnN0IGxheW91dEluZGV4VmFsdWUgPSB0aGlzLmxheW91dEluZGV4KCkgfHwgW107XHJcblxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbGF5b3V0Tm9kZTogbGF5b3V0SXRlbSxcclxuICAgICAgbGF5b3V0SW5kZXg6IFsuLi5sYXlvdXRJbmRleFZhbHVlLCBpXSxcclxuICAgICAgZGF0YUluZGV4OiBsYXlvdXRJdGVtPy5hcnJheUl0ZW0gPyBbLi4uZGF0YUluZGV4VmFsdWUsIGldIDogZGF0YUluZGV4VmFsdWUsXHJcbiAgICB9O1xyXG4gIH07XHJcblxyXG4gIC8vIERlZmluZSBhIHNlcGFyYXRlIGZ1bmN0aW9uIHRvIGhvbGQgdGhlIG1lbW9pemVkIHZlcnNpb25cclxuICBwcml2YXRlIF9nZXRTZWxlY3RGcmFtZXdvcmtJbnB1dHNNZW1vaXplZCA9IG1lbW9pemUoXHJcbiAgICB0aGlzLl9nZXRTZWxlY3RGcmFtZXdvcmtJbnB1dHNSYXcsXHJcbiAgICAobGF5b3V0SXRlbTogYW55LCBpOiBudW1iZXIpID0+IHtcclxuICAgICAgY29uc3QgbGF5b3V0SXRlbUtleSA9IGxheW91dEl0ZW0/LmlkID8/IEpTT04uc3RyaW5naWZ5KGxheW91dEl0ZW0pO1xyXG4gICAgICByZXR1cm4gYCR7bGF5b3V0SXRlbUtleX0tJHtpfWA7XHJcbiAgICB9XHJcbiAgKTtcclxuXHJcbiAgLy8gVGhpcyBpcyB0aGUgcHVibGljIGZ1bmN0aW9uIHRoYXQgdGhlIHRlbXBsYXRlIGNhbGxzXHJcbiAgZ2V0U2VsZWN0RnJhbWV3b3JrSW5wdXRzKGxheW91dEl0ZW06IGFueSwgaTogbnVtYmVyKSB7XHJcbiAgICBpZiAodGhpcy5tZW1vaXphdGlvbkVuYWJsZWQpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuX2dldFNlbGVjdEZyYW1ld29ya0lucHV0c01lbW9pemVkKGxheW91dEl0ZW0sIGkpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRoaXMuX2dldFNlbGVjdEZyYW1ld29ya0lucHV0c1JhdyhsYXlvdXRJdGVtLCBpKTtcclxuICAgIH1cclxuICB9XHJcbiAgdHJhY2tCeUZuKGluZGV4OiBudW1iZXIsIGl0ZW06IGFueSk6IGFueSB7XHJcbiAgICByZXR1cm4gaXRlbS5faWQgPz8gaW5kZXg7XHJcbiAgfVxyXG5cclxuICBcclxuXHJcbiAgLypcclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICAvLyBJZiBhbnkgb2YgdGhlIGlucHV0IHByb3BlcnRpZXMgY2hhbmdlLCBjbGVhciB0aGUgY2FjaGVcclxuICAgIGlmIChjaGFuZ2VzLmRhdGFJbmRleCB8fCBjaGFuZ2VzLmxheW91dEluZGV4IHx8IGNoYW5nZXMubGF5b3V0KSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZnJhbWV3b3JrSW5wdXRDYWNoZT8uY2xlYXIoKTsgLy8gQ2xlYXIgdGhlIGVudGlyZSBjYWNoZVxyXG4gICAgfVxyXG4gIH1cclxuICAqL1xyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmIChjaGFuZ2VzWydsYXlvdXQnXSB8fCBjaGFuZ2VzWydkYXRhSW5kZXgnXSB8fCBjaGFuZ2VzWydsYXlvdXRJbmRleCddKSB7XHJcbiAgICAgIC8vIENsZWFyIHRoZSBlbnRpcmUgY2FjaGUgb2YgdGhlIG1lbW9pemVkIGZ1bmN0aW9uXHJcbiAgICAgIHRoaXMuX2dldFNlbGVjdEZyYW1ld29ya0lucHV0c01lbW9pemVkLmNhY2hlLmNsZWFyKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgc2hvd1dpZGdldChsYXlvdXROb2RlOiBhbnkpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmpzZi5ldmFsdWF0ZUNvbmRpdGlvbihsYXlvdXROb2RlLCB0aGlzLmRhdGFJbmRleCgpKTtcclxuICB9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgIGlmKHRoaXMubWVtb2l6YXRpb25FbmFibGVkKXtcclxuICAgICAgICB0aGlzLmpzZi5kYXRhQ2hhbmdlcy5zdWJzY3JpYmUoKHZhbCk9PntcclxuICAgICAgICAgIC8vdGhpcy5zZWxlY3RmcmFtZXdvcmtJbnB1dENhY2hlPy5jbGVhcigpO1xyXG4gICAgICAgICAgdGhpcy5fZ2V0U2VsZWN0RnJhbWV3b3JrSW5wdXRzTWVtb2l6ZWQuY2FjaGUuY2xlYXIoKTtcclxuICAgICAgICB9KVxyXG4gICAgICB9XHJcblxyXG4gIH1cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgLy90aGlzLnNlbGVjdGZyYW1ld29ya0lucHV0Q2FjaGU/LmNsZWFyKClcclxuICAgICAgLy90aGlzLnNlbGVjdGZyYW1ld29ya0lucHV0Q2FjaGU9bnVsbDtcclxuICAgICAgdGhpcy5fZ2V0U2VsZWN0RnJhbWV3b3JrSW5wdXRzTWVtb2l6ZWQuY2FjaGUuY2xlYXIoKTtcclxuICAgICAgdGhpcy5kYXRhQ2hhbmdlc1N1YnM/LnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG4gIFxyXG5cclxufVxyXG4iXX0=
|
|
@@ -126,7 +126,7 @@ export class SectionComponent {
|
|
|
126
126
|
[class]="options?.labelHelpBlockClass || ''"
|
|
127
127
|
[innerHTML]="options?.description"></p>
|
|
128
128
|
</div>
|
|
129
|
-
</fieldset>`, isInline: true, styles: [".legend{font-weight:700}.expandable>legend:before,.expandable>label:before{content:\"\\25b6\";padding-right:.3em;font-family:auto}.expanded>legend:before,.expanded>label:before{content:\"\\25bc\";padding-right:.2em}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.RootComponent, selector: "root-widget", inputs: ["dataIndex", "layoutIndex", "layout", "isOrderable", "isFlexItem"] }] }); }
|
|
129
|
+
</fieldset>`, isInline: true, styles: [".legend{font-weight:700}.expandable>legend:before,.expandable>label:before{content:\"\\25b6\";padding-right:.3em;font-family:auto}.expanded>legend:before,.expanded>label:before{content:\"\\25bc\";padding-right:.2em}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.RootComponent, selector: "root-widget", inputs: ["dataIndex", "layoutIndex", "layout", "isOrderable", "isFlexItem", "memoizationEnabled"] }] }); }
|
|
130
130
|
}
|
|
131
131
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SectionComponent, decorators: [{
|
|
132
132
|
type: Component,
|
|
@@ -193,4 +193,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
193
193
|
</div>
|
|
194
194
|
</fieldset>`, styles: [".legend{font-weight:700}.expandable>legend:before,.expandable>label:before{content:\"\\25b6\";padding-right:.3em;font-family:auto}.expanded>legend:before,.expanded>label:before{content:\"\\25bc\";padding-right:.2em}\n"] }]
|
|
195
195
|
}] });
|
|
196
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1mb3Jtd29ya3MtY29yZS9zcmMvbGliL3dpZGdldC1saWJyYXJ5L3NlY3Rpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7OztBQTBFcEUsTUFBTSxPQUFPLGdCQUFnQjtJQXZFN0I7UUF3RVUsUUFBRyxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBRzVDLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFFUCxlQUFVLEdBQUcsS0FBSyxDQUFNLFNBQVMsQ0FBQyxDQUFDO1FBQ25DLGdCQUFXLEdBQUcsS0FBSyxDQUFXLFNBQVMsQ0FBQyxDQUFDO1FBQ3pDLGNBQVMsR0FBRyxLQUFLLENBQVcsU0FBUyxDQUFDLENBQUM7S0ErQ2pEO0lBN0NDLElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDL0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxLQUFLLFNBQVMsQ0FBQyxDQUFDO1lBQzFELElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDO1FBQ25ELFFBQVEsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLElBQUksRUFBRTtZQUM5QixLQUFLLFVBQVUsQ0FBQztZQUFDLEtBQUssT0FBTyxDQUFDO1lBQUMsS0FBSyxLQUFLLENBQUM7WUFBQyxLQUFLLGtCQUFrQixDQUFDO1lBQ25FLEtBQUssY0FBYyxDQUFDO1lBQUMsS0FBSyxnQkFBZ0IsQ0FBQztZQUFDLEtBQUssZ0JBQWdCO2dCQUMvRCxJQUFJLENBQUMsYUFBYSxHQUFHLFVBQVUsQ0FBQztnQkFDbEMsTUFBTTtZQUNOLFNBQVMsa0VBQWtFO2dCQUN6RSxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztnQkFDN0IsTUFBTTtTQUNQO0lBQ0gsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFO1lBQUUsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7U0FBRTtJQUNsRSxDQUFDO0lBRUQsdUNBQXVDO0lBQ3ZDLCtDQUErQztJQUMvQyxnQkFBZ0IsQ0FBQyxTQUFpQjtRQUNoQyxNQUFNLFVBQVUsR0FDZCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsSUFBSSxLQUFLLE1BQU07WUFDakMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVztZQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sS0FBSyxNQUFNLENBQUM7UUFDbEMsSUFBSSxTQUFTLEtBQUssTUFBTSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQUUsT0FBTyxJQUFJLENBQUM7U0FBRTtRQUN6RCxRQUFRLFNBQVMsRUFBRTtZQUNqQixLQUFLLFNBQVM7Z0JBQ1osT0FBTyxVQUFVLENBQUM7WUFDcEIsS0FBSyxTQUFTO2dCQUNaLE9BQU8sVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUN6QyxLQUFLLGdCQUFnQixDQUFDO1lBQUMsS0FBSyxXQUFXO2dCQUNyQyxNQUFNLEtBQUssR0FBRyxDQUFDLGdCQUFnQixFQUFFLFdBQVcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDakUsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQztvQkFDMUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMzRCxLQUFLLGlCQUFpQixDQUFDO1lBQUMsS0FBSyxhQUFhLENBQUM7WUFBQyxLQUFLLGVBQWU7Z0JBQzlELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUNsQztJQUNILENBQUM7K0dBdERVLGdCQUFnQjttR0FBaEIsZ0JBQWdCLHVkQXBFakI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Z0JBNkRJOzs0RkFPSCxnQkFBZ0I7a0JBdkU1QixTQUFTOytCQUVFLGdCQUFnQixZQUNoQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztnQkE2REkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBKc29uU2NoZW1hRm9ybVNlcnZpY2UgfSBmcm9tICcuLi9qc29uLXNjaGVtYS1mb3JtLnNlcnZpY2UnO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpjb21wb25lbnQtc2VsZWN0b3JcclxuICBzZWxlY3RvcjogJ3NlY3Rpb24td2lkZ2V0JyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiAqbmdJZj1cImNvbnRhaW5lclR5cGUgPT09ICdkaXYnXCJcclxuICAgICAgW2NsYXNzXT1cIm9wdGlvbnM/Lmh0bWxDbGFzcyB8fCAnJ1wiXHJcbiAgICAgIFtjbGFzcy5leHBhbmRhYmxlXT1cIm9wdGlvbnM/LmV4cGFuZGFibGUgJiYgIWV4cGFuZGVkXCJcclxuICAgICAgW2NsYXNzLmV4cGFuZGVkXT1cIm9wdGlvbnM/LmV4cGFuZGFibGUgJiYgZXhwYW5kZWRcIj5cclxuICAgICAgPGxhYmVsICpuZ0lmPVwic2VjdGlvblRpdGxlXCJcclxuICAgICAgICBjbGFzcz1cImxlZ2VuZFwiXHJcbiAgICAgICAgW2NsYXNzXT1cIm9wdGlvbnM/LmxhYmVsSHRtbENsYXNzIHx8ICcnXCJcclxuICAgICAgICBbaW5uZXJIVE1MXT1cInNlY3Rpb25UaXRsZVwiXHJcbiAgICAgICAgKGNsaWNrKT1cInRvZ2dsZUV4cGFuZGVkKClcIj48L2xhYmVsPlxyXG4gICAgICA8cm9vdC13aWRnZXQgXHJcbiAgICAgICAgW2RhdGFJbmRleF09XCJkYXRhSW5kZXgoKVwiXHJcbiAgICAgICAgW2xheW91dF09XCJsYXlvdXROb2RlKCkuaXRlbXNcIlxyXG4gICAgICAgIFtsYXlvdXRJbmRleF09XCJsYXlvdXRJbmRleCgpXCJcclxuICAgICAgICBbaXNGbGV4SXRlbV09XCJnZXRGbGV4QXR0cmlidXRlKCdpcy1mbGV4JylcIlxyXG4gICAgICAgIFtpc09yZGVyYWJsZV09XCJvcHRpb25zPy5vcmRlcmFibGVcIlxyXG4gICAgICAgIFtjbGFzcy5mb3JtLWZsZXgtY29sdW1uXT1cImdldEZsZXhBdHRyaWJ1dGUoJ2ZsZXgtZGlyZWN0aW9uJykgPT09ICdjb2x1bW4nXCJcclxuICAgICAgICBbY2xhc3MuZm9ybS1mbGV4LXJvd109XCJnZXRGbGV4QXR0cmlidXRlKCdmbGV4LWRpcmVjdGlvbicpID09PSAncm93J1wiXHJcbiAgICAgICAgW3N0eWxlLmFsaWduLWNvbnRlbnRdPVwiZ2V0RmxleEF0dHJpYnV0ZSgnYWxpZ24tY29udGVudCcpXCJcclxuICAgICAgICBbc3R5bGUuYWxpZ24taXRlbXNdPVwiZ2V0RmxleEF0dHJpYnV0ZSgnYWxpZ24taXRlbXMnKVwiXHJcbiAgICAgICAgW3N0eWxlLmRpc3BsYXldPVwiIWV4cGFuZGVkPydub25lJzpnZXRGbGV4QXR0cmlidXRlKCdkaXNwbGF5JylcIlxyXG4gICAgICAgIFtzdHlsZS5mbGV4LWRpcmVjdGlvbl09XCJnZXRGbGV4QXR0cmlidXRlKCdmbGV4LWRpcmVjdGlvbicpXCJcclxuICAgICAgICBbc3R5bGUuZmxleC13cmFwXT1cImdldEZsZXhBdHRyaWJ1dGUoJ2ZsZXgtd3JhcCcpXCJcclxuICAgICAgICBbc3R5bGUuanVzdGlmeS1jb250ZW50XT1cImdldEZsZXhBdHRyaWJ1dGUoJ2p1c3RpZnktY29udGVudCcpXCI+PC9yb290LXdpZGdldD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGZpZWxkc2V0ICpuZ0lmPVwiY29udGFpbmVyVHlwZSA9PT0gJ2ZpZWxkc2V0J1wiXHJcbiAgICAgIFtjbGFzc109XCJvcHRpb25zPy5odG1sQ2xhc3MgfHwgJydcIlxyXG4gICAgICBbY2xhc3MuZXhwYW5kYWJsZV09XCJvcHRpb25zPy5leHBhbmRhYmxlICYmICFleHBhbmRlZFwiXHJcbiAgICAgIFtjbGFzcy5leHBhbmRlZF09XCJvcHRpb25zPy5leHBhbmRhYmxlICYmIGV4cGFuZGVkXCJcclxuICAgICAgW2Rpc2FibGVkXT1cIm9wdGlvbnM/LnJlYWRvbmx5XCI+XHJcbiAgICAgIDxsZWdlbmQgKm5nSWY9XCJzZWN0aW9uVGl0bGVcIlxyXG4gICAgICAgIGNsYXNzPVwibGVnZW5kXCJcclxuICAgICAgICBbY2xhc3NdPVwib3B0aW9ucz8ubGFiZWxIdG1sQ2xhc3MgfHwgJydcIlxyXG4gICAgICAgIFtpbm5lckhUTUxdPVwic2VjdGlvblRpdGxlXCJcclxuICAgICAgICAoY2xpY2spPVwidG9nZ2xlRXhwYW5kZWQoKVwiPjwvbGVnZW5kPlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwib3B0aW9ucz8ubWVzc2FnZUxvY2F0aW9uICE9PSAnYm90dG9tJ1wiPlxyXG4gICAgICAgIDxwICpuZ0lmPVwib3B0aW9ucz8uZGVzY3JpcHRpb25cIlxyXG4gICAgICAgIGNsYXNzPVwiaGVscC1ibG9ja1wiXHJcbiAgICAgICAgW2NsYXNzXT1cIm9wdGlvbnM/LmxhYmVsSGVscEJsb2NrQ2xhc3MgfHwgJydcIlxyXG4gICAgICAgIFtpbm5lckhUTUxdPVwib3B0aW9ucz8uZGVzY3JpcHRpb25cIj48L3A+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8cm9vdC13aWRnZXQgXHJcbiAgICAgICAgW2RhdGFJbmRleF09XCJkYXRhSW5kZXgoKVwiXHJcbiAgICAgICAgW2xheW91dF09XCJsYXlvdXROb2RlKCkuaXRlbXNcIlxyXG4gICAgICAgIFtsYXlvdXRJbmRleF09XCJsYXlvdXRJbmRleCgpXCJcclxuICAgICAgICBbaXNGbGV4SXRlbV09XCJnZXRGbGV4QXR0cmlidXRlKCdpcy1mbGV4JylcIlxyXG4gICAgICAgIFtpc09yZGVyYWJsZV09XCJvcHRpb25zPy5vcmRlcmFibGVcIlxyXG4gICAgICAgIFtjbGFzcy5mb3JtLWZsZXgtY29sdW1uXT1cImdldEZsZXhBdHRyaWJ1dGUoJ2ZsZXgtZGlyZWN0aW9uJykgPT09ICdjb2x1bW4nXCJcclxuICAgICAgICBbY2xhc3MuZm9ybS1mbGV4LXJvd109XCJnZXRGbGV4QXR0cmlidXRlKCdmbGV4LWRpcmVjdGlvbicpID09PSAncm93J1wiXHJcbiAgICAgICAgW3N0eWxlLmFsaWduLWNvbnRlbnRdPVwiZ2V0RmxleEF0dHJpYnV0ZSgnYWxpZ24tY29udGVudCcpXCJcclxuICAgICAgICBbc3R5bGUuYWxpZ24taXRlbXNdPVwiZ2V0RmxleEF0dHJpYnV0ZSgnYWxpZ24taXRlbXMnKVwiXHJcbiAgICAgICAgW3N0eWxlLmRpc3BsYXldPVwiIWV4cGFuZGVkPydub25lJzpnZXRGbGV4QXR0cmlidXRlKCdkaXNwbGF5JylcIlxyXG4gICAgICAgIFtzdHlsZS5mbGV4LWRpcmVjdGlvbl09XCJnZXRGbGV4QXR0cmlidXRlKCdmbGV4LWRpcmVjdGlvbicpXCJcclxuICAgICAgICBbc3R5bGUuZmxleC13cmFwXT1cImdldEZsZXhBdHRyaWJ1dGUoJ2ZsZXgtd3JhcCcpXCJcclxuICAgICAgICBbc3R5bGUuanVzdGlmeS1jb250ZW50XT1cImdldEZsZXhBdHRyaWJ1dGUoJ2p1c3RpZnktY29udGVudCcpXCI+PC9yb290LXdpZGdldD5cclxuICAgICAgPGRpdiAqbmdJZj1cIm9wdGlvbnM/Lm1lc3NhZ2VMb2NhdGlvbiA9PT0gJ2JvdHRvbSdcIj5cclxuICAgICAgICA8cCAqbmdJZj1cIm9wdGlvbnM/LmRlc2NyaXB0aW9uXCJcclxuICAgICAgICBjbGFzcz1cImhlbHAtYmxvY2tcIlxyXG4gICAgICAgIFtjbGFzc109XCJvcHRpb25zPy5sYWJlbEhlbHBCbG9ja0NsYXNzIHx8ICcnXCJcclxuICAgICAgICBbaW5uZXJIVE1MXT1cIm9wdGlvbnM/LmRlc2NyaXB0aW9uXCI+PC9wPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZmllbGRzZXQ+YCxcclxuICBzdHlsZXM6IFtgXHJcbiAgICAubGVnZW5kIHsgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cclxuICAgIC5leHBhbmRhYmxlID4gbGVnZW5kOmJlZm9yZSwgLmV4cGFuZGFibGUgPiBsYWJlbDpiZWZvcmUgIHsgY29udGVudDogJ+KWtic7IHBhZGRpbmctcmlnaHQ6IC4zZW07IGZvbnQtZmFtaWx5OmF1dG8gfVxyXG4gICAgLmV4cGFuZGVkID4gbGVnZW5kOmJlZm9yZSwgLmV4cGFuZGVkID4gbGFiZWw6YmVmb3JlICB7IGNvbnRlbnQ6ICfilrwnOyBwYWRkaW5nLXJpZ2h0OiAuMmVtOyB9XHJcbiAgYF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZWN0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBwcml2YXRlIGpzZiA9IGluamVjdChKc29uU2NoZW1hRm9ybVNlcnZpY2UpO1xyXG5cclxuICBvcHRpb25zOiBhbnk7XHJcbiAgZXhwYW5kZWQgPSB0cnVlO1xyXG4gIGNvbnRhaW5lclR5cGU6IHN0cmluZztcclxuICByZWFkb25seSBsYXlvdXROb2RlID0gaW5wdXQ8YW55Pih1bmRlZmluZWQpO1xyXG4gIHJlYWRvbmx5IGxheW91dEluZGV4ID0gaW5wdXQ8bnVtYmVyW10+KHVuZGVmaW5lZCk7XHJcbiAgcmVhZG9ubHkgZGF0YUluZGV4ID0gaW5wdXQ8bnVtYmVyW10+KHVuZGVmaW5lZCk7XHJcblxyXG4gIGdldCBzZWN0aW9uVGl0bGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5vcHRpb25zLm5vdGl0bGUgPyBudWxsIDogdGhpcy5qc2Yuc2V0SXRlbVRpdGxlKHRoaXMpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmpzZi5pbml0aWFsaXplQ29udHJvbCh0aGlzKTtcclxuICAgIHRoaXMub3B0aW9ucyA9IHRoaXMubGF5b3V0Tm9kZSgpLm9wdGlvbnMgfHwge307XHJcbiAgICB0aGlzLmV4cGFuZGVkID0gdHlwZW9mIHRoaXMub3B0aW9ucy5leHBhbmRlZCA9PT0gJ2Jvb2xlYW4nID9cclxuICAgICAgdGhpcy5vcHRpb25zLmV4cGFuZGVkIDogIXRoaXMub3B0aW9ucy5leHBhbmRhYmxlO1xyXG4gICAgc3dpdGNoICh0aGlzLmxheW91dE5vZGUoKS50eXBlKSB7XHJcbiAgICAgIGNhc2UgJ2ZpZWxkc2V0JzogY2FzZSAnYXJyYXknOiBjYXNlICd0YWInOiBjYXNlICdhZHZhbmNlZGZpZWxkc2V0JzpcclxuICAgICAgY2FzZSAnYXV0aGZpZWxkc2V0JzogY2FzZSAnb3B0aW9uZmllbGRzZXQnOiBjYXNlICdzZWxlY3RmaWVsZHNldCc6XHJcbiAgICAgICAgdGhpcy5jb250YWluZXJUeXBlID0gJ2ZpZWxkc2V0JztcclxuICAgICAgYnJlYWs7XHJcbiAgICAgIGRlZmF1bHQ6IC8vICdkaXYnLCAnZmxleCcsICdzZWN0aW9uJywgJ2NvbmRpdGlvbmFsJywgJ2FjdGlvbnMnLCAndGFnc2lucHV0J1xyXG4gICAgICAgIHRoaXMuY29udGFpbmVyVHlwZSA9ICdkaXYnO1xyXG4gICAgICBicmVhaztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRvZ2dsZUV4cGFuZGVkKCkge1xyXG4gICAgaWYgKHRoaXMub3B0aW9ucy5leHBhbmRhYmxlKSB7IHRoaXMuZXhwYW5kZWQgPSAhdGhpcy5leHBhbmRlZDsgfVxyXG4gIH1cclxuXHJcbiAgLy8gU2V0IGF0dHJpYnV0ZXMgZm9yIGZsZXhib3ggY29udGFpbmVyXHJcbiAgLy8gKGNoaWxkIGF0dHJpYnV0ZXMgYXJlIHNldCBpbiByb290LmNvbXBvbmVudClcclxuICBnZXRGbGV4QXR0cmlidXRlKGF0dHJpYnV0ZTogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBmbGV4QWN0aXZlOiBib29sZWFuID1cclxuICAgICAgdGhpcy5sYXlvdXROb2RlKCkudHlwZSA9PT0gJ2ZsZXgnIHx8XHJcbiAgICAgICEhdGhpcy5vcHRpb25zLmRpc3BsYXlGbGV4IHx8XHJcbiAgICAgIHRoaXMub3B0aW9ucy5kaXNwbGF5ID09PSAnZmxleCc7XHJcbiAgICBpZiAoYXR0cmlidXRlICE9PSAnZmxleCcgJiYgIWZsZXhBY3RpdmUpIHsgcmV0dXJuIG51bGw7IH1cclxuICAgIHN3aXRjaCAoYXR0cmlidXRlKSB7XHJcbiAgICAgIGNhc2UgJ2lzLWZsZXgnOlxyXG4gICAgICAgIHJldHVybiBmbGV4QWN0aXZlO1xyXG4gICAgICBjYXNlICdkaXNwbGF5JzpcclxuICAgICAgICByZXR1cm4gZmxleEFjdGl2ZSA/ICdmbGV4JyA6ICdpbml0aWFsJztcclxuICAgICAgY2FzZSAnZmxleC1kaXJlY3Rpb24nOiBjYXNlICdmbGV4LXdyYXAnOlxyXG4gICAgICAgIGNvbnN0IGluZGV4ID0gWydmbGV4LWRpcmVjdGlvbicsICdmbGV4LXdyYXAnXS5pbmRleE9mKGF0dHJpYnV0ZSk7XHJcbiAgICAgICAgcmV0dXJuICh0aGlzLm9wdGlvbnNbJ2ZsZXgtZmxvdyddIHx8ICcnKS5zcGxpdCgvXFxzKy8pW2luZGV4XSB8fFxyXG4gICAgICAgICAgdGhpcy5vcHRpb25zW2F0dHJpYnV0ZV0gfHwgWydjb2x1bW4nLCAnbm93cmFwJ11baW5kZXhdO1xyXG4gICAgICBjYXNlICdqdXN0aWZ5LWNvbnRlbnQnOiBjYXNlICdhbGlnbi1pdGVtcyc6IGNhc2UgJ2FsaWduLWNvbnRlbnQnOlxyXG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnNbYXR0cmlidXRlXTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|
|
196
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1mb3Jtd29ya3MtY29yZS9zcmMvbGliL3dpZGdldC1saWJyYXJ5L3NlY3Rpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7OztBQTBFcEUsTUFBTSxPQUFPLGdCQUFnQjtJQXZFN0I7UUF3RVUsUUFBRyxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBRzVDLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFFUCxlQUFVLEdBQUcsS0FBSyxDQUFNLFNBQVMsQ0FBQyxDQUFDO1FBQ25DLGdCQUFXLEdBQUcsS0FBSyxDQUFXLFNBQVMsQ0FBQyxDQUFDO1FBQ3pDLGNBQVMsR0FBRyxLQUFLLENBQVcsU0FBUyxDQUFDLENBQUM7S0FpRGpEO0lBL0NDLElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUlELFFBQVE7UUFDTixJQUFJLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDL0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxLQUFLLFNBQVMsQ0FBQyxDQUFDO1lBQzFELElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDO1FBQ25ELFFBQVEsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLElBQUksRUFBRTtZQUM5QixLQUFLLFVBQVUsQ0FBQztZQUFDLEtBQUssT0FBTyxDQUFDO1lBQUMsS0FBSyxLQUFLLENBQUM7WUFBQyxLQUFLLGtCQUFrQixDQUFDO1lBQ25FLEtBQUssY0FBYyxDQUFDO1lBQUMsS0FBSyxnQkFBZ0IsQ0FBQztZQUFDLEtBQUssZ0JBQWdCO2dCQUMvRCxJQUFJLENBQUMsYUFBYSxHQUFHLFVBQVUsQ0FBQztnQkFDbEMsTUFBTTtZQUNOLFNBQVMsa0VBQWtFO2dCQUN6RSxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztnQkFDN0IsTUFBTTtTQUNQO0lBQ0gsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFO1lBQUUsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7U0FBRTtJQUNsRSxDQUFDO0lBRUQsdUNBQXVDO0lBQ3ZDLCtDQUErQztJQUMvQyxnQkFBZ0IsQ0FBQyxTQUFpQjtRQUNoQyxNQUFNLFVBQVUsR0FDZCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsSUFBSSxLQUFLLE1BQU07WUFDakMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVztZQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sS0FBSyxNQUFNLENBQUM7UUFDbEMsSUFBSSxTQUFTLEtBQUssTUFBTSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQUUsT0FBTyxJQUFJLENBQUM7U0FBRTtRQUN6RCxRQUFRLFNBQVMsRUFBRTtZQUNqQixLQUFLLFNBQVM7Z0JBQ1osT0FBTyxVQUFVLENBQUM7WUFDcEIsS0FBSyxTQUFTO2dCQUNaLE9BQU8sVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUN6QyxLQUFLLGdCQUFnQixDQUFDO1lBQUMsS0FBSyxXQUFXO2dCQUNyQyxNQUFNLEtBQUssR0FBRyxDQUFDLGdCQUFnQixFQUFFLFdBQVcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDakUsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQztvQkFDMUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMzRCxLQUFLLGlCQUFpQixDQUFDO1lBQUMsS0FBSyxhQUFhLENBQUM7WUFBQyxLQUFLLGVBQWU7Z0JBQzlELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUNsQztJQUNILENBQUM7K0dBeERVLGdCQUFnQjttR0FBaEIsZ0JBQWdCLHVkQXBFakI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Z0JBNkRJOzs0RkFPSCxnQkFBZ0I7a0JBdkU1QixTQUFTOytCQUVFLGdCQUFnQixZQUNoQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztnQkE2REkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBKc29uU2NoZW1hRm9ybVNlcnZpY2UgfSBmcm9tICcuLi9qc29uLXNjaGVtYS1mb3JtLnNlcnZpY2UnO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpjb21wb25lbnQtc2VsZWN0b3JcclxuICBzZWxlY3RvcjogJ3NlY3Rpb24td2lkZ2V0JyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiAqbmdJZj1cImNvbnRhaW5lclR5cGUgPT09ICdkaXYnXCJcclxuICAgICAgW2NsYXNzXT1cIm9wdGlvbnM/Lmh0bWxDbGFzcyB8fCAnJ1wiXHJcbiAgICAgIFtjbGFzcy5leHBhbmRhYmxlXT1cIm9wdGlvbnM/LmV4cGFuZGFibGUgJiYgIWV4cGFuZGVkXCJcclxuICAgICAgW2NsYXNzLmV4cGFuZGVkXT1cIm9wdGlvbnM/LmV4cGFuZGFibGUgJiYgZXhwYW5kZWRcIj5cclxuICAgICAgPGxhYmVsICpuZ0lmPVwic2VjdGlvblRpdGxlXCJcclxuICAgICAgICBjbGFzcz1cImxlZ2VuZFwiXHJcbiAgICAgICAgW2NsYXNzXT1cIm9wdGlvbnM/LmxhYmVsSHRtbENsYXNzIHx8ICcnXCJcclxuICAgICAgICBbaW5uZXJIVE1MXT1cInNlY3Rpb25UaXRsZVwiXHJcbiAgICAgICAgKGNsaWNrKT1cInRvZ2dsZUV4cGFuZGVkKClcIj48L2xhYmVsPlxyXG4gICAgICA8cm9vdC13aWRnZXQgXHJcbiAgICAgICAgW2RhdGFJbmRleF09XCJkYXRhSW5kZXgoKVwiXHJcbiAgICAgICAgW2xheW91dF09XCJsYXlvdXROb2RlKCkuaXRlbXNcIlxyXG4gICAgICAgIFtsYXlvdXRJbmRleF09XCJsYXlvdXRJbmRleCgpXCJcclxuICAgICAgICBbaXNGbGV4SXRlbV09XCJnZXRGbGV4QXR0cmlidXRlKCdpcy1mbGV4JylcIlxyXG4gICAgICAgIFtpc09yZGVyYWJsZV09XCJvcHRpb25zPy5vcmRlcmFibGVcIlxyXG4gICAgICAgIFtjbGFzcy5mb3JtLWZsZXgtY29sdW1uXT1cImdldEZsZXhBdHRyaWJ1dGUoJ2ZsZXgtZGlyZWN0aW9uJykgPT09ICdjb2x1bW4nXCJcclxuICAgICAgICBbY2xhc3MuZm9ybS1mbGV4LXJvd109XCJnZXRGbGV4QXR0cmlidXRlKCdmbGV4LWRpcmVjdGlvbicpID09PSAncm93J1wiXHJcbiAgICAgICAgW3N0eWxlLmFsaWduLWNvbnRlbnRdPVwiZ2V0RmxleEF0dHJpYnV0ZSgnYWxpZ24tY29udGVudCcpXCJcclxuICAgICAgICBbc3R5bGUuYWxpZ24taXRlbXNdPVwiZ2V0RmxleEF0dHJpYnV0ZSgnYWxpZ24taXRlbXMnKVwiXHJcbiAgICAgICAgW3N0eWxlLmRpc3BsYXldPVwiIWV4cGFuZGVkPydub25lJzpnZXRGbGV4QXR0cmlidXRlKCdkaXNwbGF5JylcIlxyXG4gICAgICAgIFtzdHlsZS5mbGV4LWRpcmVjdGlvbl09XCJnZXRGbGV4QXR0cmlidXRlKCdmbGV4LWRpcmVjdGlvbicpXCJcclxuICAgICAgICBbc3R5bGUuZmxleC13cmFwXT1cImdldEZsZXhBdHRyaWJ1dGUoJ2ZsZXgtd3JhcCcpXCJcclxuICAgICAgICBbc3R5bGUuanVzdGlmeS1jb250ZW50XT1cImdldEZsZXhBdHRyaWJ1dGUoJ2p1c3RpZnktY29udGVudCcpXCI+PC9yb290LXdpZGdldD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGZpZWxkc2V0ICpuZ0lmPVwiY29udGFpbmVyVHlwZSA9PT0gJ2ZpZWxkc2V0J1wiXHJcbiAgICAgIFtjbGFzc109XCJvcHRpb25zPy5odG1sQ2xhc3MgfHwgJydcIlxyXG4gICAgICBbY2xhc3MuZXhwYW5kYWJsZV09XCJvcHRpb25zPy5leHBhbmRhYmxlICYmICFleHBhbmRlZFwiXHJcbiAgICAgIFtjbGFzcy5leHBhbmRlZF09XCJvcHRpb25zPy5leHBhbmRhYmxlICYmIGV4cGFuZGVkXCJcclxuICAgICAgW2Rpc2FibGVkXT1cIm9wdGlvbnM/LnJlYWRvbmx5XCI+XHJcbiAgICAgIDxsZWdlbmQgKm5nSWY9XCJzZWN0aW9uVGl0bGVcIlxyXG4gICAgICAgIGNsYXNzPVwibGVnZW5kXCJcclxuICAgICAgICBbY2xhc3NdPVwib3B0aW9ucz8ubGFiZWxIdG1sQ2xhc3MgfHwgJydcIlxyXG4gICAgICAgIFtpbm5lckhUTUxdPVwic2VjdGlvblRpdGxlXCJcclxuICAgICAgICAoY2xpY2spPVwidG9nZ2xlRXhwYW5kZWQoKVwiPjwvbGVnZW5kPlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwib3B0aW9ucz8ubWVzc2FnZUxvY2F0aW9uICE9PSAnYm90dG9tJ1wiPlxyXG4gICAgICAgIDxwICpuZ0lmPVwib3B0aW9ucz8uZGVzY3JpcHRpb25cIlxyXG4gICAgICAgIGNsYXNzPVwiaGVscC1ibG9ja1wiXHJcbiAgICAgICAgW2NsYXNzXT1cIm9wdGlvbnM/LmxhYmVsSGVscEJsb2NrQ2xhc3MgfHwgJydcIlxyXG4gICAgICAgIFtpbm5lckhUTUxdPVwib3B0aW9ucz8uZGVzY3JpcHRpb25cIj48L3A+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8cm9vdC13aWRnZXQgXHJcbiAgICAgICAgW2RhdGFJbmRleF09XCJkYXRhSW5kZXgoKVwiXHJcbiAgICAgICAgW2xheW91dF09XCJsYXlvdXROb2RlKCkuaXRlbXNcIlxyXG4gICAgICAgIFtsYXlvdXRJbmRleF09XCJsYXlvdXRJbmRleCgpXCJcclxuICAgICAgICBbaXNGbGV4SXRlbV09XCJnZXRGbGV4QXR0cmlidXRlKCdpcy1mbGV4JylcIlxyXG4gICAgICAgIFtpc09yZGVyYWJsZV09XCJvcHRpb25zPy5vcmRlcmFibGVcIlxyXG4gICAgICAgIFtjbGFzcy5mb3JtLWZsZXgtY29sdW1uXT1cImdldEZsZXhBdHRyaWJ1dGUoJ2ZsZXgtZGlyZWN0aW9uJykgPT09ICdjb2x1bW4nXCJcclxuICAgICAgICBbY2xhc3MuZm9ybS1mbGV4LXJvd109XCJnZXRGbGV4QXR0cmlidXRlKCdmbGV4LWRpcmVjdGlvbicpID09PSAncm93J1wiXHJcbiAgICAgICAgW3N0eWxlLmFsaWduLWNvbnRlbnRdPVwiZ2V0RmxleEF0dHJpYnV0ZSgnYWxpZ24tY29udGVudCcpXCJcclxuICAgICAgICBbc3R5bGUuYWxpZ24taXRlbXNdPVwiZ2V0RmxleEF0dHJpYnV0ZSgnYWxpZ24taXRlbXMnKVwiXHJcbiAgICAgICAgW3N0eWxlLmRpc3BsYXldPVwiIWV4cGFuZGVkPydub25lJzpnZXRGbGV4QXR0cmlidXRlKCdkaXNwbGF5JylcIlxyXG4gICAgICAgIFtzdHlsZS5mbGV4LWRpcmVjdGlvbl09XCJnZXRGbGV4QXR0cmlidXRlKCdmbGV4LWRpcmVjdGlvbicpXCJcclxuICAgICAgICBbc3R5bGUuZmxleC13cmFwXT1cImdldEZsZXhBdHRyaWJ1dGUoJ2ZsZXgtd3JhcCcpXCJcclxuICAgICAgICBbc3R5bGUuanVzdGlmeS1jb250ZW50XT1cImdldEZsZXhBdHRyaWJ1dGUoJ2p1c3RpZnktY29udGVudCcpXCI+PC9yb290LXdpZGdldD5cclxuICAgICAgPGRpdiAqbmdJZj1cIm9wdGlvbnM/Lm1lc3NhZ2VMb2NhdGlvbiA9PT0gJ2JvdHRvbSdcIj5cclxuICAgICAgICA8cCAqbmdJZj1cIm9wdGlvbnM/LmRlc2NyaXB0aW9uXCJcclxuICAgICAgICBjbGFzcz1cImhlbHAtYmxvY2tcIlxyXG4gICAgICAgIFtjbGFzc109XCJvcHRpb25zPy5sYWJlbEhlbHBCbG9ja0NsYXNzIHx8ICcnXCJcclxuICAgICAgICBbaW5uZXJIVE1MXT1cIm9wdGlvbnM/LmRlc2NyaXB0aW9uXCI+PC9wPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZmllbGRzZXQ+YCxcclxuICBzdHlsZXM6IFtgXHJcbiAgICAubGVnZW5kIHsgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cclxuICAgIC5leHBhbmRhYmxlID4gbGVnZW5kOmJlZm9yZSwgLmV4cGFuZGFibGUgPiBsYWJlbDpiZWZvcmUgIHsgY29udGVudDogJ+KWtic7IHBhZGRpbmctcmlnaHQ6IC4zZW07IGZvbnQtZmFtaWx5OmF1dG8gfVxyXG4gICAgLmV4cGFuZGVkID4gbGVnZW5kOmJlZm9yZSwgLmV4cGFuZGVkID4gbGFiZWw6YmVmb3JlICB7IGNvbnRlbnQ6ICfilrwnOyBwYWRkaW5nLXJpZ2h0OiAuMmVtOyB9XHJcbiAgYF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZWN0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBwcml2YXRlIGpzZiA9IGluamVjdChKc29uU2NoZW1hRm9ybVNlcnZpY2UpO1xyXG5cclxuICBvcHRpb25zOiBhbnk7XHJcbiAgZXhwYW5kZWQgPSB0cnVlO1xyXG4gIGNvbnRhaW5lclR5cGU6IHN0cmluZztcclxuICByZWFkb25seSBsYXlvdXROb2RlID0gaW5wdXQ8YW55Pih1bmRlZmluZWQpO1xyXG4gIHJlYWRvbmx5IGxheW91dEluZGV4ID0gaW5wdXQ8bnVtYmVyW10+KHVuZGVmaW5lZCk7XHJcbiAgcmVhZG9ubHkgZGF0YUluZGV4ID0gaW5wdXQ8bnVtYmVyW10+KHVuZGVmaW5lZCk7XHJcblxyXG4gIGdldCBzZWN0aW9uVGl0bGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5vcHRpb25zLm5vdGl0bGUgPyBudWxsIDogdGhpcy5qc2Yuc2V0SXRlbVRpdGxlKHRoaXMpO1xyXG4gIH1cclxuXHJcblxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuanNmLmluaXRpYWxpemVDb250cm9sKHRoaXMpO1xyXG4gICAgdGhpcy5vcHRpb25zID0gdGhpcy5sYXlvdXROb2RlKCkub3B0aW9ucyB8fCB7fTtcclxuICAgIHRoaXMuZXhwYW5kZWQgPSB0eXBlb2YgdGhpcy5vcHRpb25zLmV4cGFuZGVkID09PSAnYm9vbGVhbicgP1xyXG4gICAgICB0aGlzLm9wdGlvbnMuZXhwYW5kZWQgOiAhdGhpcy5vcHRpb25zLmV4cGFuZGFibGU7XHJcbiAgICBzd2l0Y2ggKHRoaXMubGF5b3V0Tm9kZSgpLnR5cGUpIHtcclxuICAgICAgY2FzZSAnZmllbGRzZXQnOiBjYXNlICdhcnJheSc6IGNhc2UgJ3RhYic6IGNhc2UgJ2FkdmFuY2VkZmllbGRzZXQnOlxyXG4gICAgICBjYXNlICdhdXRoZmllbGRzZXQnOiBjYXNlICdvcHRpb25maWVsZHNldCc6IGNhc2UgJ3NlbGVjdGZpZWxkc2V0JzpcclxuICAgICAgICB0aGlzLmNvbnRhaW5lclR5cGUgPSAnZmllbGRzZXQnO1xyXG4gICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDogLy8gJ2RpdicsICdmbGV4JywgJ3NlY3Rpb24nLCAnY29uZGl0aW9uYWwnLCAnYWN0aW9ucycsICd0YWdzaW5wdXQnXHJcbiAgICAgICAgdGhpcy5jb250YWluZXJUeXBlID0gJ2Rpdic7XHJcbiAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdG9nZ2xlRXhwYW5kZWQoKSB7XHJcbiAgICBpZiAodGhpcy5vcHRpb25zLmV4cGFuZGFibGUpIHsgdGhpcy5leHBhbmRlZCA9ICF0aGlzLmV4cGFuZGVkOyB9XHJcbiAgfVxyXG5cclxuICAvLyBTZXQgYXR0cmlidXRlcyBmb3IgZmxleGJveCBjb250YWluZXJcclxuICAvLyAoY2hpbGQgYXR0cmlidXRlcyBhcmUgc2V0IGluIHJvb3QuY29tcG9uZW50KVxyXG4gIGdldEZsZXhBdHRyaWJ1dGUoYXR0cmlidXRlOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IGZsZXhBY3RpdmU6IGJvb2xlYW4gPVxyXG4gICAgICB0aGlzLmxheW91dE5vZGUoKS50eXBlID09PSAnZmxleCcgfHxcclxuICAgICAgISF0aGlzLm9wdGlvbnMuZGlzcGxheUZsZXggfHxcclxuICAgICAgdGhpcy5vcHRpb25zLmRpc3BsYXkgPT09ICdmbGV4JztcclxuICAgIGlmIChhdHRyaWJ1dGUgIT09ICdmbGV4JyAmJiAhZmxleEFjdGl2ZSkgeyByZXR1cm4gbnVsbDsgfVxyXG4gICAgc3dpdGNoIChhdHRyaWJ1dGUpIHtcclxuICAgICAgY2FzZSAnaXMtZmxleCc6XHJcbiAgICAgICAgcmV0dXJuIGZsZXhBY3RpdmU7XHJcbiAgICAgIGNhc2UgJ2Rpc3BsYXknOlxyXG4gICAgICAgIHJldHVybiBmbGV4QWN0aXZlID8gJ2ZsZXgnIDogJ2luaXRpYWwnO1xyXG4gICAgICBjYXNlICdmbGV4LWRpcmVjdGlvbic6IGNhc2UgJ2ZsZXgtd3JhcCc6XHJcbiAgICAgICAgY29uc3QgaW5kZXggPSBbJ2ZsZXgtZGlyZWN0aW9uJywgJ2ZsZXgtd3JhcCddLmluZGV4T2YoYXR0cmlidXRlKTtcclxuICAgICAgICByZXR1cm4gKHRoaXMub3B0aW9uc1snZmxleC1mbG93J10gfHwgJycpLnNwbGl0KC9cXHMrLylbaW5kZXhdIHx8XHJcbiAgICAgICAgICB0aGlzLm9wdGlvbnNbYXR0cmlidXRlXSB8fCBbJ2NvbHVtbicsICdub3dyYXAnXVtpbmRleF07XHJcbiAgICAgIGNhc2UgJ2p1c3RpZnktY29udGVudCc6IGNhc2UgJ2FsaWduLWl0ZW1zJzogY2FzZSAnYWxpZ24tY29udGVudCc6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9uc1thdHRyaWJ1dGVdO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { Component, ViewContainerRef, inject, input, viewChild } from '@angular/core';
|
|
1
|
+
import { ChangeDetectorRef, Component, ViewContainerRef, inject, input, viewChild } from '@angular/core';
|
|
2
2
|
import { JsonSchemaFormService } from '../json-schema-form.service';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export class SelectFrameworkComponent {
|
|
5
5
|
constructor() {
|
|
6
6
|
this.jsf = inject(JsonSchemaFormService);
|
|
7
|
+
this.changeDetectorRef = inject(ChangeDetectorRef);
|
|
7
8
|
this.newComponent = null;
|
|
8
9
|
this.layoutNode = input(undefined);
|
|
9
10
|
this.layoutIndex = input(undefined);
|
|
@@ -13,7 +14,7 @@ export class SelectFrameworkComponent {
|
|
|
13
14
|
ngOnInit() {
|
|
14
15
|
this.updateComponent();
|
|
15
16
|
}
|
|
16
|
-
ngOnChanges() {
|
|
17
|
+
ngOnChanges(changes) {
|
|
17
18
|
this.updateComponent();
|
|
18
19
|
}
|
|
19
20
|
updateComponent() {
|
|
@@ -24,9 +25,12 @@ export class SelectFrameworkComponent {
|
|
|
24
25
|
//this.widgetContainer.createComponent<any>(this.jsf.framework)
|
|
25
26
|
}
|
|
26
27
|
if (this.newComponent) {
|
|
27
|
-
for (const
|
|
28
|
-
this.newComponent.instance[
|
|
28
|
+
for (const inp of ['layoutNode', 'layoutIndex', 'dataIndex']) {
|
|
29
|
+
//this.newComponent.instance[inp] = this[inp];
|
|
30
|
+
this.newComponent.setInput(inp, this[inp]());
|
|
29
31
|
}
|
|
32
|
+
// Manually trigger change detection after updating inputs
|
|
33
|
+
//this.changeDetectorRef.detectChanges();
|
|
30
34
|
}
|
|
31
35
|
}
|
|
32
36
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SelectFrameworkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
@@ -40,4 +44,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
40
44
|
template: `<div #widgetContainer></div>`,
|
|
41
45
|
}]
|
|
42
46
|
}] });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWZyYW1ld29yay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1mb3Jtd29ya3MtY29yZS9zcmMvbGliL3dpZGdldC1saWJyYXJ5L3NlbGVjdC1mcmFtZXdvcmsuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQW1DLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFJLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQU9wRSxNQUFNLE9BQU8sd0JBQXdCO0lBTHJDO1FBTVUsUUFBRyxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQ3BDLHNCQUFpQixHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ3RELGlCQUFZLEdBQXNCLElBQUksQ0FBQztRQUM5QixlQUFVLEdBQUcsS0FBSyxDQUFNLFNBQVMsQ0FBQyxDQUFDO1FBQ25DLGdCQUFXLEdBQUcsS0FBSyxDQUFXLFNBQVMsQ0FBQyxDQUFDO1FBQ3pDLGNBQVMsR0FBRyxLQUFLLENBQVcsU0FBUyxDQUFDLENBQUM7UUFDdkMsb0JBQWUsR0FBRyxTQUFTLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO0tBMkJyRjtJQXpCQyxRQUFRO1FBQ04sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBTztRQUNqQixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELGVBQWU7UUFDYixNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDL0MsSUFBSSxlQUFlLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFO1lBQy9ELElBQUksQ0FBQyxZQUFZLEdBQUcsZUFBZSxDQUFDLGVBQWUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQ3ZFLENBQUM7WUFDRix5Q0FBeUM7WUFDekMsK0RBQStEO1NBQ2hFO1FBQ0QsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLEtBQUssTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFLFdBQVcsQ0FBQyxFQUFFO2dCQUM1RCw4Q0FBOEM7Z0JBQzlDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQzdDO1lBQ0QsMERBQTBEO1lBQzFELHlDQUF5QztTQUMxQztJQUNILENBQUM7K0dBakNVLHdCQUF3QjttR0FBeEIsd0JBQXdCLCtqQkFPNkIsZ0JBQWdCLGtFQVR0RSw4QkFBOEI7OzRGQUU3Qix3QkFBd0I7a0JBTHBDLFNBQVM7bUJBQUM7b0JBQ1QsOENBQThDO29CQUM5QyxRQUFRLEVBQUUseUJBQXlCO29CQUNuQyxRQUFRLEVBQUUsOEJBQThCO2lCQUN6QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENvbXBvbmVudFJlZiwgT25DaGFuZ2VzLCBPbkluaXQsIFZpZXdDb250YWluZXJSZWYsIGluamVjdCwgaW5wdXQsIHZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgSnNvblNjaGVtYUZvcm1TZXJ2aWNlIH0gZnJvbSAnLi4vanNvbi1zY2hlbWEtZm9ybS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpjb21wb25lbnQtc2VsZWN0b3JcclxuICBzZWxlY3RvcjogJ3NlbGVjdC1mcmFtZXdvcmstd2lkZ2V0JyxcclxuICB0ZW1wbGF0ZTogYDxkaXYgI3dpZGdldENvbnRhaW5lcj48L2Rpdj5gLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VsZWN0RnJhbWV3b3JrQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQge1xyXG4gIHByaXZhdGUganNmID0gaW5qZWN0KEpzb25TY2hlbWFGb3JtU2VydmljZSk7XHJcbiAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZiA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XHJcbiAgbmV3Q29tcG9uZW50OiBDb21wb25lbnRSZWY8YW55PiA9IG51bGw7XHJcbiAgcmVhZG9ubHkgbGF5b3V0Tm9kZSA9IGlucHV0PGFueT4odW5kZWZpbmVkKTtcclxuICByZWFkb25seSBsYXlvdXRJbmRleCA9IGlucHV0PG51bWJlcltdPih1bmRlZmluZWQpO1xyXG4gIHJlYWRvbmx5IGRhdGFJbmRleCA9IGlucHV0PG51bWJlcltdPih1bmRlZmluZWQpO1xyXG4gIHJlYWRvbmx5IHdpZGdldENvbnRhaW5lciA9IHZpZXdDaGlsZCgnd2lkZ2V0Q29udGFpbmVyJywgeyByZWFkOiBWaWV3Q29udGFpbmVyUmVmIH0pO1xyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMudXBkYXRlQ29tcG9uZW50KCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzKSB7XHJcbiAgICB0aGlzLnVwZGF0ZUNvbXBvbmVudCgpO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlQ29tcG9uZW50KCkge1xyXG4gICAgY29uc3Qgd2lkZ2V0Q29udGFpbmVyID0gdGhpcy53aWRnZXRDb250YWluZXIoKTtcclxuICAgIGlmICh3aWRnZXRDb250YWluZXIgJiYgIXRoaXMubmV3Q29tcG9uZW50ICYmIHRoaXMuanNmLmZyYW1ld29yaykge1xyXG4gICAgICB0aGlzLm5ld0NvbXBvbmVudCA9IHdpZGdldENvbnRhaW5lci5jcmVhdGVDb21wb25lbnQoKHRoaXMuanNmLmZyYW1ld29yaylcclxuICAgICAgKTtcclxuICAgICAgLy9UT0RPIGZpeCBhbGwgZGVwcmVjYXRlZCBjYWxscyBhbmQgdGVzdCBcclxuICAgICAgLy90aGlzLndpZGdldENvbnRhaW5lci5jcmVhdGVDb21wb25lbnQ8YW55Pih0aGlzLmpzZi5mcmFtZXdvcmspXHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5uZXdDb21wb25lbnQpIHtcclxuICAgICAgZm9yIChjb25zdCBpbnAgb2YgWydsYXlvdXROb2RlJywgJ2xheW91dEluZGV4JywgJ2RhdGFJbmRleCddKSB7XHJcbiAgICAgICAgLy90aGlzLm5ld0NvbXBvbmVudC5pbnN0YW5jZVtpbnBdID0gdGhpc1tpbnBdO1xyXG4gICAgICAgIHRoaXMubmV3Q29tcG9uZW50LnNldElucHV0KGlucCx0aGlzW2lucF0oKSk7XHJcbiAgICAgIH1cclxuICAgICAgLy8gTWFudWFsbHkgdHJpZ2dlciBjaGFuZ2UgZGV0ZWN0aW9uIGFmdGVyIHVwZGF0aW5nIGlucHV0c1xyXG4gICAgICAvL3RoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|