@validationcloud/fractal-ui 1.58.0 → 1.60.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/dist/charts.d.ts +4 -2
  2. package/dist/charts.js +22 -21
  3. package/dist/components/echarts-renderer/chart-theme.d.ts +6 -0
  4. package/dist/components/echarts-renderer/chart-theme.js +8 -0
  5. package/dist/components/echarts-renderer/echarts-renderer.d.ts +3 -8
  6. package/dist/components/echarts-renderer/echarts-renderer.js +15 -8
  7. package/dist/components/echarts-renderer/echarts-theme-option.d.ts +4 -4
  8. package/dist/components/echarts-renderer/formatters/formatter-functions.d.ts +22 -0
  9. package/dist/components/echarts-renderer/formatters/formatter-functions.js +41 -0
  10. package/dist/components/echarts-renderer/formatters/formatter-tokens.d.ts +63 -0
  11. package/dist/components/echarts-renderer/formatters/formatter-tokens.js +45 -0
  12. package/dist/components/echarts-renderer/formatters/replace-formatter-tokens.d.ts +26 -0
  13. package/dist/components/echarts-renderer/formatters/replace-formatter-tokens.js +70 -0
  14. package/dist/components/echarts-renderer/formatters/replace-formatter-tokens.test.d.ts +1 -0
  15. package/dist/components/echarts-renderer/mavrik-theme-horizontal.json.d.ts +26 -37
  16. package/dist/components/echarts-renderer/mavrik-theme-horizontal.json.js +34 -32
  17. package/dist/components/echarts-renderer/mavrik-theme.d.ts +4 -493
  18. package/dist/components/echarts-renderer/mavrik-theme.js +12 -19
  19. package/dist/components/echarts-renderer/mavrik-theme.json.d.ts +26 -37
  20. package/dist/components/echarts-renderer/mavrik-theme.json.js +34 -32
  21. package/dist/components/echarts-renderer/merge-theme-graphic-into-options.d.ts +9 -0
  22. package/dist/components/echarts-renderer/merge-theme-graphic-into-options.js +10 -0
  23. package/dist/components/echarts-renderer/use-chart-instance.d.ts +2 -5
  24. package/dist/components/echarts-renderer/use-chart-instance.js +47 -43
  25. package/dist/lib/render-chart-to-image.d.ts +4 -9
  26. package/dist/lib/render-chart-to-image.js +55 -44
  27. package/dist/lib/render-mavrik-chart-to-image.d.ts +1 -2
  28. package/dist/lib/render-mavrik-chart-to-image.js +15 -17
  29. package/dist/lib/render-mavrik-chart-to-image.test.d.ts +1 -0
  30. package/dist/server.d.ts +1 -0
  31. package/dist/server.js +9 -4
  32. package/package.json +1 -1
  33. package/dist/assets/vc-logo.svg.js +0 -4
  34. package/dist/components/echarts-renderer/echarts-theme-option.js +0 -9
  35. package/dist/components/echarts-renderer/watermark-graphic.d.ts +0 -12
  36. package/dist/components/echarts-renderer/watermark-graphic.js +0 -25
@@ -1,499 +1,10 @@
1
1
  import { EChartsOption } from 'echarts';
2
+ import { ChartTheme } from './chart-theme';
2
3
  /** Default Mavrik theme with vertical gradients (for vertical bars and other charts) */
