@kiwibit/chart 17.0.0 → 18.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +82 -6
- package/esm2022/lib/components/chart.component.mjs +97 -0
- package/esm2022/lib/constants/chart.constants.mjs +6 -4
- package/esm2022/lib/directives/kiwi-chart.directive.mjs +452 -0
- package/esm2022/lib/models/chart.models.mjs +1 -1
- package/esm2022/public-api.mjs +2 -4
- package/fesm2022/kiwibit-chart.mjs +284 -229
- package/fesm2022/kiwibit-chart.mjs.map +1 -1
- package/lib/components/chart.component.d.ts +52 -0
- package/lib/constants/chart.constants.d.ts +5 -3
- package/lib/{chart.component.d.ts → directives/kiwi-chart.directive.d.ts} +43 -52
- package/lib/models/chart.models.d.ts +1 -0
- package/package.json +4 -5
- package/public-api.d.ts +1 -3
- package/esm2022/lib/chart.component.mjs +0 -456
- package/esm2022/lib/chart.module.mjs +0 -41
- package/lib/chart.module.d.ts +0 -9
|
@@ -0,0 +1,452 @@
|
|
|
1
|
+
// Angular Imports
|
|
2
|
+
import { Directive, EventEmitter, HostListener, Input, Output } from '@angular/core';
|
|
3
|
+
// Kiwi Chart Imports
|
|
4
|
+
import { ShapeVariant } from '../models/chart.models';
|
|
5
|
+
import { ADD_POINT, RESTORE, SAVE_AS_SVG, ZOOM_IN, ZOOM_OUT } from '../constants/chart.constants';
|
|
6
|
+
// Echarts Imports
|
|
7
|
+
import * as echarts from 'echarts/core';
|
|
8
|
+
import { init } from 'echarts';
|
|
9
|
+
import { TitleComponent, TooltipComponent, GridComponent, LegendComponent, DataZoomComponent, ToolboxComponent } from 'echarts/components';
|
|
10
|
+
import { LineChart } from 'echarts/charts';
|
|
11
|
+
import { CanvasRenderer } from 'echarts/renderers';
|
|
12
|
+
import * as i0 from "@angular/core";
|
|
13
|
+
echarts.use([
|
|
14
|
+
TitleComponent,
|
|
15
|
+
TooltipComponent,
|
|
16
|
+
GridComponent,
|
|
17
|
+
LineChart,
|
|
18
|
+
CanvasRenderer,
|
|
19
|
+
LegendComponent,
|
|
20
|
+
DataZoomComponent,
|
|
21
|
+
ToolboxComponent,
|
|
22
|
+
]);
|
|
23
|
+
export class KiwiChartDirective {
|
|
24
|
+
/**
|
|
25
|
+
* If you resize the page, the chart is automatically re-rendered wiht the right proportions.
|
|
26
|
+
*
|
|
27
|
+
* @memberof EnchartingDirective
|
|
28
|
+
*/
|
|
29
|
+
onResize() {
|
|
30
|
+
if (this.echartsInstance) {
|
|
31
|
+
this.echartsInstance.resize();
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
constructor(el) {
|
|
35
|
+
this.el = el;
|
|
36
|
+
/**
|
|
37
|
+
* The Chart Object rendered by the canvas. For all the available options refer
|
|
38
|
+
* to Chart interface in the models folder.
|
|
39
|
+
*
|
|
40
|
+
* @type {(Chart | null)}
|
|
41
|
+
* @memberof KiwiChartDirective
|
|
42
|
+
*/
|
|
43
|
+
this.chart = null;
|
|
44
|
+
/**
|
|
45
|
+
* Width and Height of the chart area. The dimensions refer to the father component
|
|
46
|
+
* into which the kiwi-chart is inserted. For example in an empty page the width/height
|
|
47
|
+
* of the chart can take the whole available space in the page.
|
|
48
|
+
*
|
|
49
|
+
* @type {string}
|
|
50
|
+
* @memberof KiwiChartDirective
|
|
51
|
+
*/
|
|
52
|
+
this.width = '100%';
|
|
53
|
+
this.height = '480px';
|
|
54
|
+
this.chartInit = new EventEmitter();
|
|
55
|
+
/**
|
|
56
|
+
* Output event used to emit to the father component the coordinates
|
|
57
|
+
* of the point clicked in the chart area. This functionality to be used must
|
|
58
|
+
* have the property "clickToAddPoint" in the Chart object set to true.
|
|
59
|
+
*
|
|
60
|
+
* @type {EventEmitter<BasePoint>}
|
|
61
|
+
* @memberof KiwiChartDirective
|
|
62
|
+
*/
|
|
63
|
+
this.addPoint = new EventEmitter();
|
|
64
|
+
/**
|
|
65
|
+
* When the cursor hovers the chart area it emits to the father component the
|
|
66
|
+
* x and y coordinates relative to the chart reference system.
|
|
67
|
+
*
|
|
68
|
+
* @type {EventEmitter<BasePoint>}
|
|
69
|
+
* @memberof KiwiChartDirective
|
|
70
|
+
*/
|
|
71
|
+
this.chartHover = new EventEmitter();
|
|
72
|
+
/**
|
|
73
|
+
* This property simply activates or not the dark theme of the chart
|
|
74
|
+
* defined by the Echarts library. In addition the background color can be custom
|
|
75
|
+
* so that the chart can match the background of the application in which it's used.
|
|
76
|
+
*
|
|
77
|
+
* @type {boolean}
|
|
78
|
+
* @memberof KiwiChartDirective
|
|
79
|
+
*/
|
|
80
|
+
this.darkTheme = false;
|
|
81
|
+
this.darkThemeBackground = null;
|
|
82
|
+
/**
|
|
83
|
+
* The instance of the Chart.
|
|
84
|
+
*
|
|
85
|
+
* @type {ECharts}
|
|
86
|
+
* @memberof KiwiChartDirective
|
|
87
|
+
*/
|
|
88
|
+
this.echartsInstance = null;
|
|
89
|
+
/**
|
|
90
|
+
* Default number of decimals that can have
|
|
91
|
+
* the values on the x and y axes.
|
|
92
|
+
*
|
|
93
|
+
* @private
|
|
94
|
+
* @type {number}
|
|
95
|
+
* @memberof KiwiChartDirective
|
|
96
|
+
*/
|
|
97
|
+
this.MAX_DECIMALS = 3;
|
|
98
|
+
this.legendSelected = {};
|
|
99
|
+
this.isLegendClicked = false;
|
|
100
|
+
/**
|
|
101
|
+
* Used to perform actions (as point addition based on the cursor position) on the chart.
|
|
102
|
+
*
|
|
103
|
+
* @type {(zrender.ZRenderType | null)}
|
|
104
|
+
* @memberof KiwiChartComponent
|
|
105
|
+
*/
|
|
106
|
+
this.zr = null;
|
|
107
|
+
}
|
|
108
|
+
ngAfterViewInit() {
|
|
109
|
+
if (this.chart) {
|
|
110
|
+
this.renderChart(this.chart);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
ngOnChanges(changes) {
|
|
114
|
+
let chart = changes['chart']?.currentValue;
|
|
115
|
+
if (this.echartsInstance) {
|
|
116
|
+
// Every time we have an external change we
|
|
117
|
+
// destroy the chart and re-initialize it
|
|
118
|
+
this.echartsInstance.dispose();
|
|
119
|
+
this.renderChart(chart);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
renderChart(chart) {
|
|
123
|
+
// Update ElementRef styles
|
|
124
|
+
this.el.nativeElement.style.width = this.width;
|
|
125
|
+
this.el.nativeElement.style.height = this.height;
|
|
126
|
+
this.echartsInstance = init(this.el.nativeElement, this.darkTheme ? 'dark' : 'default', {
|
|
127
|
+
renderer: 'svg'
|
|
128
|
+
});
|
|
129
|
+
if (chart) {
|
|
130
|
+
this.echartsInstance.setOption({
|
|
131
|
+
title: {
|
|
132
|
+
text: chart.title,
|
|
133
|
+
},
|
|
134
|
+
grid: {
|
|
135
|
+
width: '70%'
|
|
136
|
+
},
|
|
137
|
+
backgroundColor: this.darkTheme ? this.darkThemeBackground ?? '#303030' : 'transparent', tooltip: {
|
|
138
|
+
axisPointer: {
|
|
139
|
+
type: 'cross',
|
|
140
|
+
crossStyle: {
|
|
141
|
+
color: '#bebebe'
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
toolbox: {
|
|
146
|
+
orient: 'horizontal',
|
|
147
|
+
left: 'center',
|
|
148
|
+
top: '25px',
|
|
149
|
+
feature: {
|
|
150
|
+
dataZoom: {
|
|
151
|
+
brushStyle: {
|
|
152
|
+
borderColor: '#000',
|
|
153
|
+
borderWidth: 1,
|
|
154
|
+
borderType: 'dashed'
|
|
155
|
+
},
|
|
156
|
+
emphasis: {
|
|
157
|
+
iconStyle: {
|
|
158
|
+
textPosition: 'top',
|
|
159
|
+
textPadding: 5
|
|
160
|
+
}
|
|
161
|
+
},
|
|
162
|
+
icon: {
|
|
163
|
+
zoom: ZOOM_IN,
|
|
164
|
+
back: ZOOM_OUT
|
|
165
|
+
},
|
|
166
|
+
},
|
|
167
|
+
saveAsImage: {
|
|
168
|
+
emphasis: {
|
|
169
|
+
iconStyle: {
|
|
170
|
+
textPosition: 'top',
|
|
171
|
+
textPadding: 5
|
|
172
|
+
}
|
|
173
|
+
},
|
|
174
|
+
icon: SAVE_AS_SVG,
|
|
175
|
+
},
|
|
176
|
+
restore: {
|
|
177
|
+
emphasis: {
|
|
178
|
+
iconStyle: {
|
|
179
|
+
textPosition: 'top',
|
|
180
|
+
textPadding: 5
|
|
181
|
+
}
|
|
182
|
+
},
|
|
183
|
+
icon: RESTORE,
|
|
184
|
+
},
|
|
185
|
+
myAddPoint: {
|
|
186
|
+
show: chart.clickToAddPoint ?? false,
|
|
187
|
+
title: chart.addPointCustomName ?? 'Add Point',
|
|
188
|
+
icon: ADD_POINT,
|
|
189
|
+
onclick: () => {
|
|
190
|
+
if (this.echartsInstance) {
|
|
191
|
+
const option = this.echartsInstance.getOption();
|
|
192
|
+
const toolbox = option.toolbox;
|
|
193
|
+
if (toolbox) {
|
|
194
|
+
const status = toolbox[0].feature?.['myAddPoint']?.iconStatus;
|
|
195
|
+
const offColor = 'rgb(102,102,102)';
|
|
196
|
+
const highlightColor = 'rgb(62,152,197)';
|
|
197
|
+
this.echartsInstance.setOption({
|
|
198
|
+
toolbox: {
|
|
199
|
+
feature: {
|
|
200
|
+
myAddPoint: {
|
|
201
|
+
iconStatus: !status,
|
|
202
|
+
iconStyle: {
|
|
203
|
+
borderColor: !status ? highlightColor : offColor
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
},
|
|
212
|
+
emphasis: {
|
|
213
|
+
iconStyle: {
|
|
214
|
+
textPosition: 'top',
|
|
215
|
+
textPadding: 5
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
},
|
|
220
|
+
},
|
|
221
|
+
dataZoom: [
|
|
222
|
+
{
|
|
223
|
+
type: 'inside',
|
|
224
|
+
xAxisIndex: [0],
|
|
225
|
+
throttle: 0,
|
|
226
|
+
filterMode: 'none',
|
|
227
|
+
disabled: !chart.scrollToZoom
|
|
228
|
+
},
|
|
229
|
+
{
|
|
230
|
+
type: 'inside',
|
|
231
|
+
yAxisIndex: [0],
|
|
232
|
+
throttle: 0,
|
|
233
|
+
filterMode: 'none',
|
|
234
|
+
disabled: !chart.scrollToZoom
|
|
235
|
+
},
|
|
236
|
+
],
|
|
237
|
+
legend: {
|
|
238
|
+
inactiveColor: this.darkTheme ? '#8b8b8b' : '#ccc',
|
|
239
|
+
data: chart.shapes.map((shape) => ({
|
|
240
|
+
name: shape.name,
|
|
241
|
+
icon: 'circle',
|
|
242
|
+
})),
|
|
243
|
+
selected: chart.shapes.reduce((accumulator, shape) => ({
|
|
244
|
+
...accumulator,
|
|
245
|
+
[shape.name]: this.getLegendItemSelection(shape),
|
|
246
|
+
}), {}),
|
|
247
|
+
show: chart.showLegend ?? false,
|
|
248
|
+
orient: 'vertical',
|
|
249
|
+
left: 'right',
|
|
250
|
+
padding: [60, 20],
|
|
251
|
+
type: 'scroll',
|
|
252
|
+
textStyle: {
|
|
253
|
+
width: 120,
|
|
254
|
+
fontWeight: 'bold',
|
|
255
|
+
overflow: 'break'
|
|
256
|
+
}
|
|
257
|
+
},
|
|
258
|
+
xAxis: {
|
|
259
|
+
type: chart.xAxisType,
|
|
260
|
+
name: chart.xAxisUom ? `${chart.xAxisName} [ ${chart.xAxisUom} ]` : chart.xAxisName,
|
|
261
|
+
nameLocation: 'middle',
|
|
262
|
+
nameGap: 30,
|
|
263
|
+
splitLine: {
|
|
264
|
+
show: chart.showGrid ?? true,
|
|
265
|
+
lineStyle: {
|
|
266
|
+
color: this.darkTheme ? '#595959' : '#ccc'
|
|
267
|
+
}
|
|
268
|
+
},
|
|
269
|
+
min: chart.xMin?.toFixed(chart.maxAxesDecimals ?? this.MAX_DECIMALS),
|
|
270
|
+
max: chart.xMax?.toFixed(chart.maxAxesDecimals ?? this.MAX_DECIMALS),
|
|
271
|
+
},
|
|
272
|
+
yAxis: {
|
|
273
|
+
type: chart.yAxisType,
|
|
274
|
+
name: chart.yAxisUom ? `${chart.yAxisName} [ ${chart.yAxisUom} ]` : chart.yAxisName,
|
|
275
|
+
nameLocation: 'middle',
|
|
276
|
+
nameGap: 50,
|
|
277
|
+
splitLine: {
|
|
278
|
+
show: chart.showGrid ?? true,
|
|
279
|
+
lineStyle: {
|
|
280
|
+
color: this.darkTheme ? '#595959' : '#ccc'
|
|
281
|
+
}
|
|
282
|
+
},
|
|
283
|
+
min: chart.yMin?.toFixed(chart.maxAxesDecimals ?? this.MAX_DECIMALS),
|
|
284
|
+
max: chart.yMax?.toFixed(chart.maxAxesDecimals ?? this.MAX_DECIMALS),
|
|
285
|
+
},
|
|
286
|
+
series: this.createSeries(chart.shapes),
|
|
287
|
+
animation: chart.hasAnimations,
|
|
288
|
+
animationDuration: chart.animationDuration ?? 250,
|
|
289
|
+
animationEasing: 'cubicOut'
|
|
290
|
+
}, true, true);
|
|
291
|
+
}
|
|
292
|
+
this.setupZrEventHandler(this.echartsInstance);
|
|
293
|
+
this.setupLegendEventHandler(this.echartsInstance);
|
|
294
|
+
}
|
|
295
|
+
createSeries(shapes) {
|
|
296
|
+
let series = [];
|
|
297
|
+
shapes.forEach((shape) => {
|
|
298
|
+
switch (shape.variant) {
|
|
299
|
+
case ShapeVariant.TRACE:
|
|
300
|
+
series.push(this.createTrace(shape));
|
|
301
|
+
break;
|
|
302
|
+
default:
|
|
303
|
+
break;
|
|
304
|
+
}
|
|
305
|
+
});
|
|
306
|
+
return series;
|
|
307
|
+
}
|
|
308
|
+
createTrace(trace) {
|
|
309
|
+
return {
|
|
310
|
+
type: trace.type,
|
|
311
|
+
name: trace.name,
|
|
312
|
+
data: trace.points.map((point) => ({
|
|
313
|
+
value: [point.x, point.y],
|
|
314
|
+
symbol: point.symbol ?? 'circle',
|
|
315
|
+
name: point.name,
|
|
316
|
+
symbolSize: point.symbolSize ?? 2,
|
|
317
|
+
itemStyle: {
|
|
318
|
+
color: point.color
|
|
319
|
+
},
|
|
320
|
+
emphasis: {
|
|
321
|
+
disabled: true
|
|
322
|
+
},
|
|
323
|
+
label: {
|
|
324
|
+
show: true,
|
|
325
|
+
position: 'bottom',
|
|
326
|
+
align: 'left',
|
|
327
|
+
verticalAlign: 'bottom',
|
|
328
|
+
formatter: () => `${point.name ?? ''}`,
|
|
329
|
+
fontSize: 13,
|
|
330
|
+
padding: [0, 0, 0, 10],
|
|
331
|
+
width: 100,
|
|
332
|
+
overflow: 'truncate',
|
|
333
|
+
ellipsis: '...',
|
|
334
|
+
fontWeight: 'bold',
|
|
335
|
+
color: this.darkTheme ? '#fff' : '#000'
|
|
336
|
+
},
|
|
337
|
+
tooltip: {
|
|
338
|
+
formatter: ({ value }) => `
|
|
339
|
+
<strong>${this.chart?.xAxisName}:</strong> ${value[0].toFixed(3).replace(/[.,]000$/, "")}
|
|
340
|
+
<br>
|
|
341
|
+
<strong>${this.chart?.yAxisName}:</strong> ${value[1].toFixed(3).replace(/[.,]000$/, "")}
|
|
342
|
+
`
|
|
343
|
+
}
|
|
344
|
+
})),
|
|
345
|
+
color: trace.color,
|
|
346
|
+
lineStyle: {
|
|
347
|
+
width: trace.width,
|
|
348
|
+
type: trace.style,
|
|
349
|
+
opacity: trace.opacity ?? 1
|
|
350
|
+
},
|
|
351
|
+
smooth: trace.smooth ?? false
|
|
352
|
+
};
|
|
353
|
+
}
|
|
354
|
+
getLegendItemSelection(shape) {
|
|
355
|
+
if (this.isLegendClicked) {
|
|
356
|
+
return this.legendSelected[shape.name] ?? true;
|
|
357
|
+
}
|
|
358
|
+
else {
|
|
359
|
+
return shape.selectedByDefault ?? true;
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
/**
|
|
363
|
+
* intercept a selection change event on the legend and save the state
|
|
364
|
+
* of all selections on the supporting variable legendSelected
|
|
365
|
+
*
|
|
366
|
+
* @param ec
|
|
367
|
+
*/
|
|
368
|
+
setupLegendEventHandler(ec) {
|
|
369
|
+
if (this.echartsInstance != null) {
|
|
370
|
+
this.echartsInstance.on('legendselectchanged', (params) => {
|
|
371
|
+
this.isLegendClicked = true;
|
|
372
|
+
this.legendSelected = params.selected;
|
|
373
|
+
});
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
setupZrEventHandler(ec) {
|
|
377
|
+
this.zr = ec.getZr();
|
|
378
|
+
/**
|
|
379
|
+
* Intercepts the click event on the chart (if the clickToAddPoint property is set to true)
|
|
380
|
+
* and emits the point coordinates to the father component.
|
|
381
|
+
*/
|
|
382
|
+
this.zr.on('click', params => {
|
|
383
|
+
let option = ec.getOption();
|
|
384
|
+
let active = option?.toolbox?.[0]?.feature?.myAddPoint?.iconStatus;
|
|
385
|
+
if (active && this.chart?.clickToAddPoint) {
|
|
386
|
+
const pointInPixel = [params.offsetX, params.offsetY];
|
|
387
|
+
const pointInGrid = ec.convertFromPixel('grid', pointInPixel);
|
|
388
|
+
if (ec.containPixel('grid', pointInPixel) && pointInGrid) {
|
|
389
|
+
let newPoint = {
|
|
390
|
+
x: +pointInGrid[0].toFixed(3),
|
|
391
|
+
y: +pointInGrid[1].toFixed(3)
|
|
392
|
+
};
|
|
393
|
+
this.addPoint.emit(newPoint);
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
});
|
|
397
|
+
/**
|
|
398
|
+
* This is used perform custom actions when the mouse is hovering the chart area
|
|
399
|
+
*/
|
|
400
|
+
this.zr.on('mousemove', params => {
|
|
401
|
+
const pointInPixel = [params.offsetX, params.offsetY];
|
|
402
|
+
const pointInGrid = ec.convertFromPixel('grid', pointInPixel);
|
|
403
|
+
/*
|
|
404
|
+
* Logic to emit to the father component the x and y cdinates when the
|
|
405
|
+
* cursor is hovering the chart area .
|
|
406
|
+
*/
|
|
407
|
+
if (ec.containPixel('grid', pointInPixel) && pointInGrid) {
|
|
408
|
+
let newPoint = {
|
|
409
|
+
x: +pointInGrid[0].toFixed(3),
|
|
410
|
+
y: +pointInGrid[1].toFixed(3)
|
|
411
|
+
};
|
|
412
|
+
this.chartHover.emit(newPoint);
|
|
413
|
+
}
|
|
414
|
+
/* Logic to change the cursor icon when the "Click to Add Point" feature is active and viceversa. */
|
|
415
|
+
const option = ec.getOption();
|
|
416
|
+
const addPointIsActive = option?.toolbox?.[0]?.feature?.myAddPoint?.iconStatus;
|
|
417
|
+
if (addPointIsActive) {
|
|
418
|
+
this.zr?.setCursorStyle(ec.containPixel('grid', pointInPixel) ? 'copy' : 'default');
|
|
419
|
+
}
|
|
420
|
+
});
|
|
421
|
+
}
|
|
422
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KiwiChartDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
423
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: KiwiChartDirective, isStandalone: true, selector: "div[kiwi-chart]", inputs: { chart: "chart", width: "width", height: "height", darkTheme: "darkTheme", darkThemeBackground: "darkThemeBackground" }, outputs: { chartInit: "chartInit", addPoint: "addPoint", chartHover: "chartHover" }, host: { listeners: { "window:resize": "onResize($event)" } }, usesOnChanges: true, ngImport: i0 }); }
|
|
424
|
+
}
|
|
425
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KiwiChartDirective, decorators: [{
|
|
426
|
+
type: Directive,
|
|
427
|
+
args: [{
|
|
428
|
+
selector: 'div[kiwi-chart]',
|
|
429
|
+
standalone: true
|
|
430
|
+
}]
|
|
431
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { chart: [{
|
|
432
|
+
type: Input,
|
|
433
|
+
args: [{ required: true }]
|
|
434
|
+
}], width: [{
|
|
435
|
+
type: Input
|
|
436
|
+
}], height: [{
|
|
437
|
+
type: Input
|
|
438
|
+
}], chartInit: [{
|
|
439
|
+
type: Output
|
|
440
|
+
}], addPoint: [{
|
|
441
|
+
type: Output
|
|
442
|
+
}], chartHover: [{
|
|
443
|
+
type: Output
|
|
444
|
+
}], darkTheme: [{
|
|
445
|
+
type: Input
|
|
446
|
+
}], darkThemeBackground: [{
|
|
447
|
+
type: Input
|
|
448
|
+
}], onResize: [{
|
|
449
|
+
type: HostListener,
|
|
450
|
+
args: ['window:resize', ['$event']]
|
|
451
|
+
}] } });
|
|
452
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2l3aS1jaGFydC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXdpYml0L2NoYXJ0L3NyYy9saWIvZGlyZWN0aXZlcy9raXdpLWNoYXJ0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxrQkFBa0I7QUFDbEIsT0FBTyxFQUFpQixTQUFTLEVBQWMsWUFBWSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUMxSSxxQkFBcUI7QUFDckIsT0FBTyxFQUFrQyxZQUFZLEVBQVMsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RixPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xHLGtCQUFrQjtBQUNsQixPQUFPLEtBQUssT0FBTyxNQUFNLGNBQWMsQ0FBQztBQUN4QyxPQUFPLEVBWUwsSUFBSSxFQUVMLE1BQU0sU0FBUyxDQUFDO0FBQ2pCLE9BQU8sRUFBRSxjQUFjLEVBQUUsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzNJLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBQ25ELE9BQU8sQ0FBQyxHQUFHLENBQUM7SUFDVixjQUFjO0lBQ2QsZ0JBQWdCO0lBQ2hCLGFBQWE7SUFDYixTQUFTO0lBQ1QsY0FBYztJQUNkLGVBQWU7SUFDZixpQkFBaUI7SUFDakIsZ0JBQWdCO0NBQ2pCLENBQUMsQ0FBQztBQWVILE1BQU0sT0FBTyxrQkFBa0I7SUFtRjdCOzs7O01BSUU7SUFFRixRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFF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dCwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbi8vIEtpd2kgQ2hhcnQgSW1wb3J0c1xyXG5pbXBvcnQgeyBCYXNlUG9pbnQsIENoYXJ0LCBQb2ludCwgU2hhcGUsIFNoYXBlVmFyaWFudCwgVHJhY2UgfSBmcm9tICcuLi9tb2RlbHMvY2hhcnQubW9kZWxzJztcclxuaW1wb3J0IHsgQUREX1BPSU5ULCBSRVNUT1JFLCBTQVZFX0FTX1NWRywgWk9PTV9JTiwgWk9PTV9PVVQgfSBmcm9tICcuLi9jb25zdGFudHMvY2hhcnQuY29uc3RhbnRzJztcclxuLy8gRWNoYXJ0cyBJbXBvcnRzXHJcbmltcG9ydCAqIGFzIGVjaGFydHMgZnJvbSAnZWNoYXJ0cy9jb3JlJztcclxuaW1wb3J0IHtcclxuICBDb21wb3NlT3B0aW9uLFxyXG4gIEN1c3RvbVNlcmllc09wdGlvbixcclxuICBEYXRhc2V0Q29tcG9uZW50T3B0aW9uLFxyXG4gIEVDaGFydHMsXHJcbiAgR3JpZENvbXBvbmVudE9wdGlvbixcclxuICBMZWdlbmRDb21wb25lbnRPcHRpb24sXHJcbiAgTGluZVNlcmllc09wdGlvbixcclxuICBTY2F0dGVyU2VyaWVzT3B0aW9uLFxyXG4gIFRpdGxlQ29tcG9uZW50T3B0aW9uLFxyXG4gIFRvb2xib3hDb21wb25lbnRPcHRpb24sXHJcbiAgVG9vbHRpcENvbXBvbmVudE9wdGlvbixcclxuICBpbml0LFxyXG4gIHpyZW5kZXJcclxufSBmcm9tICdlY2hhcnRzJztcclxuaW1wb3J0IHsgVGl0bGVDb21wb25lbnQsIFRvb2x0aXBDb21wb25lbnQsIEdyaWRDb21wb25lbnQsIExlZ2VuZENvbXBvbmVudCwgRGF0YVpvb21Db21wb25lbnQsIFRvb2xib3hDb21wb25lbnQgfSBmcm9tICdlY2hhcnRzL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBMaW5lQ2hhcnQgfSBmcm9tICdlY2hhcnRzL2NoYXJ0cyc7XHJcbmltcG9ydCB7IENhbnZhc1JlbmRlcmVyIH0gZnJvbSAnZWNoYXJ0cy9yZW5kZXJlcnMnO1xyXG5lY2hhcnRzLnVzZShbXHJcbiAgVGl0bGVDb21wb25lbnQsXHJcbiAgVG9vbHRpcENvbXBvbmVudCxcclxuICBHcmlkQ29tcG9uZW50LFxyXG4gIExpbmVDaGFydCxcclxuICBDYW52YXNSZW5kZXJlcixcclxuICBMZWdlbmRDb21wb25lbnQsXHJcbiAgRGF0YVpvb21Db21wb25lbnQsXHJcbiAgVG9vbGJveENvbXBvbmVudCxcclxuXSk7XHJcbmV4cG9ydCB0eXBlIEVDT3B0aW9uID0gQ29tcG9zZU9wdGlvbjxcclxuICB8IExpbmVTZXJpZXNPcHRpb25cclxuICB8IFRpdGxlQ29tcG9uZW50T3B0aW9uXHJcbiAgfCBUb29sdGlwQ29tcG9uZW50T3B0aW9uXHJcbiAgfCBHcmlkQ29tcG9uZW50T3B0aW9uXHJcbiAgfCBEYXRhc2V0Q29tcG9uZW50T3B0aW9uXHJcbiAgfCBMZWdlbmRDb21wb25lbnRPcHRpb25cclxuICB8IFRvb2xib3hDb21wb25lbnRPcHRpb25cclxuPjtcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnZGl2W2tpd2ktY2hhcnRdJyxcclxuICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBLaXdpQ2hhcnREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQge1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgQ2hhcnQgT2JqZWN0IHJlbmRlcmVkIGJ5IHRoZSBjYW52YXMuIEZvciBhbGwgdGhlIGF2YWlsYWJsZSBvcHRpb25zIHJlZmVyIFxyXG4gICAqIHRvIENoYXJ0IGludGVyZmFjZSBpbiB0aGUgbW9kZWxzIGZvbGRlci5cclxuICAgKlxyXG4gICAqIEB0eXBlIHsoQ2hhcnQgfCBudWxsKX1cclxuICAgKiBAbWVtYmVyb2YgS2l3aUNoYXJ0RGlyZWN0aXZlXHJcbiAgICovXHJcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgY2hhcnQ6IENoYXJ0IHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIC8qKlxyXG4gICAqIFdpZHRoIGFuZCBIZWlnaHQgb2YgdGhlIGNoYXJ0IGFyZWEuIFRoZSBkaW1lbnNpb25zIHJlZmVyIHRvIHRoZSBmYXRoZXIgY29tcG9uZW50IFxyXG4gICAqIGludG8gd2hpY2ggdGhlIGtpd2ktY2hhcnQgaXMgaW5zZXJ0ZWQuIEZvciBleGFtcGxlIGluIGFuIGVtcHR5IHBhZ2UgdGhlIHdpZHRoL2hlaWdodCBcclxuICAgKiBvZiB0aGUgY2hhcnQgY2FuIHRha2UgdGhlIHdob2xlIGF2YWlsYWJsZSBzcGFjZSBpbiB0aGUgcGFnZS5cclxuICAgKlxyXG4gICAqIEB0eXBlIHtzdHJpbmd9XHJcbiAgICogQG1lbWJlcm9mIEtpd2lDaGFydERpcmVjdGl2ZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHdpZHRoOiBzdHJpbmcgPSAnMTAwJSc7XHJcbiAgQElucHV0KCkgaGVpZ2h0OiBzdHJpbmcgPSAnNDgwcHgnO1xyXG5cclxuICBAT3V0cHV0KCkgY2hhcnRJbml0ID0gbmV3IEV2ZW50RW1pdHRlcjxFQ2hhcnRzPigpO1xyXG5cclxuICAvKipcclxuICAgKiBPdXRwdXQgZXZlbnQgdXNlZCB0byBlbWl0IHRvIHRoZSBmYXRoZXIgY29tcG9uZW50IHRoZSBjb29yZGluYXRlc1xyXG4gICAqIG9mIHRoZSBwb2ludCBjbGlja2VkIGluIHRoZSBjaGFydCBhcmVhLiBUaGlzIGZ1bmN0aW9uYWxpdHkgdG8gYmUgdXNlZCBtdXN0XHJcbiAgICogaGF2ZSB0aGUgcHJvcGVydHkgXCJjbGlja1RvQWRkUG9pbnRcIiBpbiB0aGUgQ2hhcnQgb2JqZWN0IHNldCB0byB0cnVlLlxyXG4gICAqXHJcbiAgICogQHR5cGUge0V2ZW50RW1pdHRlcjxCYXNlUG9pbnQ+fVxyXG4gICAqIEBtZW1iZXJvZiBLaXdpQ2hhcnREaXJlY3RpdmVcclxuICAgKi9cclxuICBAT3V0cHV0KCkgYWRkUG9pbnQ6IEV2ZW50RW1pdHRlcjxCYXNlUG9pbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxCYXNlUG9pbnQ+KCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZW4gdGhlIGN1cnNvciBob3ZlcnMgdGhlIGNoYXJ0IGFyZWEgaXQgZW1pdHMgdG8gdGhlIGZhdGhlciBjb21wb25lbnQgdGhlXHJcbiAgICogeCBhbmQgeSBjb29yZGluYXRlcyByZWxhdGl2ZSB0byB0aGUgY2hhcnQgcmVmZXJlbmNlIHN5c3RlbS5cclxuICAgKlxyXG4gICAqIEB0eXBlIHtFdmVudEVtaXR0ZXI8QmFzZVBvaW50Pn1cclxuICAgKiBAbWVtYmVyb2YgS2l3aUNoYXJ0RGlyZWN0aXZlXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGNoYXJ0SG92ZXI6IEV2ZW50RW1pdHRlcjxCYXNlUG9pbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxCYXNlUG9pbnQ+KCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoaXMgcHJvcGVydHkgc2ltcGx5IGFjdGl2YXRlcyBvciBub3QgdGhlIGRhcmsgdGhlbWUgb2YgdGhlIGNoYXJ0XHJcbiAgICogZGVmaW5lZCBieSB0aGUgRWNoYXJ0cyBsaWJyYXJ5LiBJbiBhZGRpdGlvbiB0aGUgYmFja2dyb3VuZCBjb2xvciBjYW4gYmUgY3VzdG9tXHJcbiAgICogc28gdGhhdCB0aGUgY2hhcnQgY2FuIG1hdGNoIHRoZSBiYWNrZ3JvdW5kIG9mIHRoZSBhcHBsaWNhdGlvbiBpbiB3aGljaCBpdCdzIHVzZWQuXHJcbiAgICpcclxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cclxuICAgKiBAbWVtYmVyb2YgS2l3aUNoYXJ0RGlyZWN0aXZlXHJcbiAgICovXHJcbiAgQElucHV0KCkgZGFya1RoZW1lOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgZGFya1RoZW1lQmFja2dyb3VuZDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBpbnN0YW5jZSBvZiB0aGUgQ2hhcnQuXHJcbiAgICpcclxuICAgKiBAdHlwZSB7RUNoYXJ0c31cclxuICAgKiBAbWVtYmVyb2YgS2l3aUNoYXJ0RGlyZWN0aXZlXHJcbiAgICovXHJcbiAgZWNoYXJ0c0luc3RhbmNlOiBFQ2hhcnRzIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIC8qKlxyXG4gICAqIERlZmF1bHQgbnVtYmVyIG9mIGRlY2ltYWxzIHRoYXQgY2FuIGhhdmVcclxuICAgKiB0aGUgdmFsdWVzIG9uIHRoZSB4IGFuZCB5IGF4ZXMuXHJcbiAgICpcclxuICAgKiBAcHJpdmF0ZVxyXG4gICAqIEB0eXBlIHtudW1iZXJ9XHJcbiAgICogQG1lbWJlcm9mIEtpd2lDaGFydERpcmVjdGl2ZVxyXG4gICAqL1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgTUFYX0RFQ0lNQUxTOiBudW1iZXIgPSAzO1xyXG5cclxuICBwcml2YXRlIGxlZ2VuZFNlbGVjdGVkOiB7IFtrZXk6IHN0cmluZ106IGJvb2xlYW4gfSA9IHt9O1xyXG4gIHByaXZhdGUgaXNMZWdlbmRDbGlja2VkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIFVzZWQgdG8gcGVyZm9ybSBhY3Rpb25zIChhcyBwb2ludCBhZGRpdGlvbiBiYXNlZCBvbiB0aGUgY3Vyc29yIHBvc2l0aW9uKSBvbiB0aGUgY2hhcnQuXHJcbiAgICpcclxuICAgKiBAdHlwZSB7KHpyZW5kZXIuWlJlbmRlclR5cGUgfCBudWxsKX1cclxuICAgKiBAbWVtYmVyb2YgS2l3aUNoYXJ0Q29tcG9uZW50XHJcbiAgICovXHJcbiAgenI6IHpyZW5kZXIuWlJlbmRlclR5cGUgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgLyoqXHJcbiAgKiBJZiB5b3UgcmVzaXplIHRoZSBwYWdlLCB0aGUgY2hhcnQgaXMgYXV0b21hdGljYWxseSByZS1yZW5kZXJlZCB3aWh0IHRoZSByaWdodCBwcm9wb3J0aW9ucy5cclxuICAqXHJcbiAgKiBAbWVtYmVyb2YgRW5jaGFydGluZ0RpcmVjdGl2ZVxyXG4gICovXHJcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXHJcbiAgb25SZXNpemUoKSB7XHJcbiAgICBpZiAodGhpcy5lY2hhcnRzSW5zdGFuY2UpIHtcclxuICAgICAgdGhpcy5lY2hhcnRzSW5zdGFuY2UucmVzaXplKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+XHJcbiAgKSB7IH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuY2hhcnQpIHtcclxuICAgICAgdGhpcy5yZW5kZXJDaGFydCh0aGlzLmNoYXJ0KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGxldCBjaGFydDogQ2hhcnQgPSBjaGFuZ2VzWydjaGFydCddPy5jdXJyZW50VmFsdWU7XHJcbiAgICBpZiAodGhpcy5lY2hhcnRzSW5zdGFuY2UpIHtcclxuICAgICAgLy8gRXZlcnkgdGltZSB3ZSBoYXZlIGFuIGV4dGVybmFsIGNoYW5nZSB3ZVxyXG4gICAgICAvLyBkZXN0cm95IHRoZSBjaGFydCBhbmQgcmUtaW5pdGlhbGl6ZSBpdFxyXG4gICAgICB0aGlzLmVjaGFydHNJbnN0YW5jZS5kaXNwb3NlKCk7XHJcbiAgICAgIHRoaXMucmVuZGVyQ2hhcnQoY2hhcnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVuZGVyQ2hhcnQoY2hhcnQ6IENoYXJ0KTogdm9pZCB7XHJcbiAgICAvLyBVcGRhdGUgRWxlbWVudFJlZiBzdHlsZXNcclxuICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS53aWR0aCA9IHRoaXMud2lkdGg7XHJcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuaGVpZ2h0ID0gdGhpcy5oZWlnaHQ7XHJcblxyXG4gICAgdGhpcy5lY2hhcnRzSW5zdGFuY2UgPSBpbml0KFxyXG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsXHJcbiAgICAgIHRoaXMuZGFya1RoZW1lID8gJ2RhcmsnIDogJ2RlZmF1bHQnLFxyXG4gICAgICB7XHJcbiAgICAgICAgcmVuZGVyZXI6ICdzdmcnXHJcbiAgICAgIH1cclxuICAgICk7XHJcblxyXG4gICAgaWYgKGNoYXJ0KSB7XHJcbiAgICAgIHRoaXMuZWNoYXJ0c0luc3RhbmNlLnNldE9wdGlvbih7XHJcbiAgICAgICAgdGl0bGU6IHtcclxuICAgICAgICAgIHRleHQ6IGNoYXJ0LnRpdGxlLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZ3JpZDoge1xyXG4gICAgICAgICAgd2lkdGg6ICc3MCUnXHJcbiAgICAgICAgfSxcclxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoaXMuZGFya1RoZW1lID8gdGhpcy5kYXJrVGhlbWVCYWNrZ3JvdW5kID8/ICcjMzAzMDMwJyA6ICd0cmFuc3BhcmVudCcsIHRvb2x0aXA6IHtcclxuICAgICAgICAgIGF4aXNQb2ludGVyOiB7XHJcbiAgICAgICAgICAgIHR5cGU6ICdjcm9zcycsXHJcbiAgICAgICAgICAgIGNyb3NzU3R5bGU6IHtcclxuICAgICAgICAgICAgICBjb2xvcjogJyNiZWJlYmUnXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIHRvb2xib3g6IHtcclxuICAgICAgICAgIG9yaWVudDogJ2hvcml6b250YWwnLFxyXG4gICAgICAgICAgbGVmdDogJ2NlbnRlcicsXHJcbiAgICAgICAgICB0b3A6ICcyNXB4JyxcclxuICAgICAgICAgIGZlYXR1cmU6IHtcclxuICAgICAgICAgICAgZGF0YVpvb206IHtcclxuICAgICAgICAgICAgICBicnVzaFN0eWxlOiB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXJDb2xvcjogJyMwMDAnLFxyXG4gICAgICAgICAgICAgICAgYm9yZGVyV2lkdGg6IDEsXHJcbiAgICAgICAgICAgICAgICBib3JkZXJUeXBlOiAnZGFzaGVkJ1xyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgZW1waGFzaXM6IHtcclxuICAgICAgICAgICAgICAgIGljb25TdHlsZToge1xyXG4gICAgICAgICAgICAgICAgICB0ZXh0UG9zaXRpb246ICd0b3AnLFxyXG4gICAgICAgICAgICAgICAgICB0ZXh0UGFkZGluZzogNVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgaWNvbjoge1xyXG4gICAgICAgICAgICAgICAgem9vbTogWk9PTV9JTixcclxuICAgICAgICAgICAgICAgIGJhY2s6IFpPT01fT1VUXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgc2F2ZUFzSW1hZ2U6IHtcclxuICAgICAgICAgICAgICBlbXBoYXNpczoge1xyXG4gICAgICAgICAgICAgICAgaWNvblN0eWxlOiB7XHJcbiAgICAgICAgICAgICAgICAgIHRleHRQb3NpdGlvbjogJ3RvcCcsXHJcbiAgICAgICAgICAgICAgICAgIHRleHRQYWRkaW5nOiA1XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICBpY29uOiBTQVZFX0FTX1NWRyxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgcmVzdG9yZToge1xyXG4gICAgICAgICAgICAgIGVtcGhhc2lzOiB7XHJcbiAgICAgICAgICAgICAgICBpY29uU3R5bGU6IHtcclxuICAgICAgICAgICAgICAgICAgdGV4dFBvc2l0aW9uOiAndG9wJyxcclxuICAgICAgICAgICAgICAgICAgdGV4dFBhZGRpbmc6IDVcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIGljb246IFJFU1RPUkUsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIG15QWRkUG9pbnQ6IHtcclxuICAgICAgICAgICAgICBzaG93OiBjaGFydC5jbGlja1RvQWRkUG9pbnQgPz8gZmFsc2UsXHJcbiAgICAgICAgICAgICAgdGl0bGU6IGNoYXJ0LmFkZFBvaW50Q3VzdG9tTmFtZSA/PyAnQWRkIFBvaW50JyxcclxuICAgICAgICAgICAgICBpY29uOiBBRERfUE9JTlQsXHJcbiAgICAgICAgICAgICAgb25jbGljazogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZWNoYXJ0c0luc3RhbmNlKSB7XHJcbiAgICAgICAgICAgICAgICAgIGNvbnN0IG9wdGlvbjogRUNPcHRpb24gPSB0aGlzLmVjaGFydHNJbnN0YW5jZS5nZXRPcHRpb24oKTtcclxuICAgICAgICAgICAgICAgICAgY29uc3QgdG9vbGJveCA9IG9wdGlvbi50b29sYm94IGFzIFRvb2xib3hDb21wb25lbnRPcHRpb25bXTtcclxuICAgICAgICAgICAgICAgICAgaWYgKHRvb2xib3gpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGF0dXM6IGJvb2xlYW4gPSB0b29sYm94WzBdLmZlYXR1cmU/LlsnbXlBZGRQb2ludCddPy5pY29uU3RhdHVzO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG9mZkNvbG9yOiBzdHJpbmcgPSAncmdiKDEwMiwxMDIsMTAyKSc7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaGlnaGxpZ2h0Q29sb3I6IHN0cmluZyA9ICdyZ2IoNjIsMTUyLDE5NyknO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWNoYXJ0c0luc3RhbmNlLnNldE9wdGlvbih7XHJcbiAgICAgICAgICAgICAgICAgICAgICB0b29sYm94OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZlYXR1cmU6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBteUFkZFBvaW50OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uU3RhdHVzOiAhc3RhdHVzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvblN0eWxlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlckNvbG9yOiAhc3RhdHVzID8gaGlnaGxpZ2h0Q29sb3IgOiBvZmZDb2xvclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICBlbXBoYXNpczoge1xyXG4gICAgICAgICAgICAgICAgaWNvblN0eWxlOiB7XHJcbiAgICAgICAgICAgICAgICAgIHRleHRQb3NpdGlvbjogJ3RvcCcsXHJcbiAgICAgICAgICAgICAgICAgIHRleHRQYWRkaW5nOiA1XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZGF0YVpvb206IFtcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgdHlwZTogJ2luc2lkZScsXHJcbiAgICAgICAgICAgIHhBeGlzSW5kZXg6IFswXSxcclxuICAgICAgICAgICAgdGhyb3R0bGU6IDAsXHJcbiAgICAgICAgICAgIGZpbHRlck1vZGU6ICdub25lJyxcclxuICAgICAgICAgICAgZGlzYWJsZWQ6ICFjaGFydC5zY3JvbGxUb1pvb21cclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIHR5cGU6ICdpbnNpZGUnLFxyXG4gICAgICAgICAgICB5QXhpc0luZGV4OiBbMF0sXHJcbiAgICAgICAgICAgIHRocm90dGxlOiAwLFxyXG4gICAgICAgICAgICBmaWx0ZXJNb2RlOiAnbm9uZScsXHJcbiAgICAgICAgICAgIGRpc2FibGVkOiAhY2hhcnQuc2Nyb2xsVG9ab29tXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgbGVnZW5kOiB7XHJcbiAgICAgICAgICBpbmFjdGl2ZUNvbG9yOiB0aGlzLmRhcmtUaGVtZSA/ICcjOGI4YjhiJyA6ICcjY2NjJyxcclxuICAgICAgICAgIGRhdGE6IGNoYXJ0LnNoYXBlcy5tYXAoXHJcbiAgICAgICAgICAgIChzaGFwZTogU2hhcGUpID0+ICh7XHJcbiAgICAgICAgICAgICAgbmFtZTogc2hhcGUubmFtZSxcclxuICAgICAgICAgICAgICBpY29uOiAnY2lyY2xlJyxcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICksXHJcbiAgICAgICAgICBzZWxlY3RlZDogY2hhcnQuc2hhcGVzLnJlZHVjZShcclxuICAgICAgICAgICAgKGFjY3VtdWxhdG9yLCBzaGFwZTogU2hhcGUpID0+ICh7XHJcbiAgICAgICAgICAgICAgLi4uYWNjdW11bGF0b3IsXHJcbiAgICAgICAgICAgICAgW3NoYXBlLm5hbWUgYXMgc3RyaW5nXTogdGhpcy5nZXRMZWdlbmRJdGVtU2VsZWN0aW9uKHNoYXBlKSxcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgIHt9KSxcclxuICAgICAgICAgIHNob3c6IGNoYXJ0LnNob3dMZWdlbmQgPz8gZmFsc2UsXHJcbiAgICAgICAgICBvcmllbnQ6ICd2ZXJ0aWNhbCcsXHJcbiAgICAgICAgICBsZWZ0OiAncmlnaHQnLFxyXG4gICAgICAgICAgcGFkZGluZzogWzYwLCAyMF0sXHJcbiAgICAgICAgICB0eXBlOiAnc2Nyb2xsJyxcclxuICAgICAgICAgIHRleHRTdHlsZToge1xyXG4gICAgICAgICAgICB3aWR0aDogMTIwLFxyXG4gICAgICAgICAgICBmb250V2VpZ2h0OiAnYm9sZCcsXHJcbiAgICAgICAgICAgIG92ZXJmbG93OiAnYnJlYWsnXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgICAgICB4QXhpczoge1xyXG4gICAgICAgICAgdHlwZTogY2hhcnQueEF4aXNUeXBlLFxyXG4gICAgICAgICAgbmFtZTogY2hhcnQueEF4aXNVb20gPyBgJHtjaGFydC54QXhpc05hbWV9IFsgJHtjaGFydC54QXhpc1VvbX0gXWAgOiBjaGFydC54QXhpc05hbWUsXHJcbiAgICAgICAgICBuYW1lTG9jYXRpb246ICdtaWRkbGUnLFxyXG4gICAgICAgICAgbmFtZUdhcDogMzAsXHJcbiAgICAgICAgICBzcGxpdExpbmU6IHtcclxuICAgICAgICAgICAgc2hvdzogY2hhcnQuc2hvd0dyaWQgPz8gdHJ1ZSxcclxuICAgICAgICAgICAgbGluZVN0eWxlOiB7XHJcbiAgICAgICAgICAgICAgY29sb3I6IHRoaXMuZGFya1RoZW1lID8gJyM1OTU5NTknIDogJyNjY2MnXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBtaW46IGNoYXJ0LnhNaW4/LnRvRml4ZWQoY2hhcnQubWF4QXhlc0RlY2ltYWxzID8/IHRoaXMuTUFYX0RFQ0lNQUxTKSxcclxuICAgICAgICAgIG1heDogY2hhcnQueE1heD8udG9GaXhlZChjaGFydC5tYXhBeGVzRGVjaW1hbHMgPz8gdGhpcy5NQVhfREVDSU1BTFMpLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgeUF4aXM6IHtcclxuICAgICAgICAgIHR5cGU6IGNoYXJ0LnlBeGlzVHlwZSxcclxuICAgICAgICAgIG5hbWU6IGNoYXJ0LnlBeGlzVW9tID8gYCR7Y2hhcnQueUF4aXNOYW1lfSBbICR7Y2hhcnQueUF4aXNVb219IF1gIDogY2hhcnQueUF4aXNOYW1lLFxyXG4gICAgICAgICAgbmFtZUxvY2F0aW9uOiAnbWlkZGxlJyxcclxuICAgICAgICAgIG5hbWVHYXA6IDUwLFxyXG4gICAgICAgICAgc3BsaXRMaW5lOiB7XHJcbiAgICAgICAgICAgIHNob3c6IGNoYXJ0LnNob3dHcmlkID8/IHRydWUsXHJcbiAgICAgICAgICAgIGxpbmVTdHlsZToge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiB0aGlzLmRhcmtUaGVtZSA/ICcjNTk1OTU5JyA6ICcjY2NjJ1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgbWluOiBjaGFydC55TWluPy50b0ZpeGVkKGNoYXJ0Lm1heEF4ZXNEZWNpbWFscyA/PyB0aGlzLk1BWF9ERUNJTUFMUyksXHJcbiAgICAgICAgICBtYXg6IGNoYXJ0LnlNYXg/LnRvRml4ZWQoY2hhcnQubWF4QXhlc0RlY2ltYWxzID8/IHRoaXMuTUFYX0RFQ0lNQUxTKSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHNlcmllczogdGhpcy5jcmVhdGVTZXJpZXMoY2hhcnQuc2hhcGVzKSxcclxuICAgICAgICBhbmltYXRpb246IGNoYXJ0Lmhhc0FuaW1hdGlvbnMsXHJcbiAgICAgICAgYW5pbWF0aW9uRHVyYXRpb246IGNoYXJ0LmFuaW1hdGlvbkR1cmF0aW9uID8/IDI1MCxcclxuICAgICAgICBhbmltYXRpb25FYXNpbmc6ICdjdWJpY091dCdcclxuICAgICAgfSxcclxuICAgICAgICB0cnVlLFxyXG4gICAgICAgIHRydWVcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnNldHVwWnJFdmVudEhhbmRsZXIodGhpcy5lY2hhcnRzSW5zdGFuY2UpO1xyXG5cclxuICAgIHRoaXMuc2V0dXBMZWdlbmRFdmVudEhhbmRsZXIodGhpcy5lY2hhcnRzSW5zdGFuY2UpO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlU2VyaWVzKHNoYXBlczogU2hhcGVbXSk6IEFycmF5PExpbmVTZXJpZXNPcHRpb24gfCBDdXN0b21TZXJpZXNPcHRpb24gfCBTY2F0dGVyU2VyaWVzT3B0aW9uPiB7XHJcbiAgICBsZXQgc2VyaWVzOiBBcnJheTxMaW5lU2VyaWVzT3B0aW9uIHwgQ3VzdG9tU2VyaWVzT3B0aW9uIHwgU2NhdHRlclNlcmllc09wdGlvbj4gPSBbXTtcclxuICAgIHNoYXBlcy5mb3JFYWNoKFxyXG4gICAgICAoc2hhcGU6IFNoYXBlKSA9PiB7XHJcbiAgICAgICAgc3dpdGNoIChzaGFwZS52YXJpYW50KSB7XHJcbiAgICAgICAgICBjYXNlIFNoYXBlVmFyaWFudC5UUkFDRTpcclxuICAgICAgICAgICAgc2VyaWVzLnB1c2godGhpcy5jcmVhdGVUcmFjZShzaGFwZSBhcyBUcmFjZSkpXHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICApO1xyXG4gICAgcmV0dXJuIHNlcmllcztcclxuICB9XHJcblxyXG4gIGNyZWF0ZVRyYWNlKHRyYWNlOiBUcmFjZSk6IExpbmVTZXJpZXNPcHRpb24gfCBTY2F0dGVyU2VyaWVzT3B0aW9uIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIHR5cGU6IHRyYWNlLnR5cGUsXHJcbiAgICAgIG5hbWU6IHRyYWNlLm5hbWUsXHJcbiAgICAgIGRhdGE6IHRyYWNlLnBvaW50cy5tYXAoXHJcbiAgICAgICAgKHBvaW50OiBQb2ludCkgPT4gKHtcclxuICAgICAgICAgIHZhbHVlOiBbcG9pbnQueCwgcG9pbnQueV0sXHJcbiAgICAgICAgICBzeW1ib2w6IHBvaW50LnN5bWJvbCA/PyAnY2lyY2xlJyxcclxuICAgICAgICAgIG5hbWU6IHBvaW50Lm5hbWUsXHJcbiAgICAgICAgICBzeW1ib2xTaXplOiBwb2ludC5zeW1ib2xTaXplID8/IDIsXHJcbiAgICAgICAgICBpdGVtU3R5bGU6IHtcclxuICAgICAgICAgICAgY29sb3I6IHBvaW50LmNvbG9yXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgZW1waGFzaXM6IHtcclxuICAgICAgICAgICAgZGlzYWJsZWQ6IHRydWVcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBsYWJlbDoge1xyXG4gICAgICAgICAgICBzaG93OiB0cnVlLFxyXG4gICAgICAgICAgICBwb3NpdGlvbjogJ2JvdHRvbScsXHJcbiAgICAgICAgICAgIGFsaWduOiAnbGVmdCcsXHJcbiAgICAgICAgICAgIHZlcnRpY2FsQWxpZ246ICdib3R0b20nLFxyXG4gICAgICAgICAgICBmb3JtYXR0ZXI6ICgpID0+IGAke3BvaW50Lm5hbWUgPz8gJyd9YCxcclxuICAgICAgICAgICAgZm9udFNpemU6IDEzLFxyXG4gICAgICAgICAgICBwYWRkaW5nOiBbMCwgMCwgMCwgMTBdLFxyXG4gICAgICAgICAgICB3aWR0aDogMTAwLFxyXG4gICAgICAgICAgICBvdmVyZmxvdzogJ3RydW5jYXRlJyxcclxuICAgICAgICAgICAgZWxsaXBzaXM6ICcuLi4nLFxyXG4gICAgICAgICAgICBmb250V2VpZ2h0OiAnYm9sZCcsXHJcbiAgICAgICAgICAgIGNvbG9yOiB0aGlzLmRhcmtUaGVtZSA/ICcjZmZmJyA6ICcjMDAwJ1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHRvb2x0aXA6IHtcclxuICAgICAgICAgICAgZm9ybWF0dGVyOiAoeyB2YWx1ZSB9OiB7IHZhbHVlOiBudW1iZXJbXSB9KSA9PiBgXHJcbiAgICAgICAgICAgICAgPHN0cm9uZz4ke3RoaXMuY2hhcnQ/LnhBeGlzTmFtZX06PC9zdHJvbmc+ICR7dmFsdWVbMF0udG9GaXhlZCgzKS5yZXBsYWNlKC9bLixdMDAwJC8sIFwiXCIpfVxyXG4gICAgICAgICAgICAgIDxicj5cclxuICAgICAgICAgICAgICA8c3Ryb25nPiR7dGhpcy5jaGFydD8ueUF4aXNOYW1lfTo8L3N0cm9uZz4gJHt2YWx1ZVsxXS50b0ZpeGVkKDMpLnJlcGxhY2UoL1suLF0wMDAkLywgXCJcIil9XHJcbiAgICAgICAgICAgIGBcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICApLFxyXG4gICAgICBjb2xvcjogdHJhY2UuY29sb3IsXHJcbiAgICAgIGxpbmVTdHlsZToge1xyXG4gICAgICAgIHdpZHRoOiB0cmFjZS53aWR0aCxcclxuICAgICAgICB0eXBlOiB0cmFjZS5zdHlsZSxcclxuICAgICAgICBvcGFjaXR5OiB0cmFjZS5vcGFjaXR5ID8/IDFcclxuICAgICAgfSxcclxuICAgICAgc21vb3RoOiB0cmFjZS5zbW9vdGggPz8gZmFsc2VcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBnZXRMZWdlbmRJdGVtU2VsZWN0aW9uKHNoYXBlOiBTaGFwZSk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKHRoaXMuaXNMZWdlbmRDbGlja2VkKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmxlZ2VuZFNlbGVjdGVkW3NoYXBlLm5hbWUgYXMgc3RyaW5nXSA/PyB0cnVlO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHJldHVybiBzaGFwZS5zZWxlY3RlZEJ5RGVmYXVsdCA/PyB0cnVlXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBpbnRlcmNlcHQgYSBzZWxlY3Rpb24gY2hhbmdlIGV2ZW50IG9uIHRoZSBsZWdlbmQgYW5kIHNhdmUgdGhlIHN0YXRlIFxyXG4gICAqIG9mIGFsbCBzZWxlY3Rpb25zIG9uIHRoZSBzdXBwb3J0aW5nIHZhcmlhYmxlIGxlZ2VuZFNlbGVjdGVkXHJcbiAgICogXHJcbiAgICogQHBhcmFtIGVjIFxyXG4gICAqL1xyXG4gIHNldHVwTGVnZW5kRXZlbnRIYW5kbGVyKGVjOiBFQ2hhcnRzKSB7XHJcbiAgICBpZiAodGhpcy5lY2hhcnRzSW5zdGFuY2UgIT0gbnVsbCkge1xyXG4gICAgICB0aGlzLmVjaGFydHNJbnN0YW5jZS5vbignbGVnZW5kc2VsZWN0Y2hhbmdlZCcsIChwYXJhbXM6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMuaXNMZWdlbmRDbGlja2VkID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLmxlZ2VuZFNlbGVjdGVkID0gcGFyYW1zLnNlbGVjdGVkO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBzZXR1cFpyRXZlbnRIYW5kbGVyKGVjOiBFQ2hhcnRzKSB7XHJcbiAgICB0aGlzLnpyID0gZWMuZ2V0WnIoKTtcclxuICAgIC8qKiBcclxuICAgICAqIEludGVyY2VwdHMgdGhlIGNsaWNrIGV2ZW50IG9uIHRoZSBjaGFydCAoaWYgdGhlIGNsaWNrVG9BZGRQb2ludCBwcm9wZXJ0eSBpcyBzZXQgdG8gdHJ1ZSlcclxuICAgICAqIGFuZCBlbWl0cyB0aGUgcG9pbnQgY29vcmRpbmF0ZXMgdG8gdGhlIGZhdGhlciBjb21wb25lbnQuXHJcbiAgICAgKi9cclxuICAgIHRoaXMuenIub24oJ2NsaWNrJywgcGFyYW1zID0+IHtcclxuICAgICAgbGV0IG9wdGlvbjogYW55ID0gZWMuZ2V0T3B0aW9uKCk7XHJcbiAgICAgIGxldCBhY3RpdmUgPSBvcHRpb24/LnRvb2xib3g/LlswXT8uZmVhdHVyZT8ubXlBZGRQb2ludD8uaWNvblN0YXR1cztcclxuICAgICAgaWYgKGFjdGl2ZSAmJiB0aGlzLmNoYXJ0Py5jbGlja1RvQWRkUG9pbnQpIHtcclxuICAgICAgICBjb25zdCBwb2ludEluUGl4ZWwgPSBbcGFyYW1zLm9mZnNldFgsIHBhcmFtcy5vZmZzZXRZXTtcclxuICAgICAgICBjb25zdCBwb2ludEluR3JpZCA9IGVjLmNvbnZlcnRGcm9tUGl4ZWwoJ2dyaWQnLCBwb2ludEluUGl4ZWwpO1xyXG4gICAgICAgIGlmIChlYy5jb250YWluUGl4ZWwoJ2dyaWQnLCBwb2ludEluUGl4ZWwpICYmIHBvaW50SW5HcmlkKSB7XHJcbiAgICAgICAgICBsZXQgbmV3UG9pbnQ6IHsgeDogbnVtYmVyLCB5OiBudW1iZXIgfSA9IHtcclxuICAgICAgICAgICAgeDogK3BvaW50SW5HcmlkWzBdLnRvRml4ZWQoMyksXHJcbiAgICAgICAgICAgIHk6ICtwb2ludEluR3JpZFsxXS50b0ZpeGVkKDMpXHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgICAgdGhpcy5hZGRQb2ludC5lbWl0KG5ld1BvaW50KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgLyoqIFxyXG4gICAgICogVGhpcyBpcyB1c2VkIHBlcmZvcm0gY3VzdG9tIGFjdGlvbnMgd2hlbiB0aGUgbW91c2UgaXMgaG92ZXJpbmcgdGhlIGNoYXJ0IGFyZWFcclxuICAgICAqL1xyXG4gICAgdGhpcy56ci5vbignbW91c2Vtb3ZlJywgcGFyYW1zID0+IHtcclxuICAgICAgY29uc3QgcG9pbnRJblBpeGVsID0gW3BhcmFtcy5vZmZzZXRYLCBwYXJhbXMub2Zmc2V0WV07XHJcbiAgICAgIGNvbnN0IHBvaW50SW5HcmlkID0gZWMuY29udmVydEZyb21QaXhlbCgnZ3JpZCcsIHBvaW50SW5QaXhlbCk7XHJcbiAgICAgIC8qIFxyXG4gICAgICAgKiBMb2dpYyB0byBlbWl0IHRvIHRoZSBmYXRoZXIgY29tcG9uZW50IHRoZSB4IGFuZCB5IGNkaW5hdGVzIHdoZW4gdGhlXHJcbiAgICAgICAqIGN1cnNvciBpcyBob3ZlcmluZyB0aGUgY2hhcnQgYXJlYSAuXHJcbiAgICAgICAqL1xyXG4gICAgICBpZiAoZWMuY29udGFpblBpeGVsKCdncmlkJywgcG9pbnRJblBpeGVsKSAmJiBwb2ludEluR3JpZCkge1xyXG4gICAgICAgIGxldCBuZXdQb2ludDogeyB4OiBudW1iZXIsIHk6IG51bWJlciB9ID0ge1xyXG4gICAgICAgICAgeDogK3BvaW50SW5HcmlkWzBdLnRvRml4ZWQoMyksXHJcbiAgICAgICAgICB5OiArcG9pbnRJbkdyaWRbMV0udG9GaXhlZCgzKVxyXG4gICAgICAgIH07XHJcbiAgICAgICAgdGhpcy5jaGFydEhvdmVyLmVtaXQobmV3UG9pbnQpO1xyXG4gICAgICB9XHJcbiAgICAgIC8qIExvZ2ljIHRvIGNoYW5nZSB0aGUgY3Vyc29yIGljb24gd2hlbiB0aGUgXCJDbGljayB0byBBZGQgUG9pbnRcIiBmZWF0dXJlIGlzIGFjdGl2ZSBhbmQgdmljZXZlcnNhLiAqL1xyXG4gICAgICBjb25zdCBvcHRpb246IGFueSA9IGVjLmdldE9wdGlvbigpO1xyXG4gICAgICBjb25zdCBhZGRQb2ludElzQWN0aXZlID0gb3B0aW9uPy50b29sYm94Py5bMF0/LmZlYXR1cmU/Lm15QWRkUG9pbnQ/Lmljb25TdGF0dXM7XHJcbiAgICAgIGlmIChhZGRQb2ludElzQWN0aXZlKSB7XHJcbiAgICAgICAgdGhpcy56cj8uc2V0Q3Vyc29yU3R5bGUoXHJcbiAgICAgICAgICBlYy5jb250YWluUGl4ZWwoJ2dyaWQnLCBwb2ludEluUGl4ZWwpID8gJ2NvcHknIDogJ2RlZmF1bHQnXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
|
|
@@ -25,4 +25,4 @@ export var ShapeVariant;
|
|
|
25
25
|
(function (ShapeVariant) {
|
|
26
26
|
ShapeVariant[ShapeVariant["TRACE"] = 0] = "TRACE";
|
|
27
27
|
})(ShapeVariant || (ShapeVariant = {}));
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQubW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l3aWJpdC9jaGFydC9zcmMvbGliL21vZGVscy9jaGFydC5tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMkpBLE1BQU0sQ0FBTixJQUFZLFNBR1g7QUFIRCxXQUFZLFNBQVM7SUFDakIsMEJBQWEsQ0FBQTtJQUNiLGdDQUFtQixDQUFBO0FBQ3ZCLENBQUMsRUFIVyxTQUFTLEtBQVQsU0FBUyxRQUdwQjtBQUVELE1BQU0sQ0FBTixJQUFZLFdBTVg7QUFORCxXQUFZLFdBQVc7SUFDbkIsNEJBQWEsQ0FBQTtJQUNiLGdDQUFpQixDQUFBO0lBQ2pCLG9DQUFxQixDQUFBO0lBQ3JCLDBCQUFXLENBQUE7SUFDWCxrQ0FBbUIsQ0FBQTtBQUN2QixDQUFDLEVBTlcsV0FBVyxLQUFYLFdBQVcsUUFNdEI7QUFFRCxNQUFNLENBQU4sSUFBWSxVQUlYO0FBSkQsV0FBWSxVQUFVO0lBQ2xCLDZCQUFlLENBQUE7SUFDZiwrQkFBaUIsQ0FBQTtJQUNqQiwrQkFBaUIsQ0FBQTtBQUNyQixDQUFDLEVBSlcsVUFBVSxLQUFWLFVBQVUsUUFJckI7QUFFRCxNQUFNLENBQU4sSUFBWSxRQUVYO0FBRkQsV0FBWSxRQUFRO0lBQ2hCLDJCQUFlLENBQUE7QUFDbkIsQ0FBQyxFQUZXLFFBQVEsS0FBUixRQUFRLFFBRW5CO0FBRUQsTUFBTSxDQUFOLElBQVksWUFFWDtBQUZELFdBQVksWUFBWTtJQUNwQixpREFBSyxDQUFBO0FBQ1QsQ0FBQyxFQUZXLFlBQVksS0FBWixZQUFZLFFBRXZCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEludGVyZmFjZSB0byBkZWZpbmUgdGhlIENoYXJ0IG1vZGVsLlxyXG4gKlxyXG4gKiBAZXhwb3J0XHJcbiAqIEBpbnRlcmZhY2UgQ2hhcnRcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ2hhcnQge1xyXG4gICAgdGl0bGU6IHN0cmluZztcclxuICAgIHNob3dMZWdlbmQ/OiBib29sZWFuO1xyXG4gICAgeEF4aXNUeXBlOiBBeGlzVHlwZTtcclxuICAgIHhBeGlzTmFtZTogc3RyaW5nO1xyXG4gICAgeEF4aXNVb20/OiBzdHJpbmc7XHJcbiAgICB4TWluPzogbnVtYmVyO1xyXG4gICAgeE1heD86IG51bWJlcjtcclxuICAgIHlBeGlzVHlwZTogQXhpc1R5cGU7XHJcbiAgICB5QXhpc05hbWU6IHN0cmluZztcclxuICAgIHlBeGlzVW9tPzogc3RyaW5nO1xyXG4gICAgeU1pbj86IG51bWJlcjtcclxuICAgIHlNYXg/OiBudW1iZXI7XHJcbiAgICAvKipcclxuICAgICAqIFRoZSBtYXhpbXVtIGRlY2ltYWxzIHRoYXQgY2FuIGhhdmUgdGhlIHZhbHVlcyBvbiB0aGUgeCBhbmQgeSBheGVzLlxyXG4gICAgICogSWYgb21pdHRlZCB0aGUgZGVmYXVsdCBpcyAzIGRlY2ltYWxzLlxyXG4gICAgICpcclxuICAgICAqIEB0eXBlIHtudW1iZXJ9XHJcbiAgICAgKiBAbWVtYmVyb2YgQ2hhcnRcclxuICAgICAqL1xyXG4gICAgbWF4QXhlc0RlY2ltYWxzPzogbnVtYmVyO1xyXG4gICAgLyoqXHJcbiAgICAgKiBJZiB0aGUgY2hhcnQgc2hvdWxkIGhhdmUgcmVuZGVyaW5nIGFuaW1hdGlvbnMuXHJcbiAgICAgKlxyXG4gICAgICogQHR5cGUge2Jvb2xlYW59XHJcbiAgICAgKiBAbWVtYmVyb2YgQ2hhcnRcclxuICAgICAqL1xyXG4gICAgaGFzQW5pbWF0aW9ucz86IGJvb2xlYW47XHJcbiAgICAvKipcclxuICAgICAqIEhvdyBsb25nIHRoZSBhbmltYXRpb24gc2hvdWxkIGxhc3QuXHJcbiAgICAgKiBFeHByZXNzZWQgaW4gbWlsbGlzZWNvbmRzLiBJZiBvbWl0dGVkIHRoZSBEZWZhdWx0IGlzIDUwMCBtcy5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7bnVtYmVyfVxyXG4gICAgICogQG1lbWJlcm9mIENoYXJ0XHJcbiAgICAgKi9cclxuICAgIGFuaW1hdGlvbkR1cmF0aW9uPzogbnVtYmVyO1xyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgbGlzdCBvZiBTaGFwZXMgdGhhdCB0aGUgY2hhcnQgbXVzdCByZW5kZXIuXHJcbiAgICAgKiBFYWNoIFNoYXBlIGNvcnJpc3BvbmRzIHRvIGEgc2luZ2xlIGNoYXJ0IGNvbXBvbmVudC5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7U2hhcGVbXX1cclxuICAgICAqIEBtZW1iZXJvZiBDaGFydFxyXG4gICAgICovXHJcbiAgICBzaGFwZXM6IFNoYXBlW107XHJcbiAgICAvKipcclxuICAgICAqIEFkZHMgaW50ZXJhY3Rpb24gd2l0aCB0aGUgY2hhcnQsIHNvIHRoYXQgd2hlbiBjbGlja2luZ1xyXG4gICAgICogZXZlcnl3aGVyZSBpbiB0aGUgY2hhcnQgYXJlYSBhIHBvaW50IGdldHMgYWRkZWQgYW5kIGl0J3MgY29vcmRpbmF0ZSBhcmUgXHJcbiAgICAgKiBlbWl0dGVkIHdpdGggYW4gZXZlbnQgdG8gdGhlIHBhcmVudCBjb21wb25lbnQuXHJcbiAgICAgKlxyXG4gICAgICogQHR5cGUge2Jvb2xlYW59XHJcbiAgICAgKiBAbWVtYmVyb2YgQ2hhcnRcclxuICAgICAqL1xyXG4gICAgY2xpY2tUb0FkZFBvaW50PzogYm9vbGVhbjtcclxuICAgIC8qKlxyXG4gICAgICogQ3VzdG9tIG5hbWUgZm9yIHRoZSBcImNsaWNrVG9BZGRQb2ludFwiIGV2ZW50IHJlbGF0ZWQgYnV0dG9uLiBcclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7c3RyaW5nfVxyXG4gICAgICogQG1lbWJlcm9mIENoYXJ0XHJcbiAgICAgKi9cclxuICAgIGFkZFBvaW50Q3VzdG9tTmFtZT86IHN0cmluZztcclxuICAgIC8qKlxyXG4gICAgICogQWRkcyB0aGUgcG9zc2liaWxpdHkgdG8gdXNlIHRoZSBzY3JvbGwgXHJcbiAgICAgKiB0byB6b29tIGluL291dCB0aGUgY2hhcnQgYXJlYS5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cclxuICAgICAqIEBtZW1iZXJvZiBDaGFydFxyXG4gICAgICovXHJcbiAgICBzY3JvbGxUb1pvb20/OiBib29sZWFuO1xyXG4gICAgLyoqXHJcbiAgICAgKiBUZWxscyB0aGUgY2hhcnQgdG8gcmVuZGVyIG9yIG5vdCB0aGUgZ3JpZCBsaW5lcy5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cclxuICAgICAqIEBtZW1iZXJvZiBDaGFydFxyXG4gICAgICovXHJcbiAgICBzaG93R3JpZD86IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFNoYXBlID0gVHJhY2U7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRyYWNlIHtcclxuICAgIG5hbWU/OiBzdHJpbmc7XHJcbiAgICAvKipcclxuICAgICAqIFRoZSB2YXJpYW50IG9mIHRoZSBTaGFwZSwgbXVzdCBiZSBvZiB0eXBlIFRyYWNlLlxyXG4gICAgICpcclxuICAgICAqIEB0eXBlIHtTaGFwZVZhcmlhbnR9XHJcbiAgICAgKiBAbWVtYmVyb2YgVHJhY2VcclxuICAgICAqL1xyXG4gICAgdmFyaWFudDogU2hhcGVWYXJpYW50O1xyXG4gICAgY29sb3I/OiBzdHJpbmc7XHJcbiAgICAvKipcclxuICAgICAqIFRoZSB0eXBlIG9mIHRoZSBUcmFjZSBkcmF3biBieSB0aGUgY2hhcnQuXHJcbiAgICAgKiBDYW4gYmUgYSBsaW5lIG9yIGEgc2NhdHRlci4gXHJcbiAgICAgKlxyXG4gICAgICogQHR5cGUge1RyYWNlVHlwZX1cclxuICAgICAqIEBtZW1iZXJvZiBUcmFjZVxyXG4gICAgICovXHJcbiAgICB0eXBlOiBUcmFjZVR5cGU7XHJcbiAgICB3aWR0aD86IG51bWJlcjtcclxuICAgIC8qKlxyXG4gICAgICogVGhlIGxpc3Qgb2YgcG9pbnRzIHRoYXQgZGVmaW5lIHRoZSBUcmFjZS5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7UG9pbnRbXX1cclxuICAgICAqIEBtZW1iZXJvZiBUcmFjZVxyXG4gICAgICovXHJcbiAgICBwb2ludHM6IFBvaW50W107XHJcbiAgICAvKipcclxuICAgICAqIFdoZXRoZXIgdG8gc2hvdyBhIHNtb290aCBjdXJ2ZSBvciBhIHNlZ21lbnRlZCBjdXJ2ZS5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cclxuICAgICAqIEBtZW1iZXJvZiBUcmFjZVxyXG4gICAgICovXHJcbiAgICBzbW9vdGg/OiBib29sZWFuO1xyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgc3R5bGUgb2YgdGhlIFRyYWNlLlxyXG4gICAgICogQ2FuIGJlIHNvbGlkLCBkYXNoZWQgb3IgZG90dGVkLlxyXG4gICAgICpcclxuICAgICAqIEB0eXBlIHtUcmFjZVN0eWxlfVxyXG4gICAgICogQG1lbWJlcm9mIFRyYWNlXHJcbiAgICAgKi9cclxuICAgIHN0eWxlPzogVHJhY2VTdHlsZTtcclxuICAgIC8qKlxyXG4gICAgICogT3B0aW9uIHRvIG1ha2UgdGhlIFRyYWNlIHNlbGVjdGVkL2Rlc2VsZWN0ZWQgYnkgZGVmYXVsdC5cclxuICAgICAqIEEgZGVzZWxlY3RlZCBUcmFjZSBpcyBvYnNjdXJlZCBmcm9tIHRoZSBjaGFydCBhbmQgY2FuIGJlIHRvZ2dsZWQgZnJvbSB0aGUgbGVnZW5kLiAgIFxyXG4gICAgICpcclxuICAgICAqIEB0eXBlIHtib29sZWFufVxyXG4gICAgICogQG1lbWJlcm9mIFRyYWNlXHJcbiAgICAgKi9cclxuICAgIHNlbGVjdGVkQnlEZWZhdWx0PzogYm9vbGVhbjtcclxuICAgIG9wYWNpdHk/
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQubW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l3aWJpdC9jaGFydC9zcmMvbGliL21vZGVscy9jaGFydC5tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMkpBLE1BQU0sQ0FBTixJQUFZLFNBR1g7QUFIRCxXQUFZLFNBQVM7SUFDakIsMEJBQWEsQ0FBQTtJQUNiLGdDQUFtQixDQUFBO0FBQ3ZCLENBQUMsRUFIVyxTQUFTLEtBQVQsU0FBUyxRQUdwQjtBQUVELE1BQU0sQ0FBTixJQUFZLFdBTVg7QUFORCxXQUFZLFdBQVc7SUFDbkIsNEJBQWEsQ0FBQTtJQUNiLGdDQUFpQixDQUFBO0lBQ2pCLG9DQUFxQixDQUFBO0lBQ3JCLDBCQUFXLENBQUE7SUFDWCxrQ0FBbUIsQ0FBQTtBQUN2QixDQUFDLEVBTlcsV0FBVyxLQUFYLFdBQVcsUUFNdEI7QUFFRCxNQUFNLENBQU4sSUFBWSxVQUlYO0FBSkQsV0FBWSxVQUFVO0lBQ2xCLDZCQUFlLENBQUE7SUFDZiwrQkFBaUIsQ0FBQTtJQUNqQiwrQkFBaUIsQ0FBQTtBQUNyQixDQUFDLEVBSlcsVUFBVSxLQUFWLFVBQVUsUUFJckI7QUFFRCxNQUFNLENBQU4sSUFBWSxRQUVYO0FBRkQsV0FBWSxRQUFRO0lBQ2hCLDJCQUFlLENBQUE7QUFDbkIsQ0FBQyxFQUZXLFFBQVEsS0FBUixRQUFRLFFBRW5CO0FBRUQsTUFBTSxDQUFOLElBQVksWUFFWDtBQUZELFdBQVksWUFBWTtJQUNwQixpREFBSyxDQUFBO0FBQ1QsQ0FBQyxFQUZXLFlBQVksS0FBWixZQUFZLFFBRXZCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEludGVyZmFjZSB0byBkZWZpbmUgdGhlIENoYXJ0IG1vZGVsLlxyXG4gKlxyXG4gKiBAZXhwb3J0XHJcbiAqIEBpbnRlcmZhY2UgQ2hhcnRcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ2hhcnQge1xyXG4gICAgdGl0bGU6IHN0cmluZztcclxuICAgIHNob3dMZWdlbmQ/OiBib29sZWFuO1xyXG4gICAgeEF4aXNUeXBlOiBBeGlzVHlwZTtcclxuICAgIHhBeGlzTmFtZTogc3RyaW5nO1xyXG4gICAgeEF4aXNVb20/OiBzdHJpbmc7XHJcbiAgICB4TWluPzogbnVtYmVyO1xyXG4gICAgeE1heD86IG51bWJlcjtcclxuICAgIHlBeGlzVHlwZTogQXhpc1R5cGU7XHJcbiAgICB5QXhpc05hbWU6IHN0cmluZztcclxuICAgIHlBeGlzVW9tPzogc3RyaW5nO1xyXG4gICAgeU1pbj86IG51bWJlcjtcclxuICAgIHlNYXg/OiBudW1iZXI7XHJcbiAgICAvKipcclxuICAgICAqIFRoZSBtYXhpbXVtIGRlY2ltYWxzIHRoYXQgY2FuIGhhdmUgdGhlIHZhbHVlcyBvbiB0aGUgeCBhbmQgeSBheGVzLlxyXG4gICAgICogSWYgb21pdHRlZCB0aGUgZGVmYXVsdCBpcyAzIGRlY2ltYWxzLlxyXG4gICAgICpcclxuICAgICAqIEB0eXBlIHtudW1iZXJ9XHJcbiAgICAgKiBAbWVtYmVyb2YgQ2hhcnRcclxuICAgICAqL1xyXG4gICAgbWF4QXhlc0RlY2ltYWxzPzogbnVtYmVyO1xyXG4gICAgLyoqXHJcbiAgICAgKiBJZiB0aGUgY2hhcnQgc2hvdWxkIGhhdmUgcmVuZGVyaW5nIGFuaW1hdGlvbnMuXHJcbiAgICAgKlxyXG4gICAgICogQHR5cGUge2Jvb2xlYW59XHJcbiAgICAgKiBAbWVtYmVyb2YgQ2hhcnRcclxuICAgICAqL1xyXG4gICAgaGFzQW5pbWF0aW9ucz86IGJvb2xlYW47XHJcbiAgICAvKipcclxuICAgICAqIEhvdyBsb25nIHRoZSBhbmltYXRpb24gc2hvdWxkIGxhc3QuXHJcbiAgICAgKiBFeHByZXNzZWQgaW4gbWlsbGlzZWNvbmRzLiBJZiBvbWl0dGVkIHRoZSBEZWZhdWx0IGlzIDUwMCBtcy5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7bnVtYmVyfVxyXG4gICAgICogQG1lbWJlcm9mIENoYXJ0XHJcbiAgICAgKi9cclxuICAgIGFuaW1hdGlvbkR1cmF0aW9uPzogbnVtYmVyO1xyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgbGlzdCBvZiBTaGFwZXMgdGhhdCB0aGUgY2hhcnQgbXVzdCByZW5kZXIuXHJcbiAgICAgKiBFYWNoIFNoYXBlIGNvcnJpc3BvbmRzIHRvIGEgc2luZ2xlIGNoYXJ0IGNvbXBvbmVudC5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7U2hhcGVbXX1cclxuICAgICAqIEBtZW1iZXJvZiBDaGFydFxyXG4gICAgICovXHJcbiAgICBzaGFwZXM6IFNoYXBlW107XHJcbiAgICAvKipcclxuICAgICAqIEFkZHMgaW50ZXJhY3Rpb24gd2l0aCB0aGUgY2hhcnQsIHNvIHRoYXQgd2hlbiBjbGlja2luZ1xyXG4gICAgICogZXZlcnl3aGVyZSBpbiB0aGUgY2hhcnQgYXJlYSBhIHBvaW50IGdldHMgYWRkZWQgYW5kIGl0J3MgY29vcmRpbmF0ZSBhcmUgXHJcbiAgICAgKiBlbWl0dGVkIHdpdGggYW4gZXZlbnQgdG8gdGhlIHBhcmVudCBjb21wb25lbnQuXHJcbiAgICAgKlxyXG4gICAgICogQHR5cGUge2Jvb2xlYW59XHJcbiAgICAgKiBAbWVtYmVyb2YgQ2hhcnRcclxuICAgICAqL1xyXG4gICAgY2xpY2tUb0FkZFBvaW50PzogYm9vbGVhbjtcclxuICAgIC8qKlxyXG4gICAgICogQ3VzdG9tIG5hbWUgZm9yIHRoZSBcImNsaWNrVG9BZGRQb2ludFwiIGV2ZW50IHJlbGF0ZWQgYnV0dG9uLiBcclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7c3RyaW5nfVxyXG4gICAgICogQG1lbWJlcm9mIENoYXJ0XHJcbiAgICAgKi9cclxuICAgIGFkZFBvaW50Q3VzdG9tTmFtZT86IHN0cmluZztcclxuICAgIC8qKlxyXG4gICAgICogQWRkcyB0aGUgcG9zc2liaWxpdHkgdG8gdXNlIHRoZSBzY3JvbGwgXHJcbiAgICAgKiB0byB6b29tIGluL291dCB0aGUgY2hhcnQgYXJlYS5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cclxuICAgICAqIEBtZW1iZXJvZiBDaGFydFxyXG4gICAgICovXHJcbiAgICBzY3JvbGxUb1pvb20/OiBib29sZWFuO1xyXG4gICAgLyoqXHJcbiAgICAgKiBUZWxscyB0aGUgY2hhcnQgdG8gcmVuZGVyIG9yIG5vdCB0aGUgZ3JpZCBsaW5lcy5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cclxuICAgICAqIEBtZW1iZXJvZiBDaGFydFxyXG4gICAgICovXHJcbiAgICBzaG93R3JpZD86IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFNoYXBlID0gVHJhY2U7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRyYWNlIHtcclxuICAgIG5hbWU/OiBzdHJpbmc7XHJcbiAgICAvKipcclxuICAgICAqIFRoZSB2YXJpYW50IG9mIHRoZSBTaGFwZSwgbXVzdCBiZSBvZiB0eXBlIFRyYWNlLlxyXG4gICAgICpcclxuICAgICAqIEB0eXBlIHtTaGFwZVZhcmlhbnR9XHJcbiAgICAgKiBAbWVtYmVyb2YgVHJhY2VcclxuICAgICAqL1xyXG4gICAgdmFyaWFudDogU2hhcGVWYXJpYW50O1xyXG4gICAgY29sb3I/OiBzdHJpbmc7XHJcbiAgICAvKipcclxuICAgICAqIFRoZSB0eXBlIG9mIHRoZSBUcmFjZSBkcmF3biBieSB0aGUgY2hhcnQuXHJcbiAgICAgKiBDYW4gYmUgYSBsaW5lIG9yIGEgc2NhdHRlci4gXHJcbiAgICAgKlxyXG4gICAgICogQHR5cGUge1RyYWNlVHlwZX1cclxuICAgICAqIEBtZW1iZXJvZiBUcmFjZVxyXG4gICAgICovXHJcbiAgICB0eXBlOiBUcmFjZVR5cGU7XHJcbiAgICB3aWR0aD86IG51bWJlcjtcclxuICAgIC8qKlxyXG4gICAgICogVGhlIGxpc3Qgb2YgcG9pbnRzIHRoYXQgZGVmaW5lIHRoZSBUcmFjZS5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7UG9pbnRbXX1cclxuICAgICAqIEBtZW1iZXJvZiBUcmFjZVxyXG4gICAgICovXHJcbiAgICBwb2ludHM6IFBvaW50W107XHJcbiAgICAvKipcclxuICAgICAqIFdoZXRoZXIgdG8gc2hvdyBhIHNtb290aCBjdXJ2ZSBvciBhIHNlZ21lbnRlZCBjdXJ2ZS5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cclxuICAgICAqIEBtZW1iZXJvZiBUcmFjZVxyXG4gICAgICovXHJcbiAgICBzbW9vdGg/OiBib29sZWFuO1xyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgc3R5bGUgb2YgdGhlIFRyYWNlLlxyXG4gICAgICogQ2FuIGJlIHNvbGlkLCBkYXNoZWQgb3IgZG90dGVkLlxyXG4gICAgICpcclxuICAgICAqIEB0eXBlIHtUcmFjZVN0eWxlfVxyXG4gICAgICogQG1lbWJlcm9mIFRyYWNlXHJcbiAgICAgKi9cclxuICAgIHN0eWxlPzogVHJhY2VTdHlsZTtcclxuICAgIC8qKlxyXG4gICAgICogT3B0aW9uIHRvIG1ha2UgdGhlIFRyYWNlIHNlbGVjdGVkL2Rlc2VsZWN0ZWQgYnkgZGVmYXVsdC5cclxuICAgICAqIEEgZGVzZWxlY3RlZCBUcmFjZSBpcyBvYnNjdXJlZCBmcm9tIHRoZSBjaGFydCBhbmQgY2FuIGJlIHRvZ2dsZWQgZnJvbSB0aGUgbGVnZW5kLiAgIFxyXG4gICAgICpcclxuICAgICAqIEB0eXBlIHtib29sZWFufVxyXG4gICAgICogQG1lbWJlcm9mIFRyYWNlXHJcbiAgICAgKi9cclxuICAgIHNlbGVjdGVkQnlEZWZhdWx0PzogYm9vbGVhbjtcclxuICAgIG9wYWNpdHk/OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUG9pbnQgZXh0ZW5kcyBCYXNlUG9pbnQge1xyXG4gICAgbmFtZT86IHN0cmluZztcclxuICAgIC8qKlxyXG4gICAgICogU3ltYm9sIHVzZWQgdG8gcmVwcmVzZW50IHRoZSBwb2ludCBpbiB0aGUgY2hhcnQuXHJcbiAgICAgKlxyXG4gICAgICogQHR5cGUge1BvaW50U3ltYm9sfVxyXG4gICAgICogQG1lbWJlcm9mIFBvaW50XHJcbiAgICAgKi9cclxuICAgIHN5bWJvbD86IFBvaW50U3ltYm9sO1xyXG4gICAgc3ltYm9sU2l6ZT86IG51bWJlcjtcclxuICAgIGNvbG9yPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEJhc2VQb2ludCB7XHJcbiAgICB4OiBudW1iZXI7XHJcbiAgICB5OiBudW1iZXJcclxufVxyXG5cclxuZXhwb3J0IGVudW0gVHJhY2VUeXBlIHtcclxuICAgIExJTkUgPSBcImxpbmVcIixcclxuICAgIFNDQVRURVIgPSBcInNjYXR0ZXJcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBQb2ludFN5bWJvbCB7XHJcbiAgICBOT05FID0gXCJub25lXCIsXHJcbiAgICBDSVJDTEUgPSBcImNpcmNsZVwiLFxyXG4gICAgVFJJQU5HTEUgPSBcInRyaWFuZ2xlXCIsXHJcbiAgICBQSU4gPSBcInBpblwiLFxyXG4gICAgRElBTU9ORCA9IFwiZGlhbW9uZFwiXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFRyYWNlU3R5bGUge1xyXG4gICAgU09MSUQgPSBcInNvbGlkXCIsXHJcbiAgICBEQVNIRUQgPSBcImRhc2hlZFwiLFxyXG4gICAgRE9UVEVEID0gXCJkb3R0ZWRcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBBeGlzVHlwZSB7XHJcbiAgICBWQUxVRSA9IFwidmFsdWVcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBTaGFwZVZhcmlhbnQge1xyXG4gICAgVFJBQ0VcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgQ2hhcnRUaGVtZSA9ICdkZWZhdWx0JyB8ICdkYXJrJzsiXX0=
|
package/esm2022/public-api.mjs
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
2
|
* Public API Surface of chart
|
|
3
3
|
*/
|
|
4
|
-
export * from './lib/chart.component';
|
|
5
|
-
export * from './lib/chart.module';
|
|
4
|
+
export * from './lib/components/chart.component';
|
|
6
5
|
export * from './lib/models/chart.models';
|
|
7
|
-
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2tpd2liaXQvY2hhcnQvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLGlDQUFpQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGNoYXJ0XHJcbiAqL1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hhcnQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hhcnQubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2NoYXJ0Lm1vZGVscyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnN0YW50cy9jaGFydC5jb25zdGFudHMnOyJdfQ==
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2tpd2liaXQvY2hhcnQvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgY2hhcnRcclxuICovXHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NoYXJ0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9jaGFydC5tb2RlbHMnOyJdfQ==
|