3
- export declare const MAVRIK_THEME: {
4
- readonly name: "mavrik";
5
- readonly config: {
6
- color: {
7
- type: string;
8
- x: number;
9
- y: number;
10
- x2: number;
11
- y2: number;
12
- colorStops: {
13
- offset: number;
14
- color: string;
15
- }[];
16
- }[];
17
- backgroundColor: string;
18
- textStyle: {
19
- fontFamily: string;
20
- fontWeight: number;
21
- };
22
- title: {
23
- top: number;
24
- left: number;
25
- textStyle: {
26
- color: string;
27
- fontSize: number;
28
- fontWeight: number;
29
- };
30
- subtextStyle: {
31
- color: string;
32
- };
33
- };
34
- line: {
35
- itemStyle: {
36
- borderWidth: number;
37
- };
38
- lineStyle: {
39
- width: number;
40
- };
41
- areaStyle: {
42
- opacity: number;
43
- };
44
- showSymbol: boolean;
45
- symbolSize: number;
46
- symbol: string;
47
- smooth: boolean;
48
- sampling: string;
49
- };
50
- bar: {
51
- barGap: string;
52
- barCategoryGap: string;
53
- };
54
- categoryAxis: {
55
- axisLine: {
56
- show: boolean;
57
- lineStyle: {
58
- color: string;
59
- type: string;
60
- };
61
- };
62
- axisTick: {
63
- show: boolean;
64
- };
65
- axisLabel: {
66
- show: boolean;
67
- color: string;
68
- hideOverlap: boolean;
69
- };
70
- nameLocation: string;
71
- nameTextStyle: {
72
- color: string;
73
- fontSize: number;
74
- fontWeight: number;
75
- };
76
- splitLine: {
77
- show: boolean;
78
- };
79
- };
80
- valueAxis: {
81
- axisLine: {
82
- show: boolean;
83
- };
84
- axisTick: {
85
- show: boolean;
86
- };
87
- axisLabel: {
88
- show: boolean;
89
- color: string;
90
- hideOverlap: boolean;
91
- };
92
- nameLocation: string;
93
- nameTextStyle: {
94
- color: string;
95
- fontSize: number;
96
- fontWeight: number;
97
- };
98
- splitLine: {
99
- show: boolean;
100
- lineStyle: {
101
- color: string[];
102
- type: string;
103
- };
104
- };
105
- };
106
- logAxis: {
107
- axisLine: {
108
- show: boolean;
109
- };
110
- axisTick: {
111
- show: boolean;
112
- };
113
- axisLabel: {
114
- show: boolean;
115
- color: string;
116
- hideOverlap: boolean;
117
- };
118
- nameLocation: string;
119
- nameTextStyle: {
120
- color: string;
121
- fontSize: number;
122
- fontWeight: number;
123
- };
124
- splitLine: {
125
- show: boolean;
126
- lineStyle: {
127
- color: string[];
128
- type: string;
129
- };
130
- };
131
- };
132
- timeAxis: {
133
- axisLine: {
134
- show: boolean;
135
- lineStyle: {
136
- color: string;
137
- };
138
- };
139
- axisTick: {
140
- show: boolean;
141
- };
142
- axisLabel: {
143
- show: boolean;
144
- color: string;
145
- hideOverlap: boolean;
146
- };
147
- nameLocation: string;
148
- nameTextStyle: {
149
- color: string;
150
- fontSize: number;
151
- fontWeight: number;
152
- };
153
- splitLine: {
154
- show: boolean;
155
- };
156
- };
157
- legend: {
158
- top: number;
159
- left: string;
160
- right: number;
161
- icon: string;
162
- itemGap: number;
163
- itemWidth: number;
164
- itemHeight: number;
165
- textStyle: {
166
- color: string;
167
- fontSize: number;
168
- };
169
- };
170
- grid: {
171
- top: number;
172
- left: number;
173
- right: number;
174
- bottom: number;
175
- outerBoundsMode: string;
176
- outerBoundsContain: string;
177
- };
178
- dataZoom: {
179
- backgroundColor: string;
180
- borderColor: string;
181
- borderRadius: number;
182
- dataBackground: {
183
- lineStyle: {
184
- color: string;
185
- width: number;
186
- };
187
- areaStyle: {
188
- color: string;
189
- };
190
- };
191
- selectedDataBackground: {
192
- lineStyle: {
193
- color: string;
194
- width: number;
195
- };
196
- areaStyle: {
197
- color: string;
198
- };
199
- };
200
- fillerColor: string;
201
- handleStyle: {
202
- color: string;
203
- borderColor: string;
204
- };
205
- moveHandleStyle: {
206
- color: string;
207
- };
208
- brushStyle: {
209
- color: string;
210
- };
211
- emphasis: {
212
- handleStyle: {
213
- color: string;
214
- borderColor: string;
215
- };
216
- };
217
- handleSize: string;
218
- textStyle: {
219
- color: string;
220
- };
221
- };
222
- markPoint: {
223
- label: {
224
- color: string;
225
- };
226
- emphasis: {
227
- label: {
228
- color: string;
229
- };
230
- };
231
- };
232
- tooltip: {
233
- backgroundColor: string;
234
- padding: number;
235
- borderRadius: number;
236
- borderColor: string;
237
- borderWidth: number;
238
- textStyle: {
239
- color: string;
240
- fontFamily: string;
241
- fontSize: number;
242
- fontStyle: string;
243
- fontWeight: number;
244
- };
245
- extraCssText: string;
246
- };
247
- };
248
- };
4
+ export declare const MAVRIK_THEME: ChartTheme;
249
5
  /** Mavrik theme variant with horizontal gradients (for horizontal bar charts) */
250
- export declare const MAVRIK_THEME_HORIZONTAL: {
251
- readonly name: "mavrik-horizontal";
252
- readonly config: {
253
- color: {
254
- type: string;
255
- x: number;
256
- y: number;
257
- x2: number;
258
- y2: number;
259
- colorStops: {
260
- offset: number;
261
- color: string;
262
- }[];
263
- }[];
264
- backgroundColor: string;
265
- textStyle: {
266
- fontFamily: string;
267
- fontWeight: number;
268
- };
269
- title: {
270
- top: number;
271
- left: number;
272
- textStyle: {
273
- color: string;
274
- fontSize: number;
275
- fontWeight: number;
276
- };
277
- subtextStyle: {
278
- color: string;
279
- };
280
- };
281
- line: {
282
- itemStyle: {
283
- borderWidth: number;
284
- };
285
- lineStyle: {
286
- width: number;
287
- };
288
- areaStyle: {
289
- opacity: number;
290
- };
291
- showSymbol: boolean;
292
- symbolSize: number;
293
- symbol: string;
294
- smooth: boolean;
295
- sampling: string;
296
- };
297
- bar: {
298
- barGap: string;
299
- barCategoryGap: string;
300
- };
301
- categoryAxis: {
302
- axisLine: {
303
- show: boolean;
304
- lineStyle: {
305
- color: string;
306
- type: string;
307
- };
308
- };
309
- axisTick: {
310
- show: boolean;
311
- };
312
- axisLabel: {
313
- show: boolean;
314
- color: string;
315
- hideOverlap: boolean;
316
- };
317
- nameLocation: string;
318
- nameTextStyle: {
319
- color: string;
320
- fontSize: number;
321
- fontWeight: number;
322
- };
323
- splitLine: {
324
- show: boolean;
325
- };
326
- };
327
- valueAxis: {
328
- axisLine: {
329
- show: boolean;
330
- };
331
- axisTick: {
332
- show: boolean;
333
- };
334
- axisLabel: {
335
- show: boolean;
336
- color: string;
337
- hideOverlap: boolean;
338
- };
339
- nameLocation: string;
340
- nameTextStyle: {
341
- color: string;
342
- fontSize: number;
343
- fontWeight: number;
344
- };
345
- splitLine: {
346
- show: boolean;
347
- lineStyle: {
348
- color: string[];
349
- type: string;
350
- };
351
- };
352
- };
353
- logAxis: {
354
- axisLine: {
355
- show: boolean;
356
- };
357
- axisTick: {
358
- show: boolean;
359
- };
360
- axisLabel: {
361
- show: boolean;
362
- color: string;
363
- hideOverlap: boolean;
364
- };
365
- nameLocation: string;
366
- nameTextStyle: {
367
- color: string;
368
- fontSize: number;
369
- fontWeight: number;
370
- };
371
- splitLine: {
372
- show: boolean;
373
- lineStyle: {
374
- color: string[];
375
- type: string;
376
- };
377
- };
378
- };
379
- timeAxis: {
380
- axisLine: {
381
- show: boolean;
382
- lineStyle: {
383
- color: string;
384
- };
385
- };
386
- axisTick: {
387
- show: boolean;
388
- };
389
- axisLabel: {
390
- show: boolean;
391
- color: string;
392
- hideOverlap: boolean;
393
- };
394
- nameLocation: string;
395
- nameTextStyle: {
396
- color: string;
397
- fontSize: number;
398
- fontWeight: number;
399
- };
400
- splitLine: {
401
- show: boolean;
402
- };
403
- };
404
- legend: {
405
- top: number;
406
- left: string;
407
- right: number;
408
- icon: string;
409
- itemGap: number;
410
- itemWidth: number;
411
- itemHeight: number;
412
- textStyle: {
413
- color: string;
414
- fontSize: number;
415
- };
416
- };
417
- grid: {
418
- top: number;
419
- left: number;
420
- right: number;
421
- bottom: number;
422
- outerBoundsMode: string;
423
- outerBoundsContain: string;
424
- };
425
- dataZoom: {
426
- backgroundColor: string;
427
- borderColor: string;
428
- borderRadius: number;
429
- dataBackground: {
430
- lineStyle: {
431
- color: string;
432
- width: number;
433
- };
434
- areaStyle: {
435
- color: string;
436
- };
437
- };
438
- selectedDataBackground: {
439
- lineStyle: {
440
- color: string;
441
- width: number;
442
- };
443
- areaStyle: {
444
- color: string;
445
- };
446
- };
447
- fillerColor: string;
448
- handleStyle: {
449
- color: string;
450
- borderColor: string;
451
- };
452
- moveHandleStyle: {
453
- color: string;
454
- };
455
- brushStyle: {
456
- color: string;
457
- };
458
- emphasis: {
459
- handleStyle: {
460
- color: string;
461
- borderColor: string;
462
- };
463
- };
464
- handleSize: string;
465
- textStyle: {
466
- color: string;
467
- };
468
- };
469
- markPoint: {
470
- label: {
471
- color: string;
472
- };
473
- emphasis: {
474
- label: {
475
- color: string;
476
- };
477
- };
478
- };
479
- tooltip: {
480
- backgroundColor: string;
481
- padding: number;
482
- borderRadius: number;
483
- borderColor: string;
484
- borderWidth: number;
485
- textStyle: {
486
- color: string;
487
- fontFamily: string;
488
- fontSize: number;
489
- fontStyle: string;
490
- fontWeight: number;
491
- };
492
- extraCssText: string;
493
- };
494
- };
495
- };
496
- export type MavrikTheme = typeof MAVRIK_THEME | typeof MAVRIK_THEME_HORIZONTAL;
6
+ export declare const MAVRIK_THEME_HORIZONTAL: ChartTheme;
7
+ export type MavrikTheme = ChartTheme;
497
8
  /**
498
9
  * Selects the appropriate Mavrik theme variant based on chart options.
499
10
  *
@@ -1,25 +1,18 @@
1
- import { hasHorizontalBars as e } from "./detect-horizontal-bars.js";
2
- import { isEChartsThemeOption as m } from "./echarts-theme-option.js";
3
- import r from "./mavrik-theme-horizontal.json.js";
4
- import i from "./mavrik-theme.json.js";
5
- function t(o, n) {
6
- if (!m(n))
7
- throw new Error(`Invalid ECharts theme configuration JSON: ${o}`);
8
- }
9
- t("mavrik-theme.json", i);
10
- t("mavrik-theme-horizontal.json", r);
11
- const a = {
1
+ import { hasHorizontalBars as r } from "./detect-horizontal-bars.js";
2
+ import i from "./mavrik-theme-horizontal.json.js";
3
+ import n from "./mavrik-theme.json.js";
4
+ const t = {
12
5
  name: "mavrik",
13
- config: i
14
- }, h = {
6
+ config: n
7
+ }, m = {
15
8
  name: "mavrik-horizontal",
16
- config: r
9
+ config: i
17
10
  };
18
- function E(o) {
19
- return e(o) ? h : a;
11
+ function c(o) {
12
+ return r(o) ? m : t;
20
13
  }
21
14
  export {
22
- a as MAVRIK_THEME,
23
- h as MAVRIK_THEME_HORIZONTAL,
24
- E as selectMavrikTheme
15
+ t as MAVRIK_THEME,
16
+ m as MAVRIK_THEME_HORIZONTAL,
17
+ c as selectMavrikTheme
25
18
  };
@@ -13,46 +13,21 @@ declare const _default: {
13
13
  },
14
14
  {
15
15
  "offset": 1,
16
- "color": "#DF687D"
16
+ "color": "#DE7385"
17
17
  }
18
18
  ]
19
19
  },
20
- {
21
- "type": "linear",
22
- "x": 0,
23
- "y": 0,
24
- "x2": 0,
25
- "y2": 1,
26
- "colorStops": [
27
- {
28
- "offset": 0,
29
- "color": "#FFFFFF"
30
- },
31
- {
32
- "offset": 1,
33
- "color": "#FFFFFF"
34
- }
35
- ]
36
- },
37
- {
38
- "type": "linear",
39
- "x": 0,
40
- "y": 0,
41
- "x2": 0,
42
- "y2": 1,
43
- "colorStops": [
44
- {
45
- "offset": 0,
46
- "color": "#1E6FDA"
47
- },
48
- {
49
- "offset": 1,
50
- "color": "#3F8CFF"
51
- }
52
- ]
53
- }
20
+ "#00BBFA",
21
+ "#0072B2",
22
+ "#E69F00",
23
+ "#D66119",
24
+ "#56B4E9",
25
+ "#45B26B",
26
+ "#F0E442",
27
+ "#FF99BF",
28
+ "#8277D8"
54
29
  ],
55
- "backgroundColor": "#242731",
30
+ "backgroundColor": "#1A1D1F",
56
31
  "textStyle": {
57
32
  "fontFamily": "Poppins, sans-serif",
58
33
  "fontWeight": 500
@@ -214,7 +189,7 @@ declare const _default: {
214
189
  "outerBoundsContain": "axisLabel"
215
190
  },
216
191
  "dataZoom": {
217
- "backgroundColor": "rgba(36, 39, 49, 0)",
192
+ "backgroundColor": "rgba(26, 29, 31, 0)",
218
193
  "borderColor": "#3A3D46",
219
194
  "borderRadius": 4,
220
195
  "dataBackground": {
@@ -268,6 +243,7 @@ declare const _default: {
268
243
  }
269
244
  },
270
245
  "tooltip": {
246
+ "confine": true,
271
247
  "backgroundColor": "transparent",
272
248
  "padding": 10,
273
249
  "borderRadius": 8,
@@ -281,6 +257,19 @@ declare const _default: {
281
257
  "fontWeight": 500
282
258
  },
283
259
  "extraCssText": "letter-spacing: 0.22px; box-shadow: 0 14px 11px -4px rgba(0, 0, 0, 0.30), 0 -4px 4px 0 rgba(0, 0, 0, 0.04) inset; background: radial-gradient(ellipse at 25% 0%, rgba(217, 217, 217, 0.12) 0%, transparent 60%), #1A1D1F;"
260
+ },
261
+ "graphic": {
262
+ "type": "image",
263
+ "id": "fractal-watermark",
264
+ "left": "center",
265
+ "top": "middle",
266
+ "style": {
267
+ "image": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMTAiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyMTAgMjQiPgogIDxnIGZpbGw9IiNhN2E5YWQiIGZpbGwtb3BhY2l0eT0iMC4zIj4KICAgIDxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTMzLjczMyAxLjg2OGgtMjEuNjdDNi40MzggMS44NjggMS44NzggNi40MDQgMS44NzggMTJzNC41NiAxMC4xMzIgMTAuMTg1IDEwLjEzMmgyMS42N2M1LjYyNSAwIDEwLjE4NS00LjUzNiAxMC4xODUtMTAuMTMyUzM5LjM1OCAxLjg2OCAzMy43MzMgMS44NjhNMCAxMmMwIDYuNjI3IDUuNCAxMiAxMi4wNjMgMTJoMjEuNjdjNi42NjIgMCAxMi4wNjMtNS4zNzMgMTIuMDYzLTEycy01LjQtMTItMTIuMDYzLTEyaC0yMS42N0M1LjQwMSAwIDAgNS4zNzMgMCAxMiIgY2xpcC1ydWxlPSJldmVub2RkIi8+CiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zMy43MzQgNS4xNzRoLTIxLjY3QzguMjczIDUuMTc0IDUuMiA4LjIzIDUuMiAxMnMzLjA3MyA2LjgyNiA2Ljg2MyA2LjgyNmgyMS42N2MzLjc5IDAgNi44NjItMy4wNTYgNi44NjItNi44MjZzLTMuMDcyLTYuODI2LTYuODYyLTYuODI2TTMuMzIzIDEyYzAgNC44MDIgMy45MTIgOC42OTUgOC43NCA4LjY5NWgyMS42N2M0LjgyNyAwIDguNzQtMy44OTMgOC43NC04LjY5NXMtMy45MTMtOC42OTUtOC43NC04LjY5NWgtMjEuNjdjLTQuODI4IDAtOC43NCAzLjg5My04Ljc0IDguNjk1IiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz4KICAgIDxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTMzLjczMyA4LjQ4aC0yMS42N0EzLjUzIDMuNTMgMCAwIDAgOC41MjMgMTJhMy41MyAzLjUzIDAgMCAwIDMuNTQgMy41MjFoMjEuNjdhMy41MyAzLjUzIDAgMCAwIDMuNTQtMy41MiAzLjUzIDMuNTMgMCAwIDAtMy41NC0zLjUyMk02LjY0NiAxMmMwIDIuOTc2IDIuNDI1IDUuMzkgNS40MTcgNS4zOWgyMS42N2MyLjk5MiAwIDUuNDE4LTIuNDE0IDUuNDE4LTUuMzlzLTIuNDI2LTUuMzktNS40MTgtNS4zOWgtMjEuNjdjLTIuOTkyIDAtNS40MTcgMi40MTQtNS40MTcgNS4zOSIgY2xpcC1ydWxlPSJldmVub2RkIi8+CiAgICA8cGF0aCBkPSJNNTguNDUgMjAuNjk1aC0yLjc3TDQ4LjU5MiAzLjMyN2gyLjdsNS43NzMgMTQuNTQyIDUuNzczLTE0LjU0MmgyLjd6TTczLjk4NiAyMC42OTVoLTIuMDZsLS4xNC0xLjQ4MnEtLjY0LjgxLTEuNjE3IDEuMjYyLS45NzguNDUtMi4xNjUuNDUxLTEuMjQ2IDAtMi4yMjMtLjQ4NmEzLjg2IDMuODYgMCAwIDEtMS41MzctMS4zMzIgMy40IDMuNCAwIDAgMS0uNTU5LTEuOTIycTAtMS4xMzQuNjA2LTEuOTkxLjYwNS0uODY4IDEuNjUzLTEuMzU1IDEuMDQ3LS40OTggMi4zODYtLjQ5OC44MzggMCAxLjY5OS4xOTdhNi42IDYuNiAwIDAgMSAxLjU3MS41NTZ2LS40MjlxMC0uODQ0LS40NDItMS40NDdhMi43IDIuNyAwIDAgMC0xLjE4Ny0uOTM4IDQuMSA0LjEgMCAwIDAtMS42NTMtLjMyNHEtLjgwMiAwLTEuNjQxLjI3OC0uODI2LjI3Ny0xLjU2Ljg1N2wtLjcyMS0xLjkzNGE5LjMgOS4zIDAgMCAxIDIuMi0uOTUgOC4zIDguMyAwIDAgMSAyLjI1Ny0uMzIzcTEuNTgzIDAgMi43MjQuNjI1YTQuMzUgNC4zNSAwIDAgMSAxLjc4IDEuNzgzcS42MyAxLjE0Ni42MyAyLjcxem0tNS41MTctMS43ODNxLjgyNyAwIDEuNTI1LS4zMzZhMi45MyAyLjkzIDAgMCAwIDEuMTI5LS45NzNxLjQ0Mi0uNjM2LjQ3Ny0xLjQ4MnYtLjE2MmE0LjcgNC43IDAgMCAwLTEuMzM4LS42ODMgNC42IDQuNiAwIDAgMC0xLjUwMi0uMjU1cS0xLjE3NiAwLTEuOTU1LjU1Ni0uNzguNTU1LS43OCAxLjQyNCAwIC41NDQuMzE0Ljk4NC4zMjYuNDMuODczLjY4My41Ni4yNDQgMS4yNTcuMjQ0TTc3Ljk4OCAyMC42OTVoLTIuNTRWMi44NjRoMi41NHpNODAuNjY2IDUuNzU4cS0uNTQ4IDAtLjkyLS4zODJhMS4yOCAxLjI4IDAgMCAxLS4zNzMtLjkyNnEwLS41NDUuMzczLS45MTUuMzcyLS4zODIuOTItLjM4Mi41NiAwIC45MzIuMzgyLjM4NS4zNy4zODUuOTE1dC0uMzg1LjkyNnEtLjM3My4zODItLjkzMi4zODJtMS4xODggMTQuOTM3aC0yLjM4OFY5LjExNmgyLjM4OHpNOTUuNjI4IDIwLjY5NUg5My41MmwtLjEyOC0xLjY1NmE1LjcgNS43IDAgMCAxLTEuOTA5IDEuMzlxLTEuMTA2LjQ5Ny0yLjQzMi40OTctMS42NzcgMC0zLjAwMy0uNzg3YTUuNyA1LjcgMCAwIDEtMi4wOTUtMi4xNTRxLS43NTctMS4zNjUtLjc1Ny0zLjA4IDAtMS43MjQuNzU3LTMuMDhhNS43IDUuNyAwIDAgMSAyLjA5NS0yLjE1M3ExLjMyNi0uNzg3IDMuMDAzLS43ODcgMS4yNTcgMCAyLjMyOC40NTFhNS41IDUuNSAwIDAgMSAxLjg2MiAxLjI2MlYzLjMyN2gyLjM4NnptLTYuMTgtMS45cTEuMDU5IDAgMS45MDgtLjQ4NmEzLjc1IDMuNzUgMCAwIDAgMS4zNzQtMS4zMnEuNTEyLS44MzMuNTEyLTEuODk4di0uMzk0cTAtMS4wNjUtLjUxMi0xLjg5OWEzLjY2IDMuNjYgMCAwIDAtMS4zNzQtMS4zMDhxLS44NS0uNDc1LTEuOTA4LS40NzUtMS4wODMgMC0xLjk0NC41MWEzLjcgMy43IDAgMCAwLTEuMzYyIDEuMzg5cS0uNS44NjktLjUgMS45OHQuNSAxLjk5MWEzLjggMy44IDAgMCAwIDEuMzYyIDEuNDAxcS44NjEuNTEgMS45NDQuNTFNMTA3LjI2OSAyMC42OTVoLTIuMDYxbC0uMTM5LTEuNDgycS0uNjQuODEtMS42MTggMS4yNjItLjk3OC40NS0yLjE2NS40NTEtMS4yNDUgMC0yLjIyMy0uNDg2YTMuODYgMy44NiAwIDAgMS0xLjUzNi0xLjMzMiAzLjQgMy40IDAgMCAxLS41Ni0xLjkyMnEwLTEuMTM0LjYwNi0xLjk5MS42MDUtLjg2OCAxLjY1My0xLjM1NSAxLjA0Ny0uNDk4IDIuMzg2LS40OThhNy42IDcuNiAwIDAgMSAxLjY5OS4xOTcgNi42IDYuNiAwIDAgMSAxLjU3MS41NTZ2LS40MjlxMC0uODQ0LS40NDItMS40NDdhMi43IDIuNyAwIDAgMC0xLjE4Ny0uOTM4IDQuMSA0LjEgMCAwIDAtMS42NTMtLjMyNCA1LjE2NiA1LjE2NiAwIDAgMC0zLjIgMS4xMzVsLS43MjItMS45MzRhOS4zIDkuMyAwIDAgMSAyLjItLjk1IDguMyA4LjMgMCAwIDEgMi4yNTgtLjMyM3ExLjU4MyAwIDIuNzIzLjYyNWE0LjM1IDQuMzUgMCAwIDEgMS43ODEgMS43ODNxLjYyOSAxLjE0Ni42MjkgMi43MXptLTUuNTE3LTEuNzgzcS44MjYgMCAxLjUyNC0uMzM2YTIuOSAyLjkgMCAwIDAgMS4xMjktLjk3M3EuNDQyLS42MzYuNDc3LTEuNDgydi0uMTYyYTQuNiA0LjYgMCAwIDAtMS4zMzgtLjY4MyA0LjYgNC42IDAgMCAwLTEuNTAyLS4yNTVxLTEuMTc1IDAtMS45NTUuNTU2LS43OC41NTUtLjc4IDEuNDI0IDAgLjU0NC4zMTQuOTg0LjMyNy40My44NzMuNjgzLjU2LjI0NCAxLjI1OC4yNDRNMTE2LjQyNCAyMC40MDVxLTEuMjIxLjUyMS0yLjM2Mi41MjF0LTIuMDAyLS40ODZhMy41IDMuNSAwIDAgMS0xLjMzOS0xLjM2NnEtLjQ3Ny0uODkyLS40NzctMi4wNXYtNS43ODloLTIuMDM3VjkuMTE2aDIuMTUzVjYuMjIyaDIuMjd2Mi44OTRoMy4zOTl2Mi4xMTloLTMuMzk5djUuMzVxMCAxLjAxOC41NDcgMS42Mi41NTguNTkgMS40MzIuNTkuNzM0IDAgMS40NTUtLjQ0ek0xMTguNTggNS43NThxLS41NDggMC0uOTItLjM4MmExLjI4IDEuMjggMCAwIDEtLjM3My0uOTI2cTAtLjU0NS4zNzMtLjkxNS4zNzItLjM4Mi45Mi0uMzgyLjU2IDAgLjkzMi4zODIuMzg1LjM3LjM4NS45MTV0LS4zODUuOTI2YTEuMjUgMS4yNSAwIDAgMS0uOTMyLjM4Mm0xLjE4OCAxNC45MzdoLTIuMzg4VjkuMTE2aDIuMzg4ek0xMjcuMjU3IDIwLjkyNnEtMS43NDYgMC0zLjE0My0uNzg3YTUuODUgNS44NSAwIDAgMS0yLjItMi4xNDJxLS44MDMtMS4zNjYtLjgwMy0zLjA5MiAwLTEuNzEzLjgwMy0zLjA2OGE1LjggNS44IDAgMCAxIDIuMi0yLjE1M3ExLjM5Ny0uOCAzLjE0My0uOCAxLjc1NyAwIDMuMTQyLjhhNS43NiA1Ljc2IDAgMCAxIDIuMTc3IDIuMTUzcS44MDMgMS4zNTUuODAzIDMuMDY4IDAgMS43MjUtLjgwMyAzLjA5MmE1LjggNS44IDAgMCAxLTIuMTc3IDIuMTQycS0xLjM4NS43ODctMy4xNDIuNzg3bS0uMDEyLTIuMTNxMS4wNiAwIDEuODg2LS41MWEzLjcgMy43IDAgMCAwIDEuMzE1LTEuMzlxLjQ4OS0uODguNDg5LTIuMDAyIDAtMS4xLS40ODktMS45NjlhMy42IDMuNiAwIDAgMC0xLjMxNS0xLjM4OXEtLjgyNy0uNTItMS44ODYtLjUyLTEuMDQ3IDAtMS44ODUuNTJhMy43IDMuNyAwIDAgMC0xLjMyNyAxLjM5cS0uNDc3Ljg2OC0uNDc3IDEuOTY4IDAgMS4xMjMuNDc3IDIuMDAzYTMuOCAzLjggMCAwIDAgMS4zMjcgMS4zOXEuODM3LjUwOSAxLjg4NS41MDlNMTQ1LjgxNiAyMC42OTVoLTIuMzg2di02LjI4N3EwLTEuNTQtLjg0OS0yLjQ1NS0uODM5LS45MTUtMi4yNTgtLjkxNS0xLjQ2NiAwLTIuMzYzLjk3My0uODk2Ljk3Mi0uODk2IDIuNTgydjYuMTAyaC0yLjM4NlY5LjExNmgyLjAxM2wuMDgyIDEuODY0YTQuMjUgNC4yNSAwIDAgMSAxLjY3Ni0xLjU1MXExLjAzNS0uNTQ0IDIuNDMyLS41NDQgMi4yOTQgMCAzLjYwOSAxLjM3NyAxLjMyNiAxLjM3OSAxLjMyNiAzLjc5OHpNMTY2LjE3OCAxOC40ODNhOC43IDguNyAwIDAgMS0yLjg4OCAxLjg4N3EtMS42NjQuNjcyLTMuNjMxLjY3MnQtMy42MzItLjY3MmE4LjcgOC43IDAgMCAxLTIuODk4LTEuODg3IDguOSA4LjkgMCAwIDEtMS45MDgtMi44NzFxLS42NzYtMS42NTYtLjY3Ni0zLjYwMSAwLTEuOTU3LjY3Ni0zLjYwMWE4LjcgOC43IDAgMCAxIDEuOTA4LTIuODcyIDguNyA4LjcgMCAwIDEgMi44OTgtMS44ODdxMS42NjUtLjY3MSAzLjYzMi0uNjcxIDEuOTU1IDAgMy42MTkuNjgzIDEuNjc3LjY3MSAyLjg3NSAxLjg2NGwtMS43OCAxLjgwNmE2LjIgNi4yIDAgMCAwLTIuMDk0LTEuNTRxLTEuMjEyLS41NjctMi42NTQtLjU2Ny0xLjM5NyAwLTIuNTczLjUxYTYgNiAwIDAgMC0yLjA0OSAxLjQyMyA2LjYgNi42IDAgMCAwLTEuMzYxIDIuMTU0cS0uNDc4IDEuMjM5LS40NzggMi42OTh0LjQ3OCAyLjY5OGE2LjcgNi43IDAgMCAwIDEuMzYxIDIuMTY1IDYuMiA2LjIgMCAwIDAgMi4wNDkgMS40MjRxMS4xNzUuNDk4IDIuNTczLjQ5OCAxLjQ0MiAwIDIuNjU0LS41NTZhNi4yIDYuMiAwIDAgMCAyLjA4My0xLjU1MnpNMTcwLjA5MiAyMC42OTVoLTIuNTRWMi44NjRoMi41NHpNMTc3LjUzNCAyMC45MjZxLTEuNzQ1IDAtMy4xNDMtLjc4N2E1Ljg0IDUuODQgMCAwIDEtMi4xOTktMi4xNDJxLS44MDMtMS4zNjYtLjgwMy0zLjA5MiAwLTEuNzEzLjgwMy0zLjA2OGE1LjggNS44IDAgMCAxIDIuMTk5LTIuMTUzcTEuMzk4LS44IDMuMTQzLS44IDEuNzU4IDAgMy4xNDIuOGE1Ljc1IDUuNzUgMCAwIDEgMi4xNzYgMi4xNTNxLjgwNCAxLjM1NS44MDMgMy4wNjggMCAxLjcyNS0uODAzIDMuMDkyYTUuOCA1LjggMCAwIDEtMi4xNzYgMi4xNDJxLTEuMzg0Ljc4Ny0zLjE0Mi43ODdtLS4wMTMtMi4xM3ExLjA2IDAgMS44ODctLjUxYTMuNyAzLjcgMCAwIDAgMS4zMTUtMS4zOXEuNDg4LS44OC40ODgtMi4wMDIgMC0xLjEtLjQ4OC0xLjk2OWEzLjYgMy42IDAgMCAwLTEuMzE1LTEuMzg5cS0uODI3LS41Mi0xLjg4Ny0uNTJhMy41IDMuNSAwIDAgMC0xLjg4NS41MiAzLjcgMy43IDAgMCAwLTEuMzI2IDEuMzlxLS40NzcuODY4LS40NzcgMS45NjggMCAxLjEyMy40NzcgMi4wMDNhMy44IDMuOCAwIDAgMCAxLjMyNiAxLjM5IDMuNTYgMy41NiAwIDAgMCAxLjg4NS41MDlNMTk2LjEgMjAuNjk1aC0yLjAyNmwtLjA4Mi0xLjg2NHEtLjY0IDEuMDE4LTEuNjc2IDEuNTYzLTEuMDI1LjUzMi0yLjQzMy41MzItMi4yOCAwLTMuNjA3LTEuMzc4LTEuMzE2LTEuMzktMS4zMTYtMy43OTdWOS4xMTZoMi4zODd2Ni4yODdxMCAxLjU0LjgzNyAyLjQ1NS44NC45MTUgMi4yNTguOTE1IDEuNDY4IDAgMi4zNjQtLjk3My45MDctLjk4NC45MDctMi41ODJWOS4xMTZoMi4zODd6TTIwOS44NCAyMC42OTVoLTIuMTA2bC0uMTI5LTEuNjU2YTUuNyA1LjcgMCAwIDEtMS45MDggMS4zOXEtMS4xMDUuNDk3LTIuNDMzLjQ5Ny0xLjY3NiAwLTMuMDAyLS43ODdhNS43IDUuNyAwIDAgMS0yLjA5Ni0yLjE1NHEtLjc1Ni0xLjM2NS0uNzU2LTMuMDggMC0xLjcyNC43NTYtMy4wOGE1LjcgNS43IDAgMCAxIDIuMDk2LTIuMTUzcTEuMzI2LS43ODcgMy4wMDItLjc4NyAxLjI1NyAwIDIuMzI5LjQ1MWE1LjUgNS41IDAgMCAxIDEuODYyIDEuMjYyVjMuMzI3aDIuMzg1em0tNi4xOC0xLjlxMS4wNTkgMCAxLjkwOC0uNDg2YTMuNzQgMy43NCAwIDAgMCAxLjM3NC0xLjMycS41MTItLjgzMy41MTMtMS44OTh2LS4zOTRxMC0xLjA2NS0uNTEzLTEuODk5YTMuNjUgMy42NSAwIDAgMC0xLjM3NC0xLjMwOHEtLjg0OS0uNDc1LTEuOTA4LS40NzUtMS4wODIgMC0xLjk0My41MWEzLjcgMy43IDAgMCAwLTEuMzYzIDEuMzg5cS0uNS44NjktLjQ5OSAxLjk4IDAgMS4xMTEuNDk5IDEuOTkxYTMuOCAzLjggMCAwIDAgMS4zNjMgMS40MDFxLjg2LjUxIDEuOTQzLjUxIi8+CiAgPC9nPgo8L3N2Zz4=",
268
+ "width": 210,
269
+ "height": 24
270
+ },
271
+ "z": 100,
272
+ "silent": true
284
273
  }
285
274
  }
286
275
  ;