moblor-vue 0.1.39 → 0.1.41
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/dist/charts.js +1 -1
- package/dist/moblor-components.esm.js +390 -236
- package/dist/moblor-components.js +1 -1
- package/dist/moblor-vue.esm.js +390 -236
- package/dist/moblor-vue.js +1 -1
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import 'd3-transition';
|
|
2
2
|
import { Component, Vue, Prop, Watch, Mixins, Inject, Provide } from 'vue-property-decorator';
|
|
3
3
|
import { scaleBand, scaleLinear, scalePoint } from 'd3-scale';
|
|
4
|
-
import {
|
|
4
|
+
import { axisLeft, axisBottom, axisRight, axisTop } from 'd3-axis';
|
|
5
5
|
import { select } from 'd3-selection';
|
|
6
6
|
import { format } from 'd3-format';
|
|
7
7
|
import { max, min, sum, group } from 'd3-array';
|
|
@@ -89,7 +89,6 @@ var ChartMixins = /** @class */ (function (_super) {
|
|
|
89
89
|
return ChartMixins;
|
|
90
90
|
}(Vue));
|
|
91
91
|
|
|
92
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
93
92
|
var ChartService = /** @class */ (function () {
|
|
94
93
|
function ChartService() {
|
|
95
94
|
}
|
|
@@ -252,6 +251,36 @@ var ChartService = /** @class */ (function () {
|
|
|
252
251
|
}
|
|
253
252
|
return valueText;
|
|
254
253
|
};
|
|
254
|
+
/**
|
|
255
|
+
* 合并占比小于 threshold 的 group 为 Others
|
|
256
|
+
*/
|
|
257
|
+
ChartService.combineSmallGroups = function (data, threshold, othersLabel) {
|
|
258
|
+
if (threshold === void 0) { threshold = 0.05; }
|
|
259
|
+
if (othersLabel === void 0) { othersLabel = 'Others'; }
|
|
260
|
+
var total = data.reduce(function (sum, d) { return sum + d.values[0]; }, 0);
|
|
261
|
+
if (total === 0)
|
|
262
|
+
{ return []; }
|
|
263
|
+
var largeGroups = [];
|
|
264
|
+
var othersValue = 0;
|
|
265
|
+
var othersPieces = [];
|
|
266
|
+
data.forEach(function (d) {
|
|
267
|
+
var ratio = d.values[0] / total;
|
|
268
|
+
if (ratio < threshold) {
|
|
269
|
+
othersValue += d.values[0];
|
|
270
|
+
if (d.pieces) {
|
|
271
|
+
othersPieces = othersPieces.concat(d.pieces);
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
else {
|
|
275
|
+
largeGroups.push(d);
|
|
276
|
+
}
|
|
277
|
+
});
|
|
278
|
+
if (othersValue > 0) {
|
|
279
|
+
var base = data.find(function (d) { return d.label !== othersLabel; }) || data[0];
|
|
280
|
+
largeGroups.push(__assign(__assign({}, base), { label: othersLabel, values: [othersValue], pieces: othersPieces.length > 0 ? othersPieces : undefined }));
|
|
281
|
+
}
|
|
282
|
+
return largeGroups.filter(function (d) { return d.values[0] > 0; });
|
|
283
|
+
};
|
|
255
284
|
return ChartService;
|
|
256
285
|
}());
|
|
257
286
|
|
|
@@ -259,6 +288,12 @@ var MoBarChart = /** @class */ (function (_super) {
|
|
|
259
288
|
__extends(MoBarChart, _super);
|
|
260
289
|
function MoBarChart() {
|
|
261
290
|
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
291
|
+
// 常量定义
|
|
292
|
+
_this.ITEM_HEIGHT = 25;
|
|
293
|
+
_this.TITLE_HEIGHT = 40;
|
|
294
|
+
_this.SECTION_SPACING = 60;
|
|
295
|
+
_this.SEPARATOR_HEIGHT = 40;
|
|
296
|
+
_this.CHART_TO_ANNOTATION_SPACING = 120;
|
|
262
297
|
_this.MIN_WIDTH = 20;
|
|
263
298
|
_this.svgWidth = 0;
|
|
264
299
|
_this.svgHeight = 0;
|
|
@@ -277,6 +312,7 @@ var MoBarChart = /** @class */ (function (_super) {
|
|
|
277
312
|
_this.categories = [];
|
|
278
313
|
_this.needScroll = false;
|
|
279
314
|
_this.additionalHeight = 0;
|
|
315
|
+
_this.labelGroup = null;
|
|
280
316
|
return _this;
|
|
281
317
|
}
|
|
282
318
|
Object.defineProperty(MoBarChart.prototype, "actualMargin", {
|
|
@@ -326,6 +362,23 @@ var MoBarChart = /** @class */ (function (_super) {
|
|
|
326
362
|
this.renderLine(data);
|
|
327
363
|
}
|
|
328
364
|
this.renderData(data);
|
|
365
|
+
// 清除现有的标签
|
|
366
|
+
this.labelGroup.selectAll('*').remove();
|
|
367
|
+
// 设置注解组的位置
|
|
368
|
+
var containerWidth = this.getWidth();
|
|
369
|
+
var isWideScreen = containerWidth >= 694;
|
|
370
|
+
var isStacked = this.groupType === 'stacked' || this.groupType === 'stacked100';
|
|
371
|
+
var translateX = this.actualMargin.left;
|
|
372
|
+
var translateY = this.actualMargin.top;
|
|
373
|
+
if (isWideScreen && isStacked) {
|
|
374
|
+
// 宽屏堆叠图:注解在右侧
|
|
375
|
+
translateX = this.actualMargin.left + this.width + 80;
|
|
376
|
+
}
|
|
377
|
+
else {
|
|
378
|
+
// 窄屏或非堆叠图:注解在底部
|
|
379
|
+
translateY = this.actualMargin.top + this.height + 180;
|
|
380
|
+
}
|
|
381
|
+
this.labelGroup.attr('transform', "translate(" + translateX + ", " + translateY + ")");
|
|
329
382
|
if (this.categories.length > 0) {
|
|
330
383
|
this.renderLabel();
|
|
331
384
|
}
|
|
@@ -335,78 +388,153 @@ var MoBarChart = /** @class */ (function (_super) {
|
|
|
335
388
|
};
|
|
336
389
|
MoBarChart.prototype.init = function () {
|
|
337
390
|
var _this = this;
|
|
391
|
+
var _a, _b;
|
|
338
392
|
var containerWidth = this.getWidth();
|
|
339
|
-
|
|
340
|
-
var
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
var
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
393
|
+
var isWideScreen = containerWidth >= 694;
|
|
394
|
+
var isStacked = this.groupType === 'stacked' || this.groupType === 'stacked100';
|
|
395
|
+
// 设置SVG尺寸
|
|
396
|
+
this.svgWidth = containerWidth;
|
|
397
|
+
// 计算最大值
|
|
398
|
+
var chartMaxValue = 0;
|
|
399
|
+
if (this.groupType === 'grouped' && this.categories.length > 0) {
|
|
400
|
+
chartMaxValue = ChartService.getMaxValue(this.data);
|
|
401
|
+
}
|
|
402
|
+
else {
|
|
403
|
+
chartMaxValue = max(this.data, function (d) { return max(d.values); }) || 0;
|
|
404
|
+
}
|
|
405
|
+
// 计算margin
|
|
406
|
+
var unitSymbol = (((_a = this.aggregates) === null || _a === void 0 ? void 0 : _a[0]) || {}).unitSymbol;
|
|
407
|
+
var maxValueStr = ChartService.formatValue(chartMaxValue, unitSymbol, this.decimal);
|
|
408
|
+
var textWidth = maxValueStr.length * 8;
|
|
409
|
+
this.actualMargin.right = Math.max(this.margin.right, textWidth + 20);
|
|
410
|
+
// 计算图表宽度
|
|
411
|
+
if (isWideScreen && isStacked) {
|
|
412
|
+
this.width = containerWidth * 0.75 - this.actualMargin.left - this.actualMargin.right;
|
|
413
|
+
}
|
|
414
|
+
else {
|
|
415
|
+
this.width = containerWidth - this.actualMargin.left - this.actualMargin.right;
|
|
416
|
+
}
|
|
417
|
+
// 计算图表区域的合适高度
|
|
418
|
+
var minHeight = 200;
|
|
419
|
+
var maxHeight = 300;
|
|
420
|
+
var defaultHeight = this.width * 0.4;
|
|
421
|
+
this.height = Math.min(maxHeight, Math.max(minHeight, defaultHeight));
|
|
422
|
+
// 计算注解区域所需的高度
|
|
423
|
+
var legendsHeight = 0;
|
|
424
|
+
var measureHeight = 0;
|
|
425
|
+
// 计算 legends 高度
|
|
426
|
+
if (this.categories.length > 0) {
|
|
427
|
+
var hasTitle = Boolean((_b = this.groupings[1]) === null || _b === void 0 ? void 0 : _b.label);
|
|
428
|
+
var titleHeight = hasTitle ? this.TITLE_HEIGHT : 0;
|
|
429
|
+
var itemsHeight = this.categories.length * this.ITEM_HEIGHT;
|
|
430
|
+
legendsHeight = titleHeight + itemsHeight;
|
|
431
|
+
}
|
|
432
|
+
// 计算 measure 高度
|
|
433
|
+
if (this.aggregates.length > 1) {
|
|
434
|
+
var separatorHeight = this.categories.length > 0 ? this.SEPARATOR_HEIGHT : 0;
|
|
435
|
+
var itemsHeight = this.aggregates.length * this.ITEM_HEIGHT;
|
|
436
|
+
measureHeight = this.TITLE_HEIGHT + separatorHeight + itemsHeight;
|
|
437
|
+
}
|
|
438
|
+
// 计算注解总高度(包含间距)
|
|
439
|
+
var totalAnnotationHeight = 0;
|
|
440
|
+
if (legendsHeight > 0 && measureHeight > 0) {
|
|
441
|
+
totalAnnotationHeight = legendsHeight + this.SECTION_SPACING + measureHeight + 40;
|
|
442
|
+
}
|
|
443
|
+
else {
|
|
444
|
+
totalAnnotationHeight = legendsHeight + measureHeight;
|
|
445
|
+
}
|
|
446
|
+
// 计算SVG总高度
|
|
447
|
+
if (isWideScreen && isStacked) {
|
|
448
|
+
// 宽屏堆叠图:使用图表高度和注解高度的较大值
|
|
449
|
+
var chartHeight = this.height + this.actualMargin.top + this.actualMargin.bottom;
|
|
450
|
+
var annotationHeight = totalAnnotationHeight + this.actualMargin.top
|
|
451
|
+
+ this.actualMargin.bottom;
|
|
452
|
+
this.svgHeight = Math.max(chartHeight, annotationHeight);
|
|
453
|
+
}
|
|
454
|
+
else {
|
|
455
|
+
// 窄屏或非堆叠图:图表高度 + 注解高度 + 额外间距
|
|
456
|
+
this.svgHeight = this.height + this.CHART_TO_ANNOTATION_SPACING + totalAnnotationHeight
|
|
457
|
+
+ this.actualMargin.top + this.actualMargin.bottom;
|
|
458
|
+
}
|
|
459
|
+
// 清除现有的SVG
|
|
460
|
+
select(this.$el).selectAll('svg').remove();
|
|
461
|
+
// 创建新的SVG
|
|
462
|
+
var mainSvg = select(this.$el)
|
|
463
|
+
.append('svg')
|
|
464
|
+
.attr('width', this.svgWidth)
|
|
465
|
+
.attr('height', this.svgHeight);
|
|
466
|
+
// 创建图表组
|
|
467
|
+
this.svg = mainSvg
|
|
468
|
+
.append('g')
|
|
469
|
+
.attr('class', 'chart-group')
|
|
470
|
+
.attr('transform', "translate(" + this.actualMargin.left + ", " + this.actualMargin.top + ")");
|
|
471
|
+
// 创建注解组
|
|
472
|
+
this.labelGroup = mainSvg
|
|
473
|
+
.append('g')
|
|
474
|
+
.attr('class', 'label-group');
|
|
475
|
+
// 配置x轴比例尺
|
|
353
476
|
this.xAxisScale = scaleBand()
|
|
354
|
-
.domain(
|
|
477
|
+
.domain(this.data.slice(0, this.maxDisplayCount).map(function (d) { return d.label; }))
|
|
355
478
|
.range([0, this.width])
|
|
356
479
|
.padding(0.3)
|
|
357
480
|
.round(true);
|
|
481
|
+
// 配置y轴
|
|
482
|
+
this.yAxisScale = scaleLinear()
|
|
483
|
+
.domain([0, chartMaxValue])
|
|
484
|
+
.range([this.height, 0])
|
|
485
|
+
.nice();
|
|
486
|
+
this.yAxis = axisLeft(this.yAxisScale)
|
|
487
|
+
.tickSize(0)
|
|
488
|
+
.tickFormat(function (d) { return ChartService.formatValue(d, '', _this.decimal); });
|
|
358
489
|
// 处理分组数据
|
|
359
490
|
if (this.groupType && this.groupType !== 'none') {
|
|
360
491
|
this.categories = [];
|
|
361
|
-
|
|
492
|
+
this.data.forEach(function (d) {
|
|
362
493
|
if (d.pieces && d.pieces.length > _this.categories.length) {
|
|
363
|
-
_this.categories = d.pieces.map(function (
|
|
494
|
+
_this.categories = d.pieces.map(function (p) { return p.label; });
|
|
364
495
|
}
|
|
365
496
|
});
|
|
366
497
|
}
|
|
367
|
-
//
|
|
498
|
+
// 配置分组比例尺
|
|
368
499
|
if (this.categories.length > 0) {
|
|
369
|
-
this.
|
|
500
|
+
this.xAxisCategories = scaleBand()
|
|
501
|
+
.domain(this.categories)
|
|
502
|
+
.range([0, this.xAxisScale.bandwidth()])
|
|
503
|
+
.padding(0.4)
|
|
504
|
+
.round(false);
|
|
370
505
|
}
|
|
506
|
+
// 配置聚合比例尺
|
|
371
507
|
if (this.aggregates.length > 1) {
|
|
372
|
-
|
|
508
|
+
var labels = this.aggregates.map(function (a) { return a.label; });
|
|
509
|
+
this.xAxisAggregates = scaleBand()
|
|
510
|
+
.domain(labels)
|
|
511
|
+
.range([0, this.xAxisScale.bandwidth()])
|
|
512
|
+
.padding(0.4)
|
|
513
|
+
.round(false);
|
|
373
514
|
}
|
|
374
|
-
this.svgHeight += this.additionalHeight;
|
|
375
515
|
// 计算y轴范围
|
|
376
|
-
var
|
|
377
|
-
var
|
|
516
|
+
var maxVal = 0;
|
|
517
|
+
var minVal = 0;
|
|
378
518
|
var secondYMaxValue = 0;
|
|
379
519
|
var secondYMinValue = 0;
|
|
380
520
|
if (this.groupType === 'grouped') {
|
|
381
|
-
|
|
382
|
-
|
|
521
|
+
maxVal = ChartService.getMaxValue(this.data) || 0;
|
|
522
|
+
minVal = ChartService.getMinValue(this.data) || 0;
|
|
383
523
|
}
|
|
384
524
|
else {
|
|
385
|
-
|
|
386
|
-
|
|
525
|
+
maxVal = max(this.data, function (d) { return d.values[0]; }) || 0;
|
|
526
|
+
minVal = min(this.data, function (d) { return d.values[0]; }) || 0;
|
|
387
527
|
}
|
|
388
528
|
if (this.aggregates.length > 1) {
|
|
389
529
|
secondYMaxValue = max(this.data, function (d) { return max(d.values); }) || 0;
|
|
390
530
|
secondYMinValue = min(this.data, function (d) { return min(d.values); }) || 0;
|
|
391
531
|
}
|
|
392
532
|
// 为y轴添加一些边距,确保数值标签不会被截断
|
|
393
|
-
var
|
|
394
|
-
var
|
|
533
|
+
var yPadding = 0.1;
|
|
534
|
+
var yMax = maxVal + Math.abs(maxVal - minVal) * yPadding;
|
|
395
535
|
// 只在有负数时才设置负数范围
|
|
396
|
-
var
|
|
536
|
+
var yMin = minVal < 0 ? minVal - Math.abs(maxVal - minVal) * yPadding : 0;
|
|
397
537
|
// 配置坐标轴
|
|
398
|
-
this.xAxisCategories = scaleBand()
|
|
399
|
-
.domain(this.categories)
|
|
400
|
-
.range([0, this.xAxisScale.bandwidth()])
|
|
401
|
-
.padding(0.4)
|
|
402
|
-
.round(false);
|
|
403
|
-
if (this.aggregates.length > 1) {
|
|
404
|
-
this.xAxisAggregates = scaleBand()
|
|
405
|
-
.domain(this.aggregates.map(function (a) { return a.label; }))
|
|
406
|
-
.range([0, this.xAxisScale.bandwidth()])
|
|
407
|
-
.padding(0.4)
|
|
408
|
-
.round(false);
|
|
409
|
-
}
|
|
410
538
|
this.xAxis = axisBottom(this.xAxisScale)
|
|
411
539
|
.tickSize(0)
|
|
412
540
|
.tickFormat(function (d) { return ChartService
|
|
@@ -423,7 +551,7 @@ var MoBarChart = /** @class */ (function (_super) {
|
|
|
423
551
|
else if (this.hasLineChart) {
|
|
424
552
|
if (this.hasSecondAxis) {
|
|
425
553
|
this.yAxisScale = scaleLinear()
|
|
426
|
-
.domain([
|
|
554
|
+
.domain([yMin, yMax])
|
|
427
555
|
.range([this.height, 0])
|
|
428
556
|
.nice();
|
|
429
557
|
this.yAxis = axisLeft(this.yAxisScale)
|
|
@@ -443,7 +571,7 @@ var MoBarChart = /** @class */ (function (_super) {
|
|
|
443
571
|
}
|
|
444
572
|
else {
|
|
445
573
|
this.yAxisScale = scaleLinear()
|
|
446
|
-
.domain([
|
|
574
|
+
.domain([yMin, yMax])
|
|
447
575
|
.range([this.height, 0])
|
|
448
576
|
.nice();
|
|
449
577
|
this.yAxis = axisLeft(this.yAxisScale)
|
|
@@ -457,20 +585,13 @@ var MoBarChart = /** @class */ (function (_super) {
|
|
|
457
585
|
}
|
|
458
586
|
else {
|
|
459
587
|
this.yAxisScale = scaleLinear()
|
|
460
|
-
.domain([
|
|
588
|
+
.domain([yMin, yMax])
|
|
461
589
|
.range([this.height, 0])
|
|
462
590
|
.nice();
|
|
463
591
|
this.yAxis = axisLeft(this.yAxisScale)
|
|
464
592
|
.tickSize(0)
|
|
465
593
|
.tickFormat(function (d) { return ChartService.formatValue(d, '', _this.decimal); });
|
|
466
594
|
}
|
|
467
|
-
// 创建SVG元素
|
|
468
|
-
this.svg = select(this.$el)
|
|
469
|
-
.append('svg')
|
|
470
|
-
.attr('width', this.svgWidth)
|
|
471
|
-
.attr('height', this.svgHeight)
|
|
472
|
-
.append('g')
|
|
473
|
-
.attr('transform', "translate(" + this.actualMargin.left + ", " + this.actualMargin.top + ")");
|
|
474
595
|
};
|
|
475
596
|
MoBarChart.prototype.lineValue = function (d) {
|
|
476
597
|
return d.values[this.secondYIndex];
|
|
@@ -801,101 +922,98 @@ var MoBarChart = /** @class */ (function (_super) {
|
|
|
801
922
|
})
|
|
802
923
|
.text(function (d) { return ChartService.formatValue(d.values[0], '', _this.decimal); });
|
|
803
924
|
};
|
|
804
|
-
MoBarChart.prototype.
|
|
925
|
+
MoBarChart.prototype.renderMeasure = function () {
|
|
805
926
|
var _this = this;
|
|
806
|
-
var
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
&& containerWidth >= 694) {
|
|
810
|
-
labelGroup.attr('transform', "translate( " + this.svgWidth + ",\n -" + (this.svgHeight - this.additionalHeight - 100) + " )");
|
|
927
|
+
var _a;
|
|
928
|
+
if (this.aggregates.length === 0) {
|
|
929
|
+
return;
|
|
811
930
|
}
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
.attr('class', 'mo-label-line');
|
|
931
|
+
// 计算measure的起始位置
|
|
932
|
+
var startY = 0;
|
|
933
|
+
if (this.categories.length > 0) {
|
|
934
|
+
var hasTitle = Boolean((_a = this.groupings[1]) === null || _a === void 0 ? void 0 : _a.label);
|
|
935
|
+
var titleHeight = hasTitle ? this.TITLE_HEIGHT : 0;
|
|
936
|
+
var itemsHeight = this.categories.length * 25;
|
|
937
|
+
startY = titleHeight + itemsHeight + 40;
|
|
820
938
|
}
|
|
821
|
-
|
|
939
|
+
// 添加分隔线
|
|
940
|
+
if (this.categories.length > 0) {
|
|
941
|
+
this.labelGroup.append('line')
|
|
942
|
+
.attr('x1', 0)
|
|
943
|
+
.attr('y1', startY - 20)
|
|
944
|
+
.attr('x2', 150)
|
|
945
|
+
.attr('y2', startY - 20)
|
|
946
|
+
.attr('class', 'mo-label-line')
|
|
947
|
+
.style('stroke', '#ccc')
|
|
948
|
+
.style('stroke-width', 1);
|
|
949
|
+
}
|
|
950
|
+
// 添加measure标题
|
|
951
|
+
this.labelGroup.append('text')
|
|
822
952
|
.attr('x', 0)
|
|
823
|
-
.attr('y',
|
|
953
|
+
.attr('y', startY + 5)
|
|
824
954
|
.attr('class', 'mo-label-title')
|
|
825
|
-
.text(
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
955
|
+
.text('Measure');
|
|
956
|
+
startY += 30;
|
|
957
|
+
// 添加measure图例
|
|
958
|
+
var measures = this.labelGroup.selectAll('.mo-measure')
|
|
959
|
+
.data(this.aggregates);
|
|
960
|
+
var measuresEnter = measures.enter()
|
|
829
961
|
.append('g')
|
|
830
|
-
.attr('class', 'mo-
|
|
831
|
-
|
|
962
|
+
.attr('class', 'mo-measure');
|
|
963
|
+
// measure矩形
|
|
964
|
+
measuresEnter.append('rect')
|
|
832
965
|
.attr('width', 15)
|
|
833
966
|
.attr('height', 15)
|
|
834
967
|
.attr('x', 0)
|
|
835
|
-
|
|
836
|
-
|
|
968
|
+
.attr('y', function (d, i) {
|
|
969
|
+
var y = startY + i * 25;
|
|
970
|
+
return y;
|
|
971
|
+
})
|
|
837
972
|
.attr('fill', function (d, i) { return ChartService.getColor(i, _this.colors); });
|
|
838
|
-
|
|
973
|
+
// measure文本
|
|
974
|
+
measuresEnter.append('text')
|
|
839
975
|
.attr('x', 25)
|
|
840
|
-
|
|
841
|
-
|
|
976
|
+
.attr('y', function (d, i) {
|
|
977
|
+
var y = startY + 12 + i * 25;
|
|
978
|
+
return y;
|
|
979
|
+
})
|
|
842
980
|
.attr('class', 'mo-legend-text')
|
|
843
|
-
.
|
|
844
|
-
.text(function (d) { return d; });
|
|
981
|
+
.text(function (d) { return d.label; });
|
|
845
982
|
};
|
|
846
|
-
MoBarChart.prototype.
|
|
983
|
+
MoBarChart.prototype.renderLabel = function () {
|
|
847
984
|
var _this = this;
|
|
848
|
-
var
|
|
849
|
-
if (this.categories.length
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
var
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
985
|
+
var _a;
|
|
986
|
+
if (this.categories.length === 0)
|
|
987
|
+
{ return; }
|
|
988
|
+
// 添加标题
|
|
989
|
+
var currentY = 0;
|
|
990
|
+
if ((_a = this.groupings[1]) === null || _a === void 0 ? void 0 : _a.label) {
|
|
991
|
+
this.labelGroup.append('text')
|
|
992
|
+
.attr('x', 0)
|
|
993
|
+
.attr('y', 20)
|
|
994
|
+
.attr('class', 'mo-label-title')
|
|
995
|
+
.text(this.groupings[1].label);
|
|
996
|
+
currentY = this.TITLE_HEIGHT;
|
|
860
997
|
}
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
.
|
|
864
|
-
.attr('x2', this.width + this.actualMargin.left + this.actualMargin.right)
|
|
865
|
-
.attr('y2', marginTop)
|
|
866
|
-
.attr('class', 'mo-label-line');
|
|
867
|
-
labelGroup.append('text')
|
|
868
|
-
.attr('x', 0)
|
|
869
|
-
.attr('y', marginTop + 25)
|
|
870
|
-
.attr('class', 'mo-label-title')
|
|
871
|
-
.text('Measure');
|
|
872
|
-
var legends = labelGroup.selectAll('.mo-label')
|
|
873
|
-
.data((this.hasLineChart && this.categories.length > 0)
|
|
874
|
-
? this.aggregates.slice(1, this.aggregates.length)
|
|
875
|
-
: this.aggregates)
|
|
998
|
+
// 添加图例
|
|
999
|
+
var legends = this.labelGroup.selectAll('.mo-legend')
|
|
1000
|
+
.data(this.categories)
|
|
876
1001
|
.enter()
|
|
877
1002
|
.append('g')
|
|
878
|
-
.attr('class', 'mo-
|
|
1003
|
+
.attr('class', 'mo-legend');
|
|
1004
|
+
// 图例矩形
|
|
879
1005
|
legends.append('rect')
|
|
880
1006
|
.attr('width', 15)
|
|
881
1007
|
.attr('height', 15)
|
|
882
1008
|
.attr('x', 0)
|
|
883
|
-
|
|
884
|
-
.attr('
|
|
885
|
-
|
|
886
|
-
.attr('fill', function (d, i) {
|
|
887
|
-
var index = (_this.hasLineChart && _this.categories.length > 0)
|
|
888
|
-
? (_this.categories.length || 1)
|
|
889
|
-
: i;
|
|
890
|
-
return ChartService.getColor(index, _this.colors);
|
|
891
|
-
});
|
|
1009
|
+
.attr('y', function (d, i) { return currentY + i * 25; })
|
|
1010
|
+
.attr('fill', function (d, i) { return ChartService.getColor(i, _this.colors); });
|
|
1011
|
+
// 图例文本
|
|
892
1012
|
legends.append('text')
|
|
893
1013
|
.attr('x', 25)
|
|
894
|
-
|
|
895
|
-
.attr('y', function (d, i) { return marginTop + 52 + i * 25; })
|
|
1014
|
+
.attr('y', function (d, i) { return currentY + 12 + i * 25; })
|
|
896
1015
|
.attr('class', 'mo-legend-text')
|
|
897
|
-
.
|
|
898
|
-
.text(function (d) { return d.label; });
|
|
1016
|
+
.text(function (d) { return d; });
|
|
899
1017
|
};
|
|
900
1018
|
var _a;
|
|
901
1019
|
__decorate([
|
|
@@ -931,7 +1049,7 @@ var MoBarChart = /** @class */ (function (_super) {
|
|
|
931
1049
|
__metadata("design:type", Array)
|
|
932
1050
|
], MoBarChart.prototype, "colors", void 0);
|
|
933
1051
|
__decorate([
|
|
934
|
-
Prop({ type: Object, default: function () { return ({ top: 20, right: 30, bottom:
|
|
1052
|
+
Prop({ type: Object, default: function () { return ({ top: 20, right: 30, bottom: 20, left: 50 }); } }),
|
|
935
1053
|
__metadata("design:type", typeof (_a = typeof ChartMargin !== "undefined" && ChartMargin) === "function" ? _a : Object)
|
|
936
1054
|
], MoBarChart.prototype, "margin", void 0);
|
|
937
1055
|
__decorate([
|
|
@@ -1090,7 +1208,7 @@ __vue_render__._withStripped = true;
|
|
|
1090
1208
|
/* style */
|
|
1091
1209
|
var __vue_inject_styles__ = function (inject) {
|
|
1092
1210
|
if (!inject) { return }
|
|
1093
|
-
inject("data-v-398abc06_0", { source: "/* Colors\n========================================================================== */\n/* Typography\n========================================================================== */\n/* Border Radius\n========================================================================== */\n/* Table */\n/* Safe Area */\n.mo-chart {\n position: relative;\n width: 100%;\n height: 100%;\n font: 1rem sans-serif;\n text-align: center;\n}\n.mo-chart.x-scroll {\n overflow-x: scroll;\n}\n.mo-piece-active:active {\n opacity: 0.8;\n}\n.mo-inner-arc {\n fill: #000;\n opacity: 0.28;\n}\n.mo-inner-text {\n fill: #fff;\n font-size: 1.6rem;\n fill-opacity: 1;\n}\n.mo-summary-label {\n fill: #323233;\n font-size: 1.8rem;\n}\n.mo-summary-value {\n fill: #00A383;\n font-size: 1.8rem;\n}\n.mo-axis path {\n fill: none;\n stroke-width: 0;\n}\n.mo-space-line {\n stroke: #e4e7ed;\n stroke-width: 0.5px;\n}\n.mo-space-bold-line {\n stroke: #e4e5e9;\n stroke-width: 1px;\n}\n.mo-axis-point {\n fill: #abb4c7;\n}\n.mo-data-line {\n fill: none;\n stroke: #b8b8b8;\n stroke-width: 1.5px;\n}\n.mo-data-text {\n font-size: 1.4rem;\n fill: #3e3f41;\n}\n.mo-axis-text {\n font-size: 1.4rem;\n fill: #323233;\n}\n.mo-axis-label {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-axis-div-label {\n width: 100%;\n height: 20px;\n text-align: center;\n color: #3e4759;\n font-size: 1.4rem;\n clear: both;\n}\n.mo-legend-text {\n font-size: 1.4rem;\n fill: #3e4759;\n}\n.mo-legend-percentage {\n font-size: 1.6rem;\n}\n.mo-label-inner {\n text-anchor: middle;\n font-size: 1.4rem;\n fill: #fff;\n}\n.mo-gauge-back-arc {\n stroke-width: 6;\n stroke-linejoin: round;\n stroke: #f9f9f9;\n}\n.mo-gauge-value {\n font-size: 4rem;\n font-weight: 200;\n text-anchor: middle;\n fill: #323233;\n}\n.mo-gauge-max-value {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-gauge-value-arc {\n stroke-width: 6;\n stroke: url(#MoGaugeGradient);\n stroke-linejoin: round;\n}\n.mo-gauge-inner-arc {\n fill: #6e71ca;\n}\n.mo-gauge-tick {\n stroke: #323233;\n stroke-width: 0.5;\n}\n.mo-gauge-pointer {\n fill: #323233;\n}\n\n/* line */\n.mo-line-area {\n fill: url(#MoLineAreaGradient);\n stroke-width: 0;\n opacity: 0.6;\n}\n.mo-line-point {\n fill: #00A383;\n stroke: #fff;\n stroke-width: 1px;\n}\n\n/* rotate */\n.mo-tip-container {\n width: 100%;\n height: 40px;\n line-height: 40px;\n border-radius: 18px;\n border: 1px solid #c5c7c9;\n margin: -5px 0 10px 0;\n}\n.mo-tip-pointer {\n position: relative;\n top: -40px;\n width: 100%;\n}\n.mo-triangle-mark {\n position: relative;\n top: 22px;\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid white;\n}\n.mo-triangle {\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid #c5c7c9;\n}\n.mo-tip-content {\n position: relative;\n text-align: center;\n font-size: 1.4rem;\n color: #3e4759;\n}\n.mo-tip-content:before {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #c5c7c9;\n position: absolute;\n top: -20px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content:after {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #fff;\n position: absolute;\n top: -18px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content .left-nav {\n width: 15%;\n float: left;\n}\n.mo-tip-content .left-nav img {\n -webkit-transform: rotate(180deg);\n -moz-transform: rotate(180deg);\n transform: rotate(180deg);\n margin-top: 10px;\n}\n.mo-tip-content .right-nav {\n width: 15%;\n float: right;\n}\n.mo-tip-content .right-nav img {\n margin-top: 10px;\n}\n.mo-tip-content .tip {\n width: 70%;\n max-width: 70%;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n float: left;\n}\n.mo-tip-content .tip .label {\n margin-left: 10px;\n}\n.mo-metric {\n width: 100%;\n height: 100%;\n color: #323233;\n}\n.mo-metric .mo-metric-inner {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n}\n.mo-metric .mo-metric-label, .mo-metric .mo-metric-value {\n width: 100%;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n}\n.mo-metric .mo-metric-label {\n padding-left: 5px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 2.4rem;\n}\n.mo-metric .mo-metric-value {\n padding-right: 5px;\n font-size: 7.3rem;\n}\n.mo-table {\n width: 100%;\n}\n.mo-table .mo-table-row {\n color: #323233;\n position: relative;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.header-row {\n background-color: #00A383;\n color: #fff;\n font-weight: 700;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell {\n position: relative;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #39a393;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #c8cacc;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell {\n display: inline-block;\n font-size: 1.6rem;\n height: 44px;\n line-height: 44px;\n text-align: left;\n padding: 0 10px;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n position: relative;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row .mo-table-cell .mo-table-cell-check, .mo-table .mo-table-row .mo-table-cell .mo-table-cell-uncheck {\n font-size: 2.2rem;\n position: relative;\n top: 10px;\n}\n.mo-table .mo-table-row .mo-table-right-cell {\n text-align: right;\n}\n.mo-table .mo-table-row .mo-table-checkbox-cell {\n width: 18px;\n margin-top: 13px;\n}\n.mo-label-line {\n stroke: #c8cacc;\n stroke-width: 0.5px;\n}\n.mo-label-title {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: start;\n}\n.mo-cover {\n width: calc(100% + 20px);\n}\n.mo-gauge-inner-bg-arc {\n fill: #fff;\n}\n@media (prefers-color-scheme: dark) {\n.mo-axis-label,\n .mo-axis-text,\n .mo-axis-number,\n .mo-axis-div-label,\n .mo-summary-label,\n .mo-legend-text,\n .mo-label-title {\n fill: #f2f2f7;\n}\n.mo-table .mo-table-row {\n color: #f2f2f7;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #2c2c2e;\n color: #f2f2f7;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #444447;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-tip-content .tip .label {\n color: #f2f2f7;\n}\n.mo-metric .mo-metric-label {\n color: #6e6e6e;\n}\n.mo-metric .mo-metric-value {\n color: #f2f2f7;\n}\n.mo-axis-div-label {\n color: #f2f2f7;\n}\n.mo-gauge-value {\n fill: #f2f2f7;\n}\n.mo-gauge-max-value {\n fill: #f2f2f7;\n}\n.mo-gauge-tick {\n stroke: #fff;\n}\n.mo-gauge-pointer {\n fill: #fff;\n}\n.mo-gauge-inner-bg-arc {\n fill: #1c1c1e;\n}\n.mo-gauge-back-arc {\n stroke: #2c2c2e;\n}\n}", map: undefined, media: undefined });
|
|
1211
|
+
inject("data-v-05477153_0", { source: "/* Colors\n========================================================================== */\n/* Typography\n========================================================================== */\n/* Border Radius\n========================================================================== */\n/* Table */\n/* Safe Area */\n.mo-chart {\n position: relative;\n width: 100%;\n height: 100%;\n font: 1rem sans-serif;\n text-align: center;\n}\n.mo-chart.x-scroll {\n overflow-x: scroll;\n}\n.mo-piece-active:active {\n opacity: 0.8;\n}\n.mo-inner-arc {\n fill: #000;\n opacity: 0.28;\n}\n.mo-inner-text {\n fill: #fff;\n font-size: 1.6rem;\n fill-opacity: 1;\n}\n.mo-summary-label {\n fill: #323233;\n font-size: 1.8rem;\n}\n.mo-summary-value {\n fill: #00A383;\n font-size: 1.8rem;\n}\n.mo-axis path {\n fill: none;\n stroke-width: 0;\n}\n.mo-space-line {\n stroke: #e4e7ed;\n stroke-width: 0.5px;\n}\n.mo-space-bold-line {\n stroke: #e4e5e9;\n stroke-width: 1px;\n}\n.mo-axis-point {\n fill: #abb4c7;\n}\n.mo-data-line {\n fill: none;\n stroke: #b8b8b8;\n stroke-width: 1.5px;\n}\n.mo-data-text {\n font-size: 1.4rem;\n fill: #3e3f41;\n}\n.mo-axis-text {\n font-size: 1.4rem;\n fill: #323233;\n}\n.mo-axis-label {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-axis-div-label {\n width: 100%;\n height: 20px;\n text-align: center;\n color: #3e4759;\n font-size: 1.4rem;\n clear: both;\n}\n.mo-legend-text {\n font-size: 1.4rem;\n fill: #3e4759;\n}\n.mo-legend-percentage {\n font-size: 1.6rem;\n}\n.mo-label-inner {\n text-anchor: middle;\n font-size: 1.4rem;\n fill: #fff;\n}\n.mo-gauge-back-arc {\n stroke-width: 6;\n stroke-linejoin: round;\n stroke: #f9f9f9;\n}\n.mo-gauge-value {\n font-size: 4rem;\n font-weight: 200;\n text-anchor: middle;\n fill: #323233;\n}\n.mo-gauge-max-value {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-gauge-value-arc {\n stroke-width: 6;\n stroke: url(#MoGaugeGradient);\n stroke-linejoin: round;\n}\n.mo-gauge-inner-arc {\n fill: #6e71ca;\n}\n.mo-gauge-tick {\n stroke: #323233;\n stroke-width: 0.5;\n}\n.mo-gauge-pointer {\n fill: #323233;\n}\n\n/* line */\n.mo-line-area {\n fill: url(#MoLineAreaGradient);\n stroke-width: 0;\n opacity: 0.6;\n}\n.mo-line-point {\n fill: #00A383;\n stroke: #fff;\n stroke-width: 1px;\n}\n\n/* rotate */\n.mo-tip-container {\n width: 100%;\n height: 40px;\n line-height: 40px;\n border-radius: 18px;\n border: 1px solid #c5c7c9;\n margin: -5px 0 10px 0;\n}\n.mo-tip-pointer {\n position: relative;\n top: -40px;\n width: 100%;\n}\n.mo-triangle-mark {\n position: relative;\n top: 22px;\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid white;\n}\n.mo-triangle {\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid #c5c7c9;\n}\n.mo-tip-content {\n position: relative;\n text-align: center;\n font-size: 1.4rem;\n color: #3e4759;\n}\n.mo-tip-content:before {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #c5c7c9;\n position: absolute;\n top: -20px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content:after {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #fff;\n position: absolute;\n top: -18px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content .left-nav {\n width: 15%;\n float: left;\n}\n.mo-tip-content .left-nav img {\n -webkit-transform: rotate(180deg);\n -moz-transform: rotate(180deg);\n transform: rotate(180deg);\n margin-top: 10px;\n}\n.mo-tip-content .right-nav {\n width: 15%;\n float: right;\n}\n.mo-tip-content .right-nav img {\n margin-top: 10px;\n}\n.mo-tip-content .tip {\n width: 70%;\n max-width: 70%;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n float: left;\n}\n.mo-tip-content .tip .label {\n margin-left: 10px;\n}\n.mo-metric {\n width: 100%;\n height: 100%;\n color: #323233;\n}\n.mo-metric .mo-metric-inner {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n}\n.mo-metric .mo-metric-label, .mo-metric .mo-metric-value {\n width: 100%;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n}\n.mo-metric .mo-metric-label {\n padding-left: 5px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 2.4rem;\n}\n.mo-metric .mo-metric-value {\n padding-right: 5px;\n font-size: 7.3rem;\n}\n.mo-table {\n width: 100%;\n}\n.mo-table .mo-table-row {\n color: #323233;\n position: relative;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.header-row {\n background-color: #00A383;\n color: #fff;\n font-weight: 700;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell {\n position: relative;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #39a393;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #c8cacc;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell {\n display: inline-block;\n font-size: 1.6rem;\n height: 44px;\n line-height: 44px;\n text-align: left;\n padding: 0 10px;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n position: relative;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row .mo-table-cell .mo-table-cell-check, .mo-table .mo-table-row .mo-table-cell .mo-table-cell-uncheck {\n font-size: 2.2rem;\n position: relative;\n top: 10px;\n}\n.mo-table .mo-table-row .mo-table-right-cell {\n text-align: right;\n}\n.mo-table .mo-table-row .mo-table-checkbox-cell {\n width: 18px;\n margin-top: 13px;\n}\n.mo-label-line {\n stroke: #c8cacc;\n stroke-width: 0.5px;\n}\n.mo-label-title {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: start;\n}\n.mo-cover {\n width: calc(100% + 20px);\n}\n.mo-gauge-inner-bg-arc {\n fill: #fff;\n}\n@media (prefers-color-scheme: dark) {\n.mo-axis-label,\n .mo-axis-text,\n .mo-axis-number,\n .mo-axis-div-label,\n .mo-summary-label,\n .mo-legend-text,\n .mo-label-title {\n fill: #f2f2f7;\n}\n.mo-table .mo-table-row {\n color: #f2f2f7;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #2c2c2e;\n color: #f2f2f7;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #444447;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-tip-content .tip .label {\n color: #f2f2f7;\n}\n.mo-metric .mo-metric-label {\n color: #6e6e6e;\n}\n.mo-metric .mo-metric-value {\n color: #f2f2f7;\n}\n.mo-axis-div-label {\n color: #f2f2f7;\n}\n.mo-gauge-value {\n fill: #f2f2f7;\n}\n.mo-gauge-max-value {\n fill: #f2f2f7;\n}\n.mo-gauge-tick {\n stroke: #fff;\n}\n.mo-gauge-pointer {\n fill: #fff;\n}\n.mo-gauge-inner-bg-arc {\n fill: #1c1c1e;\n}\n.mo-gauge-back-arc {\n stroke: #2c2c2e;\n}\n}", map: undefined, media: undefined });
|
|
1094
1212
|
|
|
1095
1213
|
};
|
|
1096
1214
|
/* scoped */
|
|
@@ -1188,25 +1306,31 @@ var MoBarChartHorizontal = /** @class */ (function (_super) {
|
|
|
1188
1306
|
var barLength = this.data.length;
|
|
1189
1307
|
var maxValue;
|
|
1190
1308
|
var containerWidth = this.getWidth();
|
|
1309
|
+
var isWideScreen = containerWidth >= 694;
|
|
1310
|
+
var isStacked = this.groupType === 'stacked' || this.groupType === 'stacked100';
|
|
1311
|
+
if (this.groupType && this.groupType !== 'none') {
|
|
1312
|
+
this.data.forEach(function (d) {
|
|
1313
|
+
if (d.pieces && d.pieces.length > _this.categories.length) {
|
|
1314
|
+
_this.categories = d.pieces.map(function (piece) { return piece.label; });
|
|
1315
|
+
}
|
|
1316
|
+
});
|
|
1317
|
+
}
|
|
1191
1318
|
if (this.groupType === 'grouped' && this.categories.length > 0) {
|
|
1192
1319
|
maxValue = ChartService.getMaxValue(this.data);
|
|
1193
1320
|
}
|
|
1194
1321
|
else {
|
|
1195
1322
|
maxValue = max(this.data, function (d) { return max(d.values); });
|
|
1196
1323
|
}
|
|
1324
|
+
this.svgWidth = containerWidth;
|
|
1197
1325
|
var unitSymbol = (((_a = this.aggregates) === null || _a === void 0 ? void 0 : _a[0]) || {}).unitSymbol;
|
|
1198
1326
|
var maxValueStr = ChartService.formatValue(maxValue || 0, unitSymbol, this.decimal);
|
|
1199
1327
|
var textWidth = maxValueStr.length * 8;
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
this.
|
|
1328
|
+
this.actualMargin.right = Math.max(this.margin.right, textWidth + 20);
|
|
1329
|
+
if (isWideScreen && isStacked) {
|
|
1330
|
+
this.width = containerWidth * 0.8 - this.actualMargin.left - this.actualMargin.right;
|
|
1203
1331
|
}
|
|
1204
1332
|
else {
|
|
1205
|
-
this.
|
|
1206
|
-
}
|
|
1207
|
-
this.actualMargin.right = Math.max(this.margin.right, textWidth + 20);
|
|
1208
|
-
if (this.svgWidth) {
|
|
1209
|
-
this.width = this.svgWidth - this.actualMargin.left - this.actualMargin.right;
|
|
1333
|
+
this.width = containerWidth - this.actualMargin.left - this.actualMargin.right;
|
|
1210
1334
|
}
|
|
1211
1335
|
if (this.groupType === 'grouped' && this.categories.length > 0) {
|
|
1212
1336
|
this.height = (this.barHeight * this.categories.length + this.barPadding) * barLength;
|
|
@@ -1215,34 +1339,24 @@ var MoBarChartHorizontal = /** @class */ (function (_super) {
|
|
|
1215
1339
|
var multiplier = this.aggregates.length > 1 ? this.aggregates.length : 1;
|
|
1216
1340
|
this.height = (this.barHeight * multiplier + this.barPadding) * barLength;
|
|
1217
1341
|
}
|
|
1218
|
-
if (
|
|
1342
|
+
if (isWideScreen && isStacked) {
|
|
1219
1343
|
this.svgHeight = this.height + this.actualMargin.top + this.actualMargin.bottom;
|
|
1220
1344
|
}
|
|
1221
1345
|
else {
|
|
1222
|
-
this.svgHeight = this.height + this.actualMargin.top + this.actualMargin.bottom
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
if ((this.groupType === 'stacked' || this.groupType === 'stacked100')
|
|
1232
|
-
&& containerWidth >= 694) {
|
|
1233
|
-
this.svg = select(this.$el)
|
|
1234
|
-
.style('text-align', 'left')
|
|
1235
|
-
.append('svg')
|
|
1236
|
-
.attr('width', this.svgWidth)
|
|
1237
|
-
.attr('height', this.svgHeight)
|
|
1238
|
-
.style('overflow', 'visible');
|
|
1239
|
-
}
|
|
1240
|
-
else {
|
|
1241
|
-
this.svg = select(this.$el)
|
|
1242
|
-
.append('svg')
|
|
1243
|
-
.attr('width', this.svgWidth)
|
|
1244
|
-
.attr('height', this.svgHeight);
|
|
1346
|
+
this.svgHeight = this.height + this.actualMargin.top + this.actualMargin.bottom;
|
|
1347
|
+
if (this.categories.length > 0) {
|
|
1348
|
+
this.additionalHeight = Math.min(this.categories.length * 30 + 80, 200);
|
|
1349
|
+
this.svgHeight += this.additionalHeight;
|
|
1350
|
+
}
|
|
1351
|
+
if (this.aggregates.length > 1) {
|
|
1352
|
+
this.additionalHeight += Math.min(this.aggregates.length * 30 + 80, 200);
|
|
1353
|
+
this.svgHeight += this.additionalHeight;
|
|
1354
|
+
}
|
|
1245
1355
|
}
|
|
1356
|
+
this.svg = select(this.$el)
|
|
1357
|
+
.append('svg')
|
|
1358
|
+
.attr('width', this.svgWidth)
|
|
1359
|
+
.attr('height', this.svgHeight);
|
|
1246
1360
|
if (this.groupType === 'stacked100' && this.categories.length > 0) {
|
|
1247
1361
|
this.xAxisScale = scaleLinear()
|
|
1248
1362
|
.domain([0, 1])
|
|
@@ -1282,12 +1396,11 @@ var MoBarChartHorizontal = /** @class */ (function (_super) {
|
|
|
1282
1396
|
.attr('transform', "translate(" + this.actualMargin.left + ", " + this.actualMargin.top + ")");
|
|
1283
1397
|
this.labelGroup = this.svg.append('g');
|
|
1284
1398
|
if (this.aggregates.length > 0) {
|
|
1285
|
-
if (
|
|
1286
|
-
|
|
1287
|
-
this.labelGroup.attr('transform', "translate( " + (this.svgWidth + 50) + ",\n -" + (this.svgHeight - this.additionalHeight - this.actualMargin.top) + " )");
|
|
1399
|
+
if (isWideScreen && isStacked) {
|
|
1400
|
+
this.labelGroup.attr('transform', "translate(" + (this.width + 100) + ", 0)");
|
|
1288
1401
|
}
|
|
1289
1402
|
else {
|
|
1290
|
-
this.labelGroup.attr('transform', 'translate(
|
|
1403
|
+
this.labelGroup.attr('transform', 'translate(0, 60)');
|
|
1291
1404
|
}
|
|
1292
1405
|
}
|
|
1293
1406
|
};
|
|
@@ -1340,7 +1453,7 @@ var MoBarChartHorizontal = /** @class */ (function (_super) {
|
|
|
1340
1453
|
.style('fill', 'none');
|
|
1341
1454
|
this.svg.append('text')
|
|
1342
1455
|
.attr('class', 'mo-axis-label')
|
|
1343
|
-
.attr('x', -this.height / 1.
|
|
1456
|
+
.attr('x', -this.height / 1.2)
|
|
1344
1457
|
.attr('y', 10.5)
|
|
1345
1458
|
.attr('transform', 'rotate(-90)')
|
|
1346
1459
|
.text(this.groupings[0].label);
|
|
@@ -1445,7 +1558,7 @@ var MoBarChartHorizontal = /** @class */ (function (_super) {
|
|
|
1445
1558
|
.append('g')
|
|
1446
1559
|
.attr('transform', function (d, i) { return "translate(0,\n " + (_this.barHeight * _this.categories.length + _this.barPadding) * i + ")"; });
|
|
1447
1560
|
groupedBar.selectAll('rect')
|
|
1448
|
-
.data(function (d) { return d.pieces; })
|
|
1561
|
+
.data(function (d) { return d.pieces || []; })
|
|
1449
1562
|
.enter()
|
|
1450
1563
|
.append('rect')
|
|
1451
1564
|
.attr('class', 'rect')
|
|
@@ -1456,6 +1569,19 @@ var MoBarChartHorizontal = /** @class */ (function (_super) {
|
|
|
1456
1569
|
.transition()
|
|
1457
1570
|
.duration(1000)
|
|
1458
1571
|
.attr('width', function (d) { return _this.xAxisScale(d.values[0]); });
|
|
1572
|
+
groupedBar.selectAll('.mo-data-text')
|
|
1573
|
+
.data(function (d) { return d.pieces || []; })
|
|
1574
|
+
.enter()
|
|
1575
|
+
.append('text')
|
|
1576
|
+
.attr('class', 'mo-data-text')
|
|
1577
|
+
.attr('x', 0)
|
|
1578
|
+
.attr('y', function (d) { return _this.yAxisCategories(d.label) + _this.barHeight / 2 + 4; })
|
|
1579
|
+
.style('fill', this.valueColor)
|
|
1580
|
+
.attr('text-anchor', 'start')
|
|
1581
|
+
.transition()
|
|
1582
|
+
.duration(1000)
|
|
1583
|
+
.attr('x', function (d) { return _this.xAxisScale(d.values[0]) + 5; })
|
|
1584
|
+
.text(function (d) { return ChartService.formatValue(d.values[0], '', _this.decimal); });
|
|
1459
1585
|
};
|
|
1460
1586
|
MoBarChartHorizontal.prototype.renderStackedBar = function (data) {
|
|
1461
1587
|
var _this = this;
|
|
@@ -1499,20 +1625,25 @@ var MoBarChartHorizontal = /** @class */ (function (_super) {
|
|
|
1499
1625
|
MoBarChartHorizontal.prototype.renderLabel = function () {
|
|
1500
1626
|
var _this = this;
|
|
1501
1627
|
var containerWidth = this.getWidth();
|
|
1502
|
-
var
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
|
|
1628
|
+
var isWideScreen = containerWidth >= 694;
|
|
1629
|
+
var isStacked = this.groupType === 'stacked' || this.groupType === 'stacked100';
|
|
1630
|
+
if (isWideScreen && isStacked) {
|
|
1631
|
+
this.labelGroup.attr('transform', "translate(" + (this.width + 100) + ", 0)");
|
|
1632
|
+
}
|
|
1633
|
+
else {
|
|
1634
|
+
this.labelGroup.attr('transform', "translate(0, " + (this.height + this.actualMargin.top + 20) + ")");
|
|
1635
|
+
}
|
|
1636
|
+
if (!(isWideScreen && isStacked)) {
|
|
1506
1637
|
this.labelGroup.append('line')
|
|
1507
1638
|
.attr('x1', 0)
|
|
1508
|
-
.attr('y1',
|
|
1509
|
-
.attr('x2', this.
|
|
1510
|
-
.attr('y2',
|
|
1639
|
+
.attr('y1', 0)
|
|
1640
|
+
.attr('x2', this.svgWidth)
|
|
1641
|
+
.attr('y2', 0)
|
|
1511
1642
|
.attr('class', 'mo-label-line');
|
|
1512
1643
|
}
|
|
1513
1644
|
this.labelGroup.append('text')
|
|
1514
1645
|
.attr('x', 50)
|
|
1515
|
-
.attr('y',
|
|
1646
|
+
.attr('y', 30)
|
|
1516
1647
|
.attr('class', 'mo-label-title')
|
|
1517
1648
|
.text(this.groupings[1].label);
|
|
1518
1649
|
var legends = this.labelGroup.selectAll('.mo-label')
|
|
@@ -1524,11 +1655,11 @@ var MoBarChartHorizontal = /** @class */ (function (_super) {
|
|
|
1524
1655
|
.attr('width', '15')
|
|
1525
1656
|
.attr('height', '15')
|
|
1526
1657
|
.attr('x', 50)
|
|
1527
|
-
.attr('y', function (d, i) { return
|
|
1658
|
+
.attr('y', function (d, i) { return 50 + i * 30; })
|
|
1528
1659
|
.attr('fill', function (d, i) { return ChartService.getColor(i, _this.colors); });
|
|
1529
1660
|
legends.append('text')
|
|
1530
1661
|
.attr('x', 75)
|
|
1531
|
-
.attr('y', function (d, i) { return
|
|
1662
|
+
.attr('y', function (d, i) { return 62 + i * 30; })
|
|
1532
1663
|
.attr('class', 'mo-legend-text')
|
|
1533
1664
|
.text(function (d) { return d; });
|
|
1534
1665
|
};
|
|
@@ -1639,7 +1770,7 @@ __vue_render__$1._withStripped = true;
|
|
|
1639
1770
|
/* style */
|
|
1640
1771
|
var __vue_inject_styles__$1 = function (inject) {
|
|
1641
1772
|
if (!inject) { return }
|
|
1642
|
-
inject("data-v-fd84cef6_0", { source: "/* Colors\n========================================================================== */\n/* Typography\n========================================================================== */\n/* Border Radius\n========================================================================== */\n/* Table */\n/* Safe Area */\n.mo-chart {\n position: relative;\n width: 100%;\n height: 100%;\n font: 1rem sans-serif;\n text-align: center;\n}\n.mo-chart.x-scroll {\n overflow-x: scroll;\n}\n.mo-piece-active:active {\n opacity: 0.8;\n}\n.mo-inner-arc {\n fill: #000;\n opacity: 0.28;\n}\n.mo-inner-text {\n fill: #fff;\n font-size: 1.6rem;\n fill-opacity: 1;\n}\n.mo-summary-label {\n fill: #323233;\n font-size: 1.8rem;\n}\n.mo-summary-value {\n fill: #00A383;\n font-size: 1.8rem;\n}\n.mo-axis path {\n fill: none;\n stroke-width: 0;\n}\n.mo-space-line {\n stroke: #e4e7ed;\n stroke-width: 0.5px;\n}\n.mo-space-bold-line {\n stroke: #e4e5e9;\n stroke-width: 1px;\n}\n.mo-axis-point {\n fill: #abb4c7;\n}\n.mo-data-line {\n fill: none;\n stroke: #b8b8b8;\n stroke-width: 1.5px;\n}\n.mo-data-text {\n font-size: 1.4rem;\n fill: #3e3f41;\n}\n.mo-axis-text {\n font-size: 1.4rem;\n fill: #323233;\n}\n.mo-axis-label {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-axis-div-label {\n width: 100%;\n height: 20px;\n text-align: center;\n color: #3e4759;\n font-size: 1.4rem;\n clear: both;\n}\n.mo-legend-text {\n font-size: 1.4rem;\n fill: #3e4759;\n}\n.mo-legend-percentage {\n font-size: 1.6rem;\n}\n.mo-label-inner {\n text-anchor: middle;\n font-size: 1.4rem;\n fill: #fff;\n}\n.mo-gauge-back-arc {\n stroke-width: 6;\n stroke-linejoin: round;\n stroke: #f9f9f9;\n}\n.mo-gauge-value {\n font-size: 4rem;\n font-weight: 200;\n text-anchor: middle;\n fill: #323233;\n}\n.mo-gauge-max-value {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-gauge-value-arc {\n stroke-width: 6;\n stroke: url(#MoGaugeGradient);\n stroke-linejoin: round;\n}\n.mo-gauge-inner-arc {\n fill: #6e71ca;\n}\n.mo-gauge-tick {\n stroke: #323233;\n stroke-width: 0.5;\n}\n.mo-gauge-pointer {\n fill: #323233;\n}\n\n/* line */\n.mo-line-area {\n fill: url(#MoLineAreaGradient);\n stroke-width: 0;\n opacity: 0.6;\n}\n.mo-line-point {\n fill: #00A383;\n stroke: #fff;\n stroke-width: 1px;\n}\n\n/* rotate */\n.mo-tip-container {\n width: 100%;\n height: 40px;\n line-height: 40px;\n border-radius: 18px;\n border: 1px solid #c5c7c9;\n margin: -5px 0 10px 0;\n}\n.mo-tip-pointer {\n position: relative;\n top: -40px;\n width: 100%;\n}\n.mo-triangle-mark {\n position: relative;\n top: 22px;\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid white;\n}\n.mo-triangle {\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid #c5c7c9;\n}\n.mo-tip-content {\n position: relative;\n text-align: center;\n font-size: 1.4rem;\n color: #3e4759;\n}\n.mo-tip-content:before {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #c5c7c9;\n position: absolute;\n top: -20px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content:after {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #fff;\n position: absolute;\n top: -18px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content .left-nav {\n width: 15%;\n float: left;\n}\n.mo-tip-content .left-nav img {\n -webkit-transform: rotate(180deg);\n -moz-transform: rotate(180deg);\n transform: rotate(180deg);\n margin-top: 10px;\n}\n.mo-tip-content .right-nav {\n width: 15%;\n float: right;\n}\n.mo-tip-content .right-nav img {\n margin-top: 10px;\n}\n.mo-tip-content .tip {\n width: 70%;\n max-width: 70%;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n float: left;\n}\n.mo-tip-content .tip .label {\n margin-left: 10px;\n}\n.mo-metric {\n width: 100%;\n height: 100%;\n color: #323233;\n}\n.mo-metric .mo-metric-inner {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n}\n.mo-metric .mo-metric-label, .mo-metric .mo-metric-value {\n width: 100%;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n}\n.mo-metric .mo-metric-label {\n padding-left: 5px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 2.4rem;\n}\n.mo-metric .mo-metric-value {\n padding-right: 5px;\n font-size: 7.3rem;\n}\n.mo-table {\n width: 100%;\n}\n.mo-table .mo-table-row {\n color: #323233;\n position: relative;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.header-row {\n background-color: #00A383;\n color: #fff;\n font-weight: 700;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell {\n position: relative;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #39a393;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #c8cacc;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell {\n display: inline-block;\n font-size: 1.6rem;\n height: 44px;\n line-height: 44px;\n text-align: left;\n padding: 0 10px;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n position: relative;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row .mo-table-cell .mo-table-cell-check, .mo-table .mo-table-row .mo-table-cell .mo-table-cell-uncheck {\n font-size: 2.2rem;\n position: relative;\n top: 10px;\n}\n.mo-table .mo-table-row .mo-table-right-cell {\n text-align: right;\n}\n.mo-table .mo-table-row .mo-table-checkbox-cell {\n width: 18px;\n margin-top: 13px;\n}\n.mo-label-line {\n stroke: #c8cacc;\n stroke-width: 0.5px;\n}\n.mo-label-title {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: start;\n}\n.mo-cover {\n width: calc(100% + 20px);\n}\n.mo-gauge-inner-bg-arc {\n fill: #fff;\n}\n@media (prefers-color-scheme: dark) {\n.mo-axis-label,\n .mo-axis-text,\n .mo-axis-number,\n .mo-axis-div-label,\n .mo-summary-label,\n .mo-legend-text,\n .mo-label-title {\n fill: #f2f2f7;\n}\n.mo-table .mo-table-row {\n color: #f2f2f7;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #2c2c2e;\n color: #f2f2f7;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #444447;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-tip-content .tip .label {\n color: #f2f2f7;\n}\n.mo-metric .mo-metric-label {\n color: #6e6e6e;\n}\n.mo-metric .mo-metric-value {\n color: #f2f2f7;\n}\n.mo-axis-div-label {\n color: #f2f2f7;\n}\n.mo-gauge-value {\n fill: #f2f2f7;\n}\n.mo-gauge-max-value {\n fill: #f2f2f7;\n}\n.mo-gauge-tick {\n stroke: #fff;\n}\n.mo-gauge-pointer {\n fill: #fff;\n}\n.mo-gauge-inner-bg-arc {\n fill: #1c1c1e;\n}\n.mo-gauge-back-arc {\n stroke: #2c2c2e;\n}\n}", map: undefined, media: undefined });
|
|
1773
|
+
inject("data-v-9799e9b6_0", { source: "/* Colors\n========================================================================== */\n/* Typography\n========================================================================== */\n/* Border Radius\n========================================================================== */\n/* Table */\n/* Safe Area */\n.mo-chart {\n position: relative;\n width: 100%;\n height: 100%;\n font: 1rem sans-serif;\n text-align: center;\n}\n.mo-chart.x-scroll {\n overflow-x: scroll;\n}\n.mo-piece-active:active {\n opacity: 0.8;\n}\n.mo-inner-arc {\n fill: #000;\n opacity: 0.28;\n}\n.mo-inner-text {\n fill: #fff;\n font-size: 1.6rem;\n fill-opacity: 1;\n}\n.mo-summary-label {\n fill: #323233;\n font-size: 1.8rem;\n}\n.mo-summary-value {\n fill: #00A383;\n font-size: 1.8rem;\n}\n.mo-axis path {\n fill: none;\n stroke-width: 0;\n}\n.mo-space-line {\n stroke: #e4e7ed;\n stroke-width: 0.5px;\n}\n.mo-space-bold-line {\n stroke: #e4e5e9;\n stroke-width: 1px;\n}\n.mo-axis-point {\n fill: #abb4c7;\n}\n.mo-data-line {\n fill: none;\n stroke: #b8b8b8;\n stroke-width: 1.5px;\n}\n.mo-data-text {\n font-size: 1.4rem;\n fill: #3e3f41;\n}\n.mo-axis-text {\n font-size: 1.4rem;\n fill: #323233;\n}\n.mo-axis-label {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-axis-div-label {\n width: 100%;\n height: 20px;\n text-align: center;\n color: #3e4759;\n font-size: 1.4rem;\n clear: both;\n}\n.mo-legend-text {\n font-size: 1.4rem;\n fill: #3e4759;\n}\n.mo-legend-percentage {\n font-size: 1.6rem;\n}\n.mo-label-inner {\n text-anchor: middle;\n font-size: 1.4rem;\n fill: #fff;\n}\n.mo-gauge-back-arc {\n stroke-width: 6;\n stroke-linejoin: round;\n stroke: #f9f9f9;\n}\n.mo-gauge-value {\n font-size: 4rem;\n font-weight: 200;\n text-anchor: middle;\n fill: #323233;\n}\n.mo-gauge-max-value {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-gauge-value-arc {\n stroke-width: 6;\n stroke: url(#MoGaugeGradient);\n stroke-linejoin: round;\n}\n.mo-gauge-inner-arc {\n fill: #6e71ca;\n}\n.mo-gauge-tick {\n stroke: #323233;\n stroke-width: 0.5;\n}\n.mo-gauge-pointer {\n fill: #323233;\n}\n\n/* line */\n.mo-line-area {\n fill: url(#MoLineAreaGradient);\n stroke-width: 0;\n opacity: 0.6;\n}\n.mo-line-point {\n fill: #00A383;\n stroke: #fff;\n stroke-width: 1px;\n}\n\n/* rotate */\n.mo-tip-container {\n width: 100%;\n height: 40px;\n line-height: 40px;\n border-radius: 18px;\n border: 1px solid #c5c7c9;\n margin: -5px 0 10px 0;\n}\n.mo-tip-pointer {\n position: relative;\n top: -40px;\n width: 100%;\n}\n.mo-triangle-mark {\n position: relative;\n top: 22px;\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid white;\n}\n.mo-triangle {\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid #c5c7c9;\n}\n.mo-tip-content {\n position: relative;\n text-align: center;\n font-size: 1.4rem;\n color: #3e4759;\n}\n.mo-tip-content:before {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #c5c7c9;\n position: absolute;\n top: -20px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content:after {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #fff;\n position: absolute;\n top: -18px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content .left-nav {\n width: 15%;\n float: left;\n}\n.mo-tip-content .left-nav img {\n -webkit-transform: rotate(180deg);\n -moz-transform: rotate(180deg);\n transform: rotate(180deg);\n margin-top: 10px;\n}\n.mo-tip-content .right-nav {\n width: 15%;\n float: right;\n}\n.mo-tip-content .right-nav img {\n margin-top: 10px;\n}\n.mo-tip-content .tip {\n width: 70%;\n max-width: 70%;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n float: left;\n}\n.mo-tip-content .tip .label {\n margin-left: 10px;\n}\n.mo-metric {\n width: 100%;\n height: 100%;\n color: #323233;\n}\n.mo-metric .mo-metric-inner {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n}\n.mo-metric .mo-metric-label, .mo-metric .mo-metric-value {\n width: 100%;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n}\n.mo-metric .mo-metric-label {\n padding-left: 5px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 2.4rem;\n}\n.mo-metric .mo-metric-value {\n padding-right: 5px;\n font-size: 7.3rem;\n}\n.mo-table {\n width: 100%;\n}\n.mo-table .mo-table-row {\n color: #323233;\n position: relative;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.header-row {\n background-color: #00A383;\n color: #fff;\n font-weight: 700;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell {\n position: relative;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #39a393;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #c8cacc;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell {\n display: inline-block;\n font-size: 1.6rem;\n height: 44px;\n line-height: 44px;\n text-align: left;\n padding: 0 10px;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n position: relative;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row .mo-table-cell .mo-table-cell-check, .mo-table .mo-table-row .mo-table-cell .mo-table-cell-uncheck {\n font-size: 2.2rem;\n position: relative;\n top: 10px;\n}\n.mo-table .mo-table-row .mo-table-right-cell {\n text-align: right;\n}\n.mo-table .mo-table-row .mo-table-checkbox-cell {\n width: 18px;\n margin-top: 13px;\n}\n.mo-label-line {\n stroke: #c8cacc;\n stroke-width: 0.5px;\n}\n.mo-label-title {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: start;\n}\n.mo-cover {\n width: calc(100% + 20px);\n}\n.mo-gauge-inner-bg-arc {\n fill: #fff;\n}\n@media (prefers-color-scheme: dark) {\n.mo-axis-label,\n .mo-axis-text,\n .mo-axis-number,\n .mo-axis-div-label,\n .mo-summary-label,\n .mo-legend-text,\n .mo-label-title {\n fill: #f2f2f7;\n}\n.mo-table .mo-table-row {\n color: #f2f2f7;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #2c2c2e;\n color: #f2f2f7;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #444447;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-tip-content .tip .label {\n color: #f2f2f7;\n}\n.mo-metric .mo-metric-label {\n color: #6e6e6e;\n}\n.mo-metric .mo-metric-value {\n color: #f2f2f7;\n}\n.mo-axis-div-label {\n color: #f2f2f7;\n}\n.mo-gauge-value {\n fill: #f2f2f7;\n}\n.mo-gauge-max-value {\n fill: #f2f2f7;\n}\n.mo-gauge-tick {\n stroke: #fff;\n}\n.mo-gauge-pointer {\n fill: #fff;\n}\n.mo-gauge-inner-bg-arc {\n fill: #1c1c1e;\n}\n.mo-gauge-back-arc {\n stroke: #2c2c2e;\n}\n}", map: undefined, media: undefined });
|
|
1643
1774
|
|
|
1644
1775
|
};
|
|
1645
1776
|
/* scoped */
|
|
@@ -1723,13 +1854,14 @@ var PieChart = /** @class */ (function (_super) {
|
|
|
1723
1854
|
var _this = this;
|
|
1724
1855
|
e.stopPropagation();
|
|
1725
1856
|
e.preventDefault();
|
|
1726
|
-
|
|
1857
|
+
var chartDataForLegend = this.chartDataForLegend;
|
|
1858
|
+
if (this.rotation.index < chartDataForLegend.length - 1) {
|
|
1727
1859
|
this.rotation.index += 1;
|
|
1728
1860
|
}
|
|
1729
1861
|
else {
|
|
1730
1862
|
this.rotation.index = 0;
|
|
1731
1863
|
}
|
|
1732
|
-
var d = this.pieLayout(
|
|
1864
|
+
var d = this.pieLayout(chartDataForLegend)[this.rotation.index];
|
|
1733
1865
|
this.rotation.angle = 180 - (((d.startAngle + d.endAngle) / 2) / Math.PI) * 180;
|
|
1734
1866
|
var offsetY = this.aggregate ? 40 : 0;
|
|
1735
1867
|
this.arcGroup
|
|
@@ -1745,13 +1877,14 @@ var PieChart = /** @class */ (function (_super) {
|
|
|
1745
1877
|
var _this = this;
|
|
1746
1878
|
e.stopPropagation();
|
|
1747
1879
|
e.preventDefault();
|
|
1880
|
+
var chartDataForLegend = this.chartDataForLegend;
|
|
1748
1881
|
if (this.rotation.index > 0) {
|
|
1749
1882
|
this.rotation.index -= 1;
|
|
1750
1883
|
}
|
|
1751
1884
|
else {
|
|
1752
|
-
this.rotation.index =
|
|
1885
|
+
this.rotation.index = chartDataForLegend.length - 1;
|
|
1753
1886
|
}
|
|
1754
|
-
var d = this.pieLayout(
|
|
1887
|
+
var d = this.pieLayout(chartDataForLegend)[this.rotation.index];
|
|
1755
1888
|
this.rotation.angle = 180 - (((d.startAngle + d.endAngle) / 2) / Math.PI) * 180;
|
|
1756
1889
|
var offsetY = this.aggregate ? 40 : 0;
|
|
1757
1890
|
this.arcGroup
|
|
@@ -1764,13 +1897,14 @@ var PieChart = /** @class */ (function (_super) {
|
|
|
1764
1897
|
}, 100);
|
|
1765
1898
|
};
|
|
1766
1899
|
PieChart.prototype.changeContent = function () {
|
|
1900
|
+
var chartDataForLegend = this.chartDataForLegend;
|
|
1767
1901
|
if (this.rotation.index === -1) {
|
|
1768
1902
|
this.rotation.index = 0;
|
|
1769
1903
|
}
|
|
1770
1904
|
var currentPercentage = ChartService
|
|
1771
|
-
.getPercentage(
|
|
1905
|
+
.getPercentage(chartDataForLegend[this.rotation.index].values[0], this.total, this.decimal);
|
|
1772
1906
|
var currentValue = ChartService
|
|
1773
|
-
.formatValue(
|
|
1907
|
+
.formatValue(chartDataForLegend[this.rotation.index].values[0], this.symbol);
|
|
1774
1908
|
var percentage = this.$el.querySelector('.percentage');
|
|
1775
1909
|
var label = this.$el.querySelector('.label');
|
|
1776
1910
|
if (percentage) {
|
|
@@ -1780,11 +1914,18 @@ var PieChart = /** @class */ (function (_super) {
|
|
|
1780
1914
|
}
|
|
1781
1915
|
if (label) {
|
|
1782
1916
|
var selection = select(label);
|
|
1783
|
-
selection.text(
|
|
1917
|
+
selection.text(chartDataForLegend[this.rotation.index].label);
|
|
1784
1918
|
}
|
|
1785
1919
|
};
|
|
1786
1920
|
PieChart.prototype.init = function () {
|
|
1787
1921
|
var _a, _b;
|
|
1922
|
+
var chartDataForLegend;
|
|
1923
|
+
if (this.combineSmallGroups) {
|
|
1924
|
+
chartDataForLegend = ChartService.combineSmallGroups(__spreadArrays(this.data), 0.05, 'Others');
|
|
1925
|
+
}
|
|
1926
|
+
else {
|
|
1927
|
+
chartDataForLegend = __spreadArrays(this.data);
|
|
1928
|
+
}
|
|
1788
1929
|
this.width = this.area
|
|
1789
1930
|
&& this.area.width
|
|
1790
1931
|
&& this.area.height
|
|
@@ -1804,7 +1945,7 @@ var PieChart = /** @class */ (function (_super) {
|
|
|
1804
1945
|
this.height += 60;
|
|
1805
1946
|
}
|
|
1806
1947
|
else {
|
|
1807
|
-
this.height += (
|
|
1948
|
+
this.height += (chartDataForLegend.length * 25 + 34);
|
|
1808
1949
|
}
|
|
1809
1950
|
if (this.groupBy && this.aggregate) {
|
|
1810
1951
|
this.height += 50;
|
|
@@ -1831,7 +1972,7 @@ var PieChart = /** @class */ (function (_super) {
|
|
|
1831
1972
|
axisLabel.text(this.aggregate.label);
|
|
1832
1973
|
}
|
|
1833
1974
|
}
|
|
1834
|
-
this.total = sum(
|
|
1975
|
+
this.total = sum(chartDataForLegend, function (p) { return p.values[0]; });
|
|
1835
1976
|
this.arcLayout = arc()
|
|
1836
1977
|
.outerRadius(this.radius)
|
|
1837
1978
|
.innerRadius(this.innerRadius);
|
|
@@ -1839,7 +1980,7 @@ var PieChart = /** @class */ (function (_super) {
|
|
|
1839
1980
|
.outerRadius(this.innerRadius + 9)
|
|
1840
1981
|
.innerRadius(this.innerRadius);
|
|
1841
1982
|
this.pieLayout = pie().value(function (p) { return p.values[0]; });
|
|
1842
|
-
var d = this.pieLayout(
|
|
1983
|
+
var d = this.pieLayout(chartDataForLegend)[this.rotation.index];
|
|
1843
1984
|
this.rotation.angle = 180 - (((d.startAngle + d.endAngle) / 2) / Math.PI) * 180;
|
|
1844
1985
|
// 计算向下偏移的距离
|
|
1845
1986
|
var offsetY = this.aggregate ? 40 : 0;
|
|
@@ -1847,13 +1988,14 @@ var PieChart = /** @class */ (function (_super) {
|
|
|
1847
1988
|
.attr('transform', "translate(" + this.width / 2 + ", " + (this.width / 2 + offsetY) + ") rotate(" + this.rotation.angle + ")");
|
|
1848
1989
|
this.arc = this.arcGroup
|
|
1849
1990
|
.selectAll('.arc')
|
|
1850
|
-
.data(this.pieLayout(
|
|
1991
|
+
.data(this.pieLayout(chartDataForLegend))
|
|
1851
1992
|
.enter()
|
|
1852
1993
|
.append('g')
|
|
1853
1994
|
.attr('class', 'arc');
|
|
1854
1995
|
this.centerGroup = this.svg.append('svg:g')
|
|
1855
1996
|
.attr('transform', "translate(" + this.width / 2 + ", " + (this.width / 2 + offsetY) + ")");
|
|
1856
1997
|
this.labelGroup = this.svg.append('svg:g');
|
|
1998
|
+
this.chartDataForLegend = chartDataForLegend;
|
|
1857
1999
|
};
|
|
1858
2000
|
PieChart.prototype.renderPie = function () {
|
|
1859
2001
|
var _this = this;
|
|
@@ -1946,8 +2088,9 @@ var PieChart = /** @class */ (function (_super) {
|
|
|
1946
2088
|
.attr('y', this.width + 50)
|
|
1947
2089
|
.text(this.groupBy.label);
|
|
1948
2090
|
}
|
|
2091
|
+
var chartDataForLegend = this.chartDataForLegend;
|
|
1949
2092
|
var legends = this.labelGroup.selectAll('.mo-label')
|
|
1950
|
-
.data(
|
|
2093
|
+
.data(chartDataForLegend)
|
|
1951
2094
|
.enter()
|
|
1952
2095
|
.append('g');
|
|
1953
2096
|
if (this.labelMode === 'horizontal') {
|
|
@@ -2048,6 +2191,10 @@ var PieChart = /** @class */ (function (_super) {
|
|
|
2048
2191
|
Prop({ type: Array, required: true }),
|
|
2049
2192
|
__metadata("design:type", Array)
|
|
2050
2193
|
], PieChart.prototype, "data", void 0);
|
|
2194
|
+
__decorate([
|
|
2195
|
+
Prop({ type: Boolean, default: function () { return false; } }),
|
|
2196
|
+
__metadata("design:type", Boolean)
|
|
2197
|
+
], PieChart.prototype, "combineSmallGroups", void 0);
|
|
2051
2198
|
__decorate([
|
|
2052
2199
|
Prop({ type: Boolean, default: function () { return true; } }),
|
|
2053
2200
|
__metadata("design:type", Boolean)
|
|
@@ -2180,7 +2327,7 @@ __vue_render__$2._withStripped = true;
|
|
|
2180
2327
|
/* style */
|
|
2181
2328
|
var __vue_inject_styles__$2 = function (inject) {
|
|
2182
2329
|
if (!inject) { return }
|
|
2183
|
-
inject("data-v-7a5cdc78_0", { source: "/* Colors\n========================================================================== */\n/* Typography\n========================================================================== */\n/* Border Radius\n========================================================================== */\n/* Table */\n/* Safe Area */\n.mo-chart {\n position: relative;\n width: 100%;\n height: 100%;\n font: 1rem sans-serif;\n text-align: center;\n}\n.mo-chart.x-scroll {\n overflow-x: scroll;\n}\n.mo-piece-active:active {\n opacity: 0.8;\n}\n.mo-inner-arc {\n fill: #000;\n opacity: 0.28;\n}\n.mo-inner-text {\n fill: #fff;\n font-size: 1.6rem;\n fill-opacity: 1;\n}\n.mo-summary-label {\n fill: #323233;\n font-size: 1.8rem;\n}\n.mo-summary-value {\n fill: #00A383;\n font-size: 1.8rem;\n}\n.mo-axis path {\n fill: none;\n stroke-width: 0;\n}\n.mo-space-line {\n stroke: #e4e7ed;\n stroke-width: 0.5px;\n}\n.mo-space-bold-line {\n stroke: #e4e5e9;\n stroke-width: 1px;\n}\n.mo-axis-point {\n fill: #abb4c7;\n}\n.mo-data-line {\n fill: none;\n stroke: #b8b8b8;\n stroke-width: 1.5px;\n}\n.mo-data-text {\n font-size: 1.4rem;\n fill: #3e3f41;\n}\n.mo-axis-text {\n font-size: 1.4rem;\n fill: #323233;\n}\n.mo-axis-label {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-axis-div-label {\n width: 100%;\n height: 20px;\n text-align: center;\n color: #3e4759;\n font-size: 1.4rem;\n clear: both;\n}\n.mo-legend-text {\n font-size: 1.4rem;\n fill: #3e4759;\n}\n.mo-legend-percentage {\n font-size: 1.6rem;\n}\n.mo-label-inner {\n text-anchor: middle;\n font-size: 1.4rem;\n fill: #fff;\n}\n.mo-gauge-back-arc {\n stroke-width: 6;\n stroke-linejoin: round;\n stroke: #f9f9f9;\n}\n.mo-gauge-value {\n font-size: 4rem;\n font-weight: 200;\n text-anchor: middle;\n fill: #323233;\n}\n.mo-gauge-max-value {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-gauge-value-arc {\n stroke-width: 6;\n stroke: url(#MoGaugeGradient);\n stroke-linejoin: round;\n}\n.mo-gauge-inner-arc {\n fill: #6e71ca;\n}\n.mo-gauge-tick {\n stroke: #323233;\n stroke-width: 0.5;\n}\n.mo-gauge-pointer {\n fill: #323233;\n}\n\n/* line */\n.mo-line-area {\n fill: url(#MoLineAreaGradient);\n stroke-width: 0;\n opacity: 0.6;\n}\n.mo-line-point {\n fill: #00A383;\n stroke: #fff;\n stroke-width: 1px;\n}\n\n/* rotate */\n.mo-tip-container {\n width: 100%;\n height: 40px;\n line-height: 40px;\n border-radius: 18px;\n border: 1px solid #c5c7c9;\n margin: -5px 0 10px 0;\n}\n.mo-tip-pointer {\n position: relative;\n top: -40px;\n width: 100%;\n}\n.mo-triangle-mark {\n position: relative;\n top: 22px;\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid white;\n}\n.mo-triangle {\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid #c5c7c9;\n}\n.mo-tip-content {\n position: relative;\n text-align: center;\n font-size: 1.4rem;\n color: #3e4759;\n}\n.mo-tip-content:before {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #c5c7c9;\n position: absolute;\n top: -20px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content:after {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #fff;\n position: absolute;\n top: -18px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content .left-nav {\n width: 15%;\n float: left;\n}\n.mo-tip-content .left-nav img {\n -webkit-transform: rotate(180deg);\n -moz-transform: rotate(180deg);\n transform: rotate(180deg);\n margin-top: 10px;\n}\n.mo-tip-content .right-nav {\n width: 15%;\n float: right;\n}\n.mo-tip-content .right-nav img {\n margin-top: 10px;\n}\n.mo-tip-content .tip {\n width: 70%;\n max-width: 70%;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n float: left;\n}\n.mo-tip-content .tip .label {\n margin-left: 10px;\n}\n.mo-metric {\n width: 100%;\n height: 100%;\n color: #323233;\n}\n.mo-metric .mo-metric-inner {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n}\n.mo-metric .mo-metric-label, .mo-metric .mo-metric-value {\n width: 100%;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n}\n.mo-metric .mo-metric-label {\n padding-left: 5px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 2.4rem;\n}\n.mo-metric .mo-metric-value {\n padding-right: 5px;\n font-size: 7.3rem;\n}\n.mo-table {\n width: 100%;\n}\n.mo-table .mo-table-row {\n color: #323233;\n position: relative;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.header-row {\n background-color: #00A383;\n color: #fff;\n font-weight: 700;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell {\n position: relative;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #39a393;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #c8cacc;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell {\n display: inline-block;\n font-size: 1.6rem;\n height: 44px;\n line-height: 44px;\n text-align: left;\n padding: 0 10px;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n position: relative;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row .mo-table-cell .mo-table-cell-check, .mo-table .mo-table-row .mo-table-cell .mo-table-cell-uncheck {\n font-size: 2.2rem;\n position: relative;\n top: 10px;\n}\n.mo-table .mo-table-row .mo-table-right-cell {\n text-align: right;\n}\n.mo-table .mo-table-row .mo-table-checkbox-cell {\n width: 18px;\n margin-top: 13px;\n}\n.mo-label-line {\n stroke: #c8cacc;\n stroke-width: 0.5px;\n}\n.mo-label-title {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: start;\n}\n.mo-cover {\n width: calc(100% + 20px);\n}\n.mo-gauge-inner-bg-arc {\n fill: #fff;\n}\n@media (prefers-color-scheme: dark) {\n.mo-axis-label,\n .mo-axis-text,\n .mo-axis-number,\n .mo-axis-div-label,\n .mo-summary-label,\n .mo-legend-text,\n .mo-label-title {\n fill: #f2f2f7;\n}\n.mo-table .mo-table-row {\n color: #f2f2f7;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #2c2c2e;\n color: #f2f2f7;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #444447;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-tip-content .tip .label {\n color: #f2f2f7;\n}\n.mo-metric .mo-metric-label {\n color: #6e6e6e;\n}\n.mo-metric .mo-metric-value {\n color: #f2f2f7;\n}\n.mo-axis-div-label {\n color: #f2f2f7;\n}\n.mo-gauge-value {\n fill: #f2f2f7;\n}\n.mo-gauge-max-value {\n fill: #f2f2f7;\n}\n.mo-gauge-tick {\n stroke: #fff;\n}\n.mo-gauge-pointer {\n fill: #fff;\n}\n.mo-gauge-inner-bg-arc {\n fill: #1c1c1e;\n}\n.mo-gauge-back-arc {\n stroke: #2c2c2e;\n}\n}", map: undefined, media: undefined });
|
|
2330
|
+
inject("data-v-516ad978_0", { source: "/* Colors\n========================================================================== */\n/* Typography\n========================================================================== */\n/* Border Radius\n========================================================================== */\n/* Table */\n/* Safe Area */\n.mo-chart {\n position: relative;\n width: 100%;\n height: 100%;\n font: 1rem sans-serif;\n text-align: center;\n}\n.mo-chart.x-scroll {\n overflow-x: scroll;\n}\n.mo-piece-active:active {\n opacity: 0.8;\n}\n.mo-inner-arc {\n fill: #000;\n opacity: 0.28;\n}\n.mo-inner-text {\n fill: #fff;\n font-size: 1.6rem;\n fill-opacity: 1;\n}\n.mo-summary-label {\n fill: #323233;\n font-size: 1.8rem;\n}\n.mo-summary-value {\n fill: #00A383;\n font-size: 1.8rem;\n}\n.mo-axis path {\n fill: none;\n stroke-width: 0;\n}\n.mo-space-line {\n stroke: #e4e7ed;\n stroke-width: 0.5px;\n}\n.mo-space-bold-line {\n stroke: #e4e5e9;\n stroke-width: 1px;\n}\n.mo-axis-point {\n fill: #abb4c7;\n}\n.mo-data-line {\n fill: none;\n stroke: #b8b8b8;\n stroke-width: 1.5px;\n}\n.mo-data-text {\n font-size: 1.4rem;\n fill: #3e3f41;\n}\n.mo-axis-text {\n font-size: 1.4rem;\n fill: #323233;\n}\n.mo-axis-label {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-axis-div-label {\n width: 100%;\n height: 20px;\n text-align: center;\n color: #3e4759;\n font-size: 1.4rem;\n clear: both;\n}\n.mo-legend-text {\n font-size: 1.4rem;\n fill: #3e4759;\n}\n.mo-legend-percentage {\n font-size: 1.6rem;\n}\n.mo-label-inner {\n text-anchor: middle;\n font-size: 1.4rem;\n fill: #fff;\n}\n.mo-gauge-back-arc {\n stroke-width: 6;\n stroke-linejoin: round;\n stroke: #f9f9f9;\n}\n.mo-gauge-value {\n font-size: 4rem;\n font-weight: 200;\n text-anchor: middle;\n fill: #323233;\n}\n.mo-gauge-max-value {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-gauge-value-arc {\n stroke-width: 6;\n stroke: url(#MoGaugeGradient);\n stroke-linejoin: round;\n}\n.mo-gauge-inner-arc {\n fill: #6e71ca;\n}\n.mo-gauge-tick {\n stroke: #323233;\n stroke-width: 0.5;\n}\n.mo-gauge-pointer {\n fill: #323233;\n}\n\n/* line */\n.mo-line-area {\n fill: url(#MoLineAreaGradient);\n stroke-width: 0;\n opacity: 0.6;\n}\n.mo-line-point {\n fill: #00A383;\n stroke: #fff;\n stroke-width: 1px;\n}\n\n/* rotate */\n.mo-tip-container {\n width: 100%;\n height: 40px;\n line-height: 40px;\n border-radius: 18px;\n border: 1px solid #c5c7c9;\n margin: -5px 0 10px 0;\n}\n.mo-tip-pointer {\n position: relative;\n top: -40px;\n width: 100%;\n}\n.mo-triangle-mark {\n position: relative;\n top: 22px;\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid white;\n}\n.mo-triangle {\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid #c5c7c9;\n}\n.mo-tip-content {\n position: relative;\n text-align: center;\n font-size: 1.4rem;\n color: #3e4759;\n}\n.mo-tip-content:before {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #c5c7c9;\n position: absolute;\n top: -20px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content:after {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #fff;\n position: absolute;\n top: -18px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content .left-nav {\n width: 15%;\n float: left;\n}\n.mo-tip-content .left-nav img {\n -webkit-transform: rotate(180deg);\n -moz-transform: rotate(180deg);\n transform: rotate(180deg);\n margin-top: 10px;\n}\n.mo-tip-content .right-nav {\n width: 15%;\n float: right;\n}\n.mo-tip-content .right-nav img {\n margin-top: 10px;\n}\n.mo-tip-content .tip {\n width: 70%;\n max-width: 70%;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n float: left;\n}\n.mo-tip-content .tip .label {\n margin-left: 10px;\n}\n.mo-metric {\n width: 100%;\n height: 100%;\n color: #323233;\n}\n.mo-metric .mo-metric-inner {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n}\n.mo-metric .mo-metric-label, .mo-metric .mo-metric-value {\n width: 100%;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n}\n.mo-metric .mo-metric-label {\n padding-left: 5px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 2.4rem;\n}\n.mo-metric .mo-metric-value {\n padding-right: 5px;\n font-size: 7.3rem;\n}\n.mo-table {\n width: 100%;\n}\n.mo-table .mo-table-row {\n color: #323233;\n position: relative;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.header-row {\n background-color: #00A383;\n color: #fff;\n font-weight: 700;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell {\n position: relative;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #39a393;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #c8cacc;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell {\n display: inline-block;\n font-size: 1.6rem;\n height: 44px;\n line-height: 44px;\n text-align: left;\n padding: 0 10px;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n position: relative;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row .mo-table-cell .mo-table-cell-check, .mo-table .mo-table-row .mo-table-cell .mo-table-cell-uncheck {\n font-size: 2.2rem;\n position: relative;\n top: 10px;\n}\n.mo-table .mo-table-row .mo-table-right-cell {\n text-align: right;\n}\n.mo-table .mo-table-row .mo-table-checkbox-cell {\n width: 18px;\n margin-top: 13px;\n}\n.mo-label-line {\n stroke: #c8cacc;\n stroke-width: 0.5px;\n}\n.mo-label-title {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: start;\n}\n.mo-cover {\n width: calc(100% + 20px);\n}\n.mo-gauge-inner-bg-arc {\n fill: #fff;\n}\n@media (prefers-color-scheme: dark) {\n.mo-axis-label,\n .mo-axis-text,\n .mo-axis-number,\n .mo-axis-div-label,\n .mo-summary-label,\n .mo-legend-text,\n .mo-label-title {\n fill: #f2f2f7;\n}\n.mo-table .mo-table-row {\n color: #f2f2f7;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #2c2c2e;\n color: #f2f2f7;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #444447;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-tip-content .tip .label {\n color: #f2f2f7;\n}\n.mo-metric .mo-metric-label {\n color: #6e6e6e;\n}\n.mo-metric .mo-metric-value {\n color: #f2f2f7;\n}\n.mo-axis-div-label {\n color: #f2f2f7;\n}\n.mo-gauge-value {\n fill: #f2f2f7;\n}\n.mo-gauge-max-value {\n fill: #f2f2f7;\n}\n.mo-gauge-tick {\n stroke: #fff;\n}\n.mo-gauge-pointer {\n fill: #fff;\n}\n.mo-gauge-inner-bg-arc {\n fill: #1c1c1e;\n}\n.mo-gauge-back-arc {\n stroke: #2c2c2e;\n}\n}", map: undefined, media: undefined });
|
|
2184
2331
|
|
|
2185
2332
|
};
|
|
2186
2333
|
/* scoped */
|
|
@@ -2312,7 +2459,11 @@ var LineChart = /** @class */ (function (_super) {
|
|
|
2312
2459
|
this.xAxis = axisBottom(this.xAxisScale)
|
|
2313
2460
|
.tickSize(0)
|
|
2314
2461
|
.tickPadding(6)
|
|
2315
|
-
.tickFormat(function (d) {
|
|
2462
|
+
.tickFormat(function (d) {
|
|
2463
|
+
var text = d.toString();
|
|
2464
|
+
// 如果文本长度超过18个字符,截断并添加省略号
|
|
2465
|
+
return text.length > 18 ? text.slice(0, 15) + "..." : text;
|
|
2466
|
+
});
|
|
2316
2467
|
this.yAxisScale = scaleLinear()
|
|
2317
2468
|
.domain([0, this.maxValue || 10])
|
|
2318
2469
|
.range([this.height, 0])
|
|
@@ -2415,7 +2566,7 @@ var LineChart = /** @class */ (function (_super) {
|
|
|
2415
2566
|
this.svg.append('text')
|
|
2416
2567
|
.attr('class', 'mo-axis-label')
|
|
2417
2568
|
.attr('x', this.width / 2)
|
|
2418
|
-
.attr('y', this.height + this.actualMargin.bottom)
|
|
2569
|
+
.attr('y', this.height + this.actualMargin.bottom + 20)
|
|
2419
2570
|
.text(this.groupings[0].label);
|
|
2420
2571
|
this.svg.append('text')
|
|
2421
2572
|
.attr('class', 'mo-axis-label')
|
|
@@ -2690,7 +2841,7 @@ __vue_render__$3._withStripped = true;
|
|
|
2690
2841
|
/* style */
|
|
2691
2842
|
var __vue_inject_styles__$3 = function (inject) {
|
|
2692
2843
|
if (!inject) { return }
|
|
2693
|
-
inject("data-v-22d38a80_0", { source: "/* Colors\n========================================================================== */\n/* Typography\n========================================================================== */\n/* Border Radius\n========================================================================== */\n/* Table */\n/* Safe Area */\n.mo-chart {\n position: relative;\n width: 100%;\n height: 100%;\n font: 1rem sans-serif;\n text-align: center;\n}\n.mo-chart.x-scroll {\n overflow-x: scroll;\n}\n.mo-piece-active:active {\n opacity: 0.8;\n}\n.mo-inner-arc {\n fill: #000;\n opacity: 0.28;\n}\n.mo-inner-text {\n fill: #fff;\n font-size: 1.6rem;\n fill-opacity: 1;\n}\n.mo-summary-label {\n fill: #323233;\n font-size: 1.8rem;\n}\n.mo-summary-value {\n fill: #00A383;\n font-size: 1.8rem;\n}\n.mo-axis path {\n fill: none;\n stroke-width: 0;\n}\n.mo-space-line {\n stroke: #e4e7ed;\n stroke-width: 0.5px;\n}\n.mo-space-bold-line {\n stroke: #e4e5e9;\n stroke-width: 1px;\n}\n.mo-axis-point {\n fill: #abb4c7;\n}\n.mo-data-line {\n fill: none;\n stroke: #b8b8b8;\n stroke-width: 1.5px;\n}\n.mo-data-text {\n font-size: 1.4rem;\n fill: #3e3f41;\n}\n.mo-axis-text {\n font-size: 1.4rem;\n fill: #323233;\n}\n.mo-axis-label {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-axis-div-label {\n width: 100%;\n height: 20px;\n text-align: center;\n color: #3e4759;\n font-size: 1.4rem;\n clear: both;\n}\n.mo-legend-text {\n font-size: 1.4rem;\n fill: #3e4759;\n}\n.mo-legend-percentage {\n font-size: 1.6rem;\n}\n.mo-label-inner {\n text-anchor: middle;\n font-size: 1.4rem;\n fill: #fff;\n}\n.mo-gauge-back-arc {\n stroke-width: 6;\n stroke-linejoin: round;\n stroke: #f9f9f9;\n}\n.mo-gauge-value {\n font-size: 4rem;\n font-weight: 200;\n text-anchor: middle;\n fill: #323233;\n}\n.mo-gauge-max-value {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-gauge-value-arc {\n stroke-width: 6;\n stroke: url(#MoGaugeGradient);\n stroke-linejoin: round;\n}\n.mo-gauge-inner-arc {\n fill: #6e71ca;\n}\n.mo-gauge-tick {\n stroke: #323233;\n stroke-width: 0.5;\n}\n.mo-gauge-pointer {\n fill: #323233;\n}\n\n/* line */\n.mo-line-area {\n fill: url(#MoLineAreaGradient);\n stroke-width: 0;\n opacity: 0.6;\n}\n.mo-line-point {\n fill: #00A383;\n stroke: #fff;\n stroke-width: 1px;\n}\n\n/* rotate */\n.mo-tip-container {\n width: 100%;\n height: 40px;\n line-height: 40px;\n border-radius: 18px;\n border: 1px solid #c5c7c9;\n margin: -5px 0 10px 0;\n}\n.mo-tip-pointer {\n position: relative;\n top: -40px;\n width: 100%;\n}\n.mo-triangle-mark {\n position: relative;\n top: 22px;\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid white;\n}\n.mo-triangle {\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid #c5c7c9;\n}\n.mo-tip-content {\n position: relative;\n text-align: center;\n font-size: 1.4rem;\n color: #3e4759;\n}\n.mo-tip-content:before {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #c5c7c9;\n position: absolute;\n top: -20px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content:after {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #fff;\n position: absolute;\n top: -18px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content .left-nav {\n width: 15%;\n float: left;\n}\n.mo-tip-content .left-nav img {\n -webkit-transform: rotate(180deg);\n -moz-transform: rotate(180deg);\n transform: rotate(180deg);\n margin-top: 10px;\n}\n.mo-tip-content .right-nav {\n width: 15%;\n float: right;\n}\n.mo-tip-content .right-nav img {\n margin-top: 10px;\n}\n.mo-tip-content .tip {\n width: 70%;\n max-width: 70%;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n float: left;\n}\n.mo-tip-content .tip .label {\n margin-left: 10px;\n}\n.mo-metric {\n width: 100%;\n height: 100%;\n color: #323233;\n}\n.mo-metric .mo-metric-inner {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n}\n.mo-metric .mo-metric-label, .mo-metric .mo-metric-value {\n width: 100%;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n}\n.mo-metric .mo-metric-label {\n padding-left: 5px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 2.4rem;\n}\n.mo-metric .mo-metric-value {\n padding-right: 5px;\n font-size: 7.3rem;\n}\n.mo-table {\n width: 100%;\n}\n.mo-table .mo-table-row {\n color: #323233;\n position: relative;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.header-row {\n background-color: #00A383;\n color: #fff;\n font-weight: 700;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell {\n position: relative;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #39a393;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #c8cacc;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell {\n display: inline-block;\n font-size: 1.6rem;\n height: 44px;\n line-height: 44px;\n text-align: left;\n padding: 0 10px;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n position: relative;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row .mo-table-cell .mo-table-cell-check, .mo-table .mo-table-row .mo-table-cell .mo-table-cell-uncheck {\n font-size: 2.2rem;\n position: relative;\n top: 10px;\n}\n.mo-table .mo-table-row .mo-table-right-cell {\n text-align: right;\n}\n.mo-table .mo-table-row .mo-table-checkbox-cell {\n width: 18px;\n margin-top: 13px;\n}\n.mo-label-line {\n stroke: #c8cacc;\n stroke-width: 0.5px;\n}\n.mo-label-title {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: start;\n}\n.mo-cover {\n width: calc(100% + 20px);\n}\n.mo-gauge-inner-bg-arc {\n fill: #fff;\n}\n@media (prefers-color-scheme: dark) {\n.mo-axis-label,\n .mo-axis-text,\n .mo-axis-number,\n .mo-axis-div-label,\n .mo-summary-label,\n .mo-legend-text,\n .mo-label-title {\n fill: #f2f2f7;\n}\n.mo-table .mo-table-row {\n color: #f2f2f7;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #2c2c2e;\n color: #f2f2f7;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #444447;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-tip-content .tip .label {\n color: #f2f2f7;\n}\n.mo-metric .mo-metric-label {\n color: #6e6e6e;\n}\n.mo-metric .mo-metric-value {\n color: #f2f2f7;\n}\n.mo-axis-div-label {\n color: #f2f2f7;\n}\n.mo-gauge-value {\n fill: #f2f2f7;\n}\n.mo-gauge-max-value {\n fill: #f2f2f7;\n}\n.mo-gauge-tick {\n stroke: #fff;\n}\n.mo-gauge-pointer {\n fill: #fff;\n}\n.mo-gauge-inner-bg-arc {\n fill: #1c1c1e;\n}\n.mo-gauge-back-arc {\n stroke: #2c2c2e;\n}\n}", map: undefined, media: undefined });
|
|
2844
|
+
inject("data-v-176eb6e9_0", { source: "/* Colors\n========================================================================== */\n/* Typography\n========================================================================== */\n/* Border Radius\n========================================================================== */\n/* Table */\n/* Safe Area */\n.mo-chart {\n position: relative;\n width: 100%;\n height: 100%;\n font: 1rem sans-serif;\n text-align: center;\n}\n.mo-chart.x-scroll {\n overflow-x: scroll;\n}\n.mo-piece-active:active {\n opacity: 0.8;\n}\n.mo-inner-arc {\n fill: #000;\n opacity: 0.28;\n}\n.mo-inner-text {\n fill: #fff;\n font-size: 1.6rem;\n fill-opacity: 1;\n}\n.mo-summary-label {\n fill: #323233;\n font-size: 1.8rem;\n}\n.mo-summary-value {\n fill: #00A383;\n font-size: 1.8rem;\n}\n.mo-axis path {\n fill: none;\n stroke-width: 0;\n}\n.mo-space-line {\n stroke: #e4e7ed;\n stroke-width: 0.5px;\n}\n.mo-space-bold-line {\n stroke: #e4e5e9;\n stroke-width: 1px;\n}\n.mo-axis-point {\n fill: #abb4c7;\n}\n.mo-data-line {\n fill: none;\n stroke: #b8b8b8;\n stroke-width: 1.5px;\n}\n.mo-data-text {\n font-size: 1.4rem;\n fill: #3e3f41;\n}\n.mo-axis-text {\n font-size: 1.4rem;\n fill: #323233;\n}\n.mo-axis-label {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-axis-div-label {\n width: 100%;\n height: 20px;\n text-align: center;\n color: #3e4759;\n font-size: 1.4rem;\n clear: both;\n}\n.mo-legend-text {\n font-size: 1.4rem;\n fill: #3e4759;\n}\n.mo-legend-percentage {\n font-size: 1.6rem;\n}\n.mo-label-inner {\n text-anchor: middle;\n font-size: 1.4rem;\n fill: #fff;\n}\n.mo-gauge-back-arc {\n stroke-width: 6;\n stroke-linejoin: round;\n stroke: #f9f9f9;\n}\n.mo-gauge-value {\n font-size: 4rem;\n font-weight: 200;\n text-anchor: middle;\n fill: #323233;\n}\n.mo-gauge-max-value {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-gauge-value-arc {\n stroke-width: 6;\n stroke: url(#MoGaugeGradient);\n stroke-linejoin: round;\n}\n.mo-gauge-inner-arc {\n fill: #6e71ca;\n}\n.mo-gauge-tick {\n stroke: #323233;\n stroke-width: 0.5;\n}\n.mo-gauge-pointer {\n fill: #323233;\n}\n\n/* line */\n.mo-line-area {\n fill: url(#MoLineAreaGradient);\n stroke-width: 0;\n opacity: 0.6;\n}\n.mo-line-point {\n fill: #00A383;\n stroke: #fff;\n stroke-width: 1px;\n}\n\n/* rotate */\n.mo-tip-container {\n width: 100%;\n height: 40px;\n line-height: 40px;\n border-radius: 18px;\n border: 1px solid #c5c7c9;\n margin: -5px 0 10px 0;\n}\n.mo-tip-pointer {\n position: relative;\n top: -40px;\n width: 100%;\n}\n.mo-triangle-mark {\n position: relative;\n top: 22px;\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid white;\n}\n.mo-triangle {\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid #c5c7c9;\n}\n.mo-tip-content {\n position: relative;\n text-align: center;\n font-size: 1.4rem;\n color: #3e4759;\n}\n.mo-tip-content:before {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #c5c7c9;\n position: absolute;\n top: -20px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content:after {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #fff;\n position: absolute;\n top: -18px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content .left-nav {\n width: 15%;\n float: left;\n}\n.mo-tip-content .left-nav img {\n -webkit-transform: rotate(180deg);\n -moz-transform: rotate(180deg);\n transform: rotate(180deg);\n margin-top: 10px;\n}\n.mo-tip-content .right-nav {\n width: 15%;\n float: right;\n}\n.mo-tip-content .right-nav img {\n margin-top: 10px;\n}\n.mo-tip-content .tip {\n width: 70%;\n max-width: 70%;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n float: left;\n}\n.mo-tip-content .tip .label {\n margin-left: 10px;\n}\n.mo-metric {\n width: 100%;\n height: 100%;\n color: #323233;\n}\n.mo-metric .mo-metric-inner {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n}\n.mo-metric .mo-metric-label, .mo-metric .mo-metric-value {\n width: 100%;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n}\n.mo-metric .mo-metric-label {\n padding-left: 5px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 2.4rem;\n}\n.mo-metric .mo-metric-value {\n padding-right: 5px;\n font-size: 7.3rem;\n}\n.mo-table {\n width: 100%;\n}\n.mo-table .mo-table-row {\n color: #323233;\n position: relative;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.header-row {\n background-color: #00A383;\n color: #fff;\n font-weight: 700;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell {\n position: relative;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #39a393;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #c8cacc;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell {\n display: inline-block;\n font-size: 1.6rem;\n height: 44px;\n line-height: 44px;\n text-align: left;\n padding: 0 10px;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n position: relative;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row .mo-table-cell .mo-table-cell-check, .mo-table .mo-table-row .mo-table-cell .mo-table-cell-uncheck {\n font-size: 2.2rem;\n position: relative;\n top: 10px;\n}\n.mo-table .mo-table-row .mo-table-right-cell {\n text-align: right;\n}\n.mo-table .mo-table-row .mo-table-checkbox-cell {\n width: 18px;\n margin-top: 13px;\n}\n.mo-label-line {\n stroke: #c8cacc;\n stroke-width: 0.5px;\n}\n.mo-label-title {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: start;\n}\n.mo-cover {\n width: calc(100% + 20px);\n}\n.mo-gauge-inner-bg-arc {\n fill: #fff;\n}\n@media (prefers-color-scheme: dark) {\n.mo-axis-label,\n .mo-axis-text,\n .mo-axis-number,\n .mo-axis-div-label,\n .mo-summary-label,\n .mo-legend-text,\n .mo-label-title {\n fill: #f2f2f7;\n}\n.mo-table .mo-table-row {\n color: #f2f2f7;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #2c2c2e;\n color: #f2f2f7;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #444447;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-tip-content .tip .label {\n color: #f2f2f7;\n}\n.mo-metric .mo-metric-label {\n color: #6e6e6e;\n}\n.mo-metric .mo-metric-value {\n color: #f2f2f7;\n}\n.mo-axis-div-label {\n color: #f2f2f7;\n}\n.mo-gauge-value {\n fill: #f2f2f7;\n}\n.mo-gauge-max-value {\n fill: #f2f2f7;\n}\n.mo-gauge-tick {\n stroke: #fff;\n}\n.mo-gauge-pointer {\n fill: #fff;\n}\n.mo-gauge-inner-bg-arc {\n fill: #1c1c1e;\n}\n.mo-gauge-back-arc {\n stroke: #2c2c2e;\n}\n}", map: undefined, media: undefined });
|
|
2694
2845
|
|
|
2695
2846
|
};
|
|
2696
2847
|
/* scoped */
|
|
@@ -2747,8 +2898,16 @@ var FunnelChart = /** @class */ (function (_super) {
|
|
|
2747
2898
|
var _this = this;
|
|
2748
2899
|
this.colorMap.clear();
|
|
2749
2900
|
this.refactoredData = [];
|
|
2750
|
-
|
|
2751
|
-
|
|
2901
|
+
var chartDataForLegend;
|
|
2902
|
+
if (this.combineSmallGroups) {
|
|
2903
|
+
chartDataForLegend = ChartService.combineSmallGroups(__spreadArrays(this.data), 0.05, 'Others');
|
|
2904
|
+
}
|
|
2905
|
+
else {
|
|
2906
|
+
chartDataForLegend = __spreadArrays(this.data);
|
|
2907
|
+
}
|
|
2908
|
+
// 对数据进行排序,按value占比从大到小排序
|
|
2909
|
+
var totalValue = sum(chartDataForLegend, function (d) { return d.values[0]; });
|
|
2910
|
+
var sortedData = __spreadArrays(chartDataForLegend).sort(function (a, b) { return a.label.localeCompare(b.label); });
|
|
2752
2911
|
sortedData.forEach(function (d, i) {
|
|
2753
2912
|
_this.colorMap.set(d.label, ChartService.getColor(i, _this.colors));
|
|
2754
2913
|
});
|
|
@@ -2762,9 +2921,8 @@ var FunnelChart = /** @class */ (function (_super) {
|
|
|
2762
2921
|
this.funnelHeight = this.height || this.funnelWidth;
|
|
2763
2922
|
var dataLength = sortedData.length;
|
|
2764
2923
|
var height = this.funnelHeight + (this.legendItemHeight * (dataLength + 1));
|
|
2765
|
-
var minHeight = 20; //
|
|
2766
|
-
var
|
|
2767
|
-
var zeroCount = sortedData.filter(function (d) { return d.values[0] === 0; }).length;
|
|
2924
|
+
var minHeight = 20; // 最小高度
|
|
2925
|
+
var zeroCount = sortedData.filter(function (d) { return d.values[0] <= 5; }).length;
|
|
2768
2926
|
var availableHeight = this.funnelHeight - (minHeight * zeroCount);
|
|
2769
2927
|
var accumulatedY = 0;
|
|
2770
2928
|
if (this.groupBy && this.aggregate) {
|
|
@@ -2776,9 +2934,7 @@ var FunnelChart = /** @class */ (function (_super) {
|
|
|
2776
2934
|
sortedData.forEach(function (d) {
|
|
2777
2935
|
// 计算当前高度位置占总高度的比例
|
|
2778
2936
|
var currentRatio = accumulatedY / _this.funnelHeight;
|
|
2779
|
-
var itemHeight = d.values[0]
|
|
2780
|
-
? minHeight
|
|
2781
|
-
: (d.values[0] / totalValue) * availableHeight;
|
|
2937
|
+
var itemHeight = Math.max((d.values[0] / totalValue) * availableHeight, minHeight);
|
|
2782
2938
|
var nextRatio = (accumulatedY + itemHeight) / _this.funnelHeight;
|
|
2783
2939
|
// 计算当前层的上下宽度
|
|
2784
2940
|
var currentTopWidth = topWidth - (topWidth - bottomWidth) * currentRatio;
|
|
@@ -2793,21 +2949,23 @@ var FunnelChart = /** @class */ (function (_super) {
|
|
|
2793
2949
|
var x4 = (_this.funnelWidth - currentBottomWidth) / 2;
|
|
2794
2950
|
var y4 = y3;
|
|
2795
2951
|
accumulatedY += itemHeight;
|
|
2796
|
-
|
|
2797
|
-
|
|
2798
|
-
|
|
2799
|
-
|
|
2800
|
-
|
|
2801
|
-
|
|
2802
|
-
|
|
2803
|
-
|
|
2804
|
-
|
|
2805
|
-
|
|
2806
|
-
|
|
2807
|
-
|
|
2808
|
-
|
|
2809
|
-
|
|
2810
|
-
|
|
2952
|
+
if (d.values[0] > 0) {
|
|
2953
|
+
var temp = JSON.parse(JSON.stringify(d));
|
|
2954
|
+
temp.points = [{
|
|
2955
|
+
x: x1,
|
|
2956
|
+
y: y1,
|
|
2957
|
+
}, {
|
|
2958
|
+
x: x2,
|
|
2959
|
+
y: y2,
|
|
2960
|
+
}, {
|
|
2961
|
+
x: x3,
|
|
2962
|
+
y: y3,
|
|
2963
|
+
}, {
|
|
2964
|
+
x: x4,
|
|
2965
|
+
y: y4,
|
|
2966
|
+
}];
|
|
2967
|
+
_this.refactoredData.push(temp);
|
|
2968
|
+
}
|
|
2811
2969
|
});
|
|
2812
2970
|
if (containerWidth < 694) {
|
|
2813
2971
|
this.svg = select(this.$el)
|
|
@@ -2824,6 +2982,7 @@ var FunnelChart = /** @class */ (function (_super) {
|
|
|
2824
2982
|
.style('overflow', 'visible');
|
|
2825
2983
|
}
|
|
2826
2984
|
this.total = totalValue;
|
|
2985
|
+
this.chartDataForLegend = chartDataForLegend;
|
|
2827
2986
|
};
|
|
2828
2987
|
FunnelChart.prototype.renderFunnel = function () {
|
|
2829
2988
|
var _this = this;
|
|
@@ -2872,7 +3031,7 @@ var FunnelChart = /** @class */ (function (_super) {
|
|
|
2872
3031
|
this.svg.append('text')
|
|
2873
3032
|
.attr('class', 'mo-axis-label')
|
|
2874
3033
|
.attr('x', this.funnelWidth / 2)
|
|
2875
|
-
.attr('y', this.funnelHeight +
|
|
3034
|
+
.attr('y', this.funnelHeight + (this.refactoredData.length * 10))
|
|
2876
3035
|
.text(function () {
|
|
2877
3036
|
var _a;
|
|
2878
3037
|
var label = ((_a = _this.aggregate) === null || _a === void 0 ? void 0 : _a.label) || '';
|
|
@@ -2905,6 +3064,7 @@ var FunnelChart = /** @class */ (function (_super) {
|
|
|
2905
3064
|
}
|
|
2906
3065
|
transformY += 65;
|
|
2907
3066
|
}
|
|
3067
|
+
var legendData = this.chartDataForLegend;
|
|
2908
3068
|
var legend = this.svg.append('g').attr('class', 'legend');
|
|
2909
3069
|
if (containerWidth < 694) {
|
|
2910
3070
|
legend.attr('transform', "translate( 50, " + transformY + " )");
|
|
@@ -2913,33 +3073,18 @@ var FunnelChart = /** @class */ (function (_super) {
|
|
|
2913
3073
|
legend.attr('transform', "translate( " + (this.funnelWidth + 50) + ", 50 )");
|
|
2914
3074
|
}
|
|
2915
3075
|
var legendRect = legend.selectAll('rect')
|
|
2916
|
-
.data(
|
|
3076
|
+
.data(legendData)
|
|
2917
3077
|
.enter()
|
|
2918
3078
|
.append('rect')
|
|
2919
3079
|
.attr('width', 15)
|
|
2920
3080
|
.attr('height', 15)
|
|
2921
3081
|
.style('fill', function (d) { return _this.colorMap.get(d.label) || '#fff'; });
|
|
2922
3082
|
var legendText = legend.selectAll('text')
|
|
2923
|
-
.data(
|
|
3083
|
+
.data(legendData)
|
|
2924
3084
|
.enter()
|
|
2925
3085
|
.append('text')
|
|
2926
3086
|
.attr('class', 'mo-legend-text')
|
|
2927
|
-
.text(function (d) {
|
|
2928
|
-
var text = ChartService.getBottomText({
|
|
2929
|
-
showValue: _this.showValue,
|
|
2930
|
-
innerValue: _this.valuePosition === 'inner',
|
|
2931
|
-
value: d.values[0],
|
|
2932
|
-
showPercentage: _this.showPercentage,
|
|
2933
|
-
innerPercentage: _this.percentagePosition === 'inner',
|
|
2934
|
-
total: _this.total,
|
|
2935
|
-
decimal: _this.decimal,
|
|
2936
|
-
symbol: '',
|
|
2937
|
-
});
|
|
2938
|
-
if (text !== '') {
|
|
2939
|
-
return d.label + " : " + text;
|
|
2940
|
-
}
|
|
2941
|
-
return d.label;
|
|
2942
|
-
});
|
|
3087
|
+
.text(function (d) { return d.label; });
|
|
2943
3088
|
if (this.labelMode === 'horizontal') {
|
|
2944
3089
|
legendRect
|
|
2945
3090
|
.attr('x', function (d, i) { return 10 + (i * 100); })
|
|
@@ -2962,6 +3107,10 @@ var FunnelChart = /** @class */ (function (_super) {
|
|
|
2962
3107
|
Prop({ type: Array, required: true }),
|
|
2963
3108
|
__metadata("design:type", Array)
|
|
2964
3109
|
], FunnelChart.prototype, "data", void 0);
|
|
3110
|
+
__decorate([
|
|
3111
|
+
Prop({ type: Boolean, default: function () { return false; } }),
|
|
3112
|
+
__metadata("design:type", Boolean)
|
|
3113
|
+
], FunnelChart.prototype, "combineSmallGroups", void 0);
|
|
2965
3114
|
__decorate([
|
|
2966
3115
|
Prop({ type: Number }),
|
|
2967
3116
|
__metadata("design:type", Number)
|
|
@@ -3030,7 +3179,7 @@ __vue_render__$4._withStripped = true;
|
|
|
3030
3179
|
/* style */
|
|
3031
3180
|
var __vue_inject_styles__$4 = function (inject) {
|
|
3032
3181
|
if (!inject) { return }
|
|
3033
|
-
inject("data-v-03e70940_0", { source: "/* Colors\n========================================================================== */\n/* Typography\n========================================================================== */\n/* Border Radius\n========================================================================== */\n/* Table */\n/* Safe Area */\n.mo-chart {\n position: relative;\n width: 100%;\n height: 100%;\n font: 1rem sans-serif;\n text-align: center;\n}\n.mo-chart.x-scroll {\n overflow-x: scroll;\n}\n.mo-piece-active:active {\n opacity: 0.8;\n}\n.mo-inner-arc {\n fill: #000;\n opacity: 0.28;\n}\n.mo-inner-text {\n fill: #fff;\n font-size: 1.6rem;\n fill-opacity: 1;\n}\n.mo-summary-label {\n fill: #323233;\n font-size: 1.8rem;\n}\n.mo-summary-value {\n fill: #00A383;\n font-size: 1.8rem;\n}\n.mo-axis path {\n fill: none;\n stroke-width: 0;\n}\n.mo-space-line {\n stroke: #e4e7ed;\n stroke-width: 0.5px;\n}\n.mo-space-bold-line {\n stroke: #e4e5e9;\n stroke-width: 1px;\n}\n.mo-axis-point {\n fill: #abb4c7;\n}\n.mo-data-line {\n fill: none;\n stroke: #b8b8b8;\n stroke-width: 1.5px;\n}\n.mo-data-text {\n font-size: 1.4rem;\n fill: #3e3f41;\n}\n.mo-axis-text {\n font-size: 1.4rem;\n fill: #323233;\n}\n.mo-axis-label {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-axis-div-label {\n width: 100%;\n height: 20px;\n text-align: center;\n color: #3e4759;\n font-size: 1.4rem;\n clear: both;\n}\n.mo-legend-text {\n font-size: 1.4rem;\n fill: #3e4759;\n}\n.mo-legend-percentage {\n font-size: 1.6rem;\n}\n.mo-label-inner {\n text-anchor: middle;\n font-size: 1.4rem;\n fill: #fff;\n}\n.mo-gauge-back-arc {\n stroke-width: 6;\n stroke-linejoin: round;\n stroke: #f9f9f9;\n}\n.mo-gauge-value {\n font-size: 4rem;\n font-weight: 200;\n text-anchor: middle;\n fill: #323233;\n}\n.mo-gauge-max-value {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-gauge-value-arc {\n stroke-width: 6;\n stroke: url(#MoGaugeGradient);\n stroke-linejoin: round;\n}\n.mo-gauge-inner-arc {\n fill: #6e71ca;\n}\n.mo-gauge-tick {\n stroke: #323233;\n stroke-width: 0.5;\n}\n.mo-gauge-pointer {\n fill: #323233;\n}\n\n/* line */\n.mo-line-area {\n fill: url(#MoLineAreaGradient);\n stroke-width: 0;\n opacity: 0.6;\n}\n.mo-line-point {\n fill: #00A383;\n stroke: #fff;\n stroke-width: 1px;\n}\n\n/* rotate */\n.mo-tip-container {\n width: 100%;\n height: 40px;\n line-height: 40px;\n border-radius: 18px;\n border: 1px solid #c5c7c9;\n margin: -5px 0 10px 0;\n}\n.mo-tip-pointer {\n position: relative;\n top: -40px;\n width: 100%;\n}\n.mo-triangle-mark {\n position: relative;\n top: 22px;\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid white;\n}\n.mo-triangle {\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid #c5c7c9;\n}\n.mo-tip-content {\n position: relative;\n text-align: center;\n font-size: 1.4rem;\n color: #3e4759;\n}\n.mo-tip-content:before {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #c5c7c9;\n position: absolute;\n top: -20px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content:after {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #fff;\n position: absolute;\n top: -18px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content .left-nav {\n width: 15%;\n float: left;\n}\n.mo-tip-content .left-nav img {\n -webkit-transform: rotate(180deg);\n -moz-transform: rotate(180deg);\n transform: rotate(180deg);\n margin-top: 10px;\n}\n.mo-tip-content .right-nav {\n width: 15%;\n float: right;\n}\n.mo-tip-content .right-nav img {\n margin-top: 10px;\n}\n.mo-tip-content .tip {\n width: 70%;\n max-width: 70%;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n float: left;\n}\n.mo-tip-content .tip .label {\n margin-left: 10px;\n}\n.mo-metric {\n width: 100%;\n height: 100%;\n color: #323233;\n}\n.mo-metric .mo-metric-inner {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n}\n.mo-metric .mo-metric-label, .mo-metric .mo-metric-value {\n width: 100%;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n}\n.mo-metric .mo-metric-label {\n padding-left: 5px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 2.4rem;\n}\n.mo-metric .mo-metric-value {\n padding-right: 5px;\n font-size: 7.3rem;\n}\n.mo-table {\n width: 100%;\n}\n.mo-table .mo-table-row {\n color: #323233;\n position: relative;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.header-row {\n background-color: #00A383;\n color: #fff;\n font-weight: 700;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell {\n position: relative;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #39a393;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #c8cacc;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell {\n display: inline-block;\n font-size: 1.6rem;\n height: 44px;\n line-height: 44px;\n text-align: left;\n padding: 0 10px;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n position: relative;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row .mo-table-cell .mo-table-cell-check, .mo-table .mo-table-row .mo-table-cell .mo-table-cell-uncheck {\n font-size: 2.2rem;\n position: relative;\n top: 10px;\n}\n.mo-table .mo-table-row .mo-table-right-cell {\n text-align: right;\n}\n.mo-table .mo-table-row .mo-table-checkbox-cell {\n width: 18px;\n margin-top: 13px;\n}\n.mo-label-line {\n stroke: #c8cacc;\n stroke-width: 0.5px;\n}\n.mo-label-title {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: start;\n}\n.mo-cover {\n width: calc(100% + 20px);\n}\n.mo-gauge-inner-bg-arc {\n fill: #fff;\n}\n@media (prefers-color-scheme: dark) {\n.mo-axis-label,\n .mo-axis-text,\n .mo-axis-number,\n .mo-axis-div-label,\n .mo-summary-label,\n .mo-legend-text,\n .mo-label-title {\n fill: #f2f2f7;\n}\n.mo-table .mo-table-row {\n color: #f2f2f7;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #2c2c2e;\n color: #f2f2f7;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #444447;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-tip-content .tip .label {\n color: #f2f2f7;\n}\n.mo-metric .mo-metric-label {\n color: #6e6e6e;\n}\n.mo-metric .mo-metric-value {\n color: #f2f2f7;\n}\n.mo-axis-div-label {\n color: #f2f2f7;\n}\n.mo-gauge-value {\n fill: #f2f2f7;\n}\n.mo-gauge-max-value {\n fill: #f2f2f7;\n}\n.mo-gauge-tick {\n stroke: #fff;\n}\n.mo-gauge-pointer {\n fill: #fff;\n}\n.mo-gauge-inner-bg-arc {\n fill: #1c1c1e;\n}\n.mo-gauge-back-arc {\n stroke: #2c2c2e;\n}\n}", map: undefined, media: undefined });
|
|
3182
|
+
inject("data-v-a99ac804_0", { source: "/* Colors\n========================================================================== */\n/* Typography\n========================================================================== */\n/* Border Radius\n========================================================================== */\n/* Table */\n/* Safe Area */\n.mo-chart {\n position: relative;\n width: 100%;\n height: 100%;\n font: 1rem sans-serif;\n text-align: center;\n}\n.mo-chart.x-scroll {\n overflow-x: scroll;\n}\n.mo-piece-active:active {\n opacity: 0.8;\n}\n.mo-inner-arc {\n fill: #000;\n opacity: 0.28;\n}\n.mo-inner-text {\n fill: #fff;\n font-size: 1.6rem;\n fill-opacity: 1;\n}\n.mo-summary-label {\n fill: #323233;\n font-size: 1.8rem;\n}\n.mo-summary-value {\n fill: #00A383;\n font-size: 1.8rem;\n}\n.mo-axis path {\n fill: none;\n stroke-width: 0;\n}\n.mo-space-line {\n stroke: #e4e7ed;\n stroke-width: 0.5px;\n}\n.mo-space-bold-line {\n stroke: #e4e5e9;\n stroke-width: 1px;\n}\n.mo-axis-point {\n fill: #abb4c7;\n}\n.mo-data-line {\n fill: none;\n stroke: #b8b8b8;\n stroke-width: 1.5px;\n}\n.mo-data-text {\n font-size: 1.4rem;\n fill: #3e3f41;\n}\n.mo-axis-text {\n font-size: 1.4rem;\n fill: #323233;\n}\n.mo-axis-label {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-axis-div-label {\n width: 100%;\n height: 20px;\n text-align: center;\n color: #3e4759;\n font-size: 1.4rem;\n clear: both;\n}\n.mo-legend-text {\n font-size: 1.4rem;\n fill: #3e4759;\n}\n.mo-legend-percentage {\n font-size: 1.6rem;\n}\n.mo-label-inner {\n text-anchor: middle;\n font-size: 1.4rem;\n fill: #fff;\n}\n.mo-gauge-back-arc {\n stroke-width: 6;\n stroke-linejoin: round;\n stroke: #f9f9f9;\n}\n.mo-gauge-value {\n font-size: 4rem;\n font-weight: 200;\n text-anchor: middle;\n fill: #323233;\n}\n.mo-gauge-max-value {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: middle;\n}\n.mo-gauge-value-arc {\n stroke-width: 6;\n stroke: url(#MoGaugeGradient);\n stroke-linejoin: round;\n}\n.mo-gauge-inner-arc {\n fill: #6e71ca;\n}\n.mo-gauge-tick {\n stroke: #323233;\n stroke-width: 0.5;\n}\n.mo-gauge-pointer {\n fill: #323233;\n}\n\n/* line */\n.mo-line-area {\n fill: url(#MoLineAreaGradient);\n stroke-width: 0;\n opacity: 0.6;\n}\n.mo-line-point {\n fill: #00A383;\n stroke: #fff;\n stroke-width: 1px;\n}\n\n/* rotate */\n.mo-tip-container {\n width: 100%;\n height: 40px;\n line-height: 40px;\n border-radius: 18px;\n border: 1px solid #c5c7c9;\n margin: -5px 0 10px 0;\n}\n.mo-tip-pointer {\n position: relative;\n top: -40px;\n width: 100%;\n}\n.mo-triangle-mark {\n position: relative;\n top: 22px;\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid white;\n}\n.mo-triangle {\n margin-right: auto;\n margin-left: auto;\n height: 20px;\n width: 20px;\n border: 10px solid transparent;\n border-bottom: 10px solid #c5c7c9;\n}\n.mo-tip-content {\n position: relative;\n text-align: center;\n font-size: 1.4rem;\n color: #3e4759;\n}\n.mo-tip-content:before {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #c5c7c9;\n position: absolute;\n top: -20px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content:after {\n width: 0px;\n height: 0px;\n border: 10px transparent solid;\n border-bottom-color: #fff;\n position: absolute;\n top: -18px;\n left: calc(50% - 10px);\n content: \"\";\n}\n.mo-tip-content .left-nav {\n width: 15%;\n float: left;\n}\n.mo-tip-content .left-nav img {\n -webkit-transform: rotate(180deg);\n -moz-transform: rotate(180deg);\n transform: rotate(180deg);\n margin-top: 10px;\n}\n.mo-tip-content .right-nav {\n width: 15%;\n float: right;\n}\n.mo-tip-content .right-nav img {\n margin-top: 10px;\n}\n.mo-tip-content .tip {\n width: 70%;\n max-width: 70%;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n float: left;\n}\n.mo-tip-content .tip .label {\n margin-left: 10px;\n}\n.mo-metric {\n width: 100%;\n height: 100%;\n color: #323233;\n}\n.mo-metric .mo-metric-inner {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n}\n.mo-metric .mo-metric-label, .mo-metric .mo-metric-value {\n width: 100%;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n}\n.mo-metric .mo-metric-label {\n padding-left: 5px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 2.4rem;\n}\n.mo-metric .mo-metric-value {\n padding-right: 5px;\n font-size: 7.3rem;\n}\n.mo-table {\n width: 100%;\n}\n.mo-table .mo-table-row {\n color: #323233;\n position: relative;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.header-row {\n background-color: #00A383;\n color: #fff;\n font-weight: 700;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell {\n position: relative;\n}\n.mo-table .mo-table-row.header-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #39a393;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row.header-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #c8cacc;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell {\n display: inline-block;\n font-size: 1.6rem;\n height: 44px;\n line-height: 44px;\n text-align: left;\n padding: 0 10px;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n position: relative;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #e3e5e8;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-table .mo-table-row .mo-table-cell .mo-table-cell-check, .mo-table .mo-table-row .mo-table-cell .mo-table-cell-uncheck {\n font-size: 2.2rem;\n position: relative;\n top: 10px;\n}\n.mo-table .mo-table-row .mo-table-right-cell {\n text-align: right;\n}\n.mo-table .mo-table-row .mo-table-checkbox-cell {\n width: 18px;\n margin-top: 13px;\n}\n.mo-label-line {\n stroke: #c8cacc;\n stroke-width: 0.5px;\n}\n.mo-label-title {\n font-size: 1.4rem;\n fill: #3e4759;\n text-anchor: start;\n}\n.mo-cover {\n width: calc(100% + 20px);\n}\n.mo-gauge-inner-bg-arc {\n fill: #fff;\n}\n@media (prefers-color-scheme: dark) {\n.mo-axis-label,\n .mo-axis-text,\n .mo-axis-number,\n .mo-axis-div-label,\n .mo-summary-label,\n .mo-legend-text,\n .mo-label-title {\n fill: #f2f2f7;\n}\n.mo-table .mo-table-row {\n color: #f2f2f7;\n}\n.mo-table .mo-table-row:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 50% 100%;\n left: 0;\n bottom: 0;\n height: 1px;\n width: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:after {\n transform: scaleY(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform: scaleY(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:after {\n transform-origin: 33% 66%;\n}\n.mo-table .mo-table-row:before {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #646466;\n display: block;\n z-index: 15;\n transform-origin: 0% 50%;\n left: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row:before {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row:before {\n transform-origin: 0% 33%;\n}\n.mo-table .mo-table-row.total-row {\n background-color: #2c2c2e;\n color: #f2f2f7;\n font-weight: 700;\n}\n.mo-table .mo-table-row .mo-table-cell:after {\n content: \"\";\n position: absolute;\n bottom: auto;\n right: auto;\n background-color: #444447;\n display: block;\n z-index: 15;\n transform-origin: 100% 50%;\n right: 0;\n top: 0;\n width: 1px;\n height: 100%;\n}\n.pixel-ratio-2 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.5);\n}\n.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform: scaleX(0.33);\n}\n.android.pixel-ratio-3 .mo-table .mo-table-row .mo-table-cell:after {\n transform-origin: 66% 33%;\n}\n.mo-tip-content .tip .label {\n color: #f2f2f7;\n}\n.mo-metric .mo-metric-label {\n color: #6e6e6e;\n}\n.mo-metric .mo-metric-value {\n color: #f2f2f7;\n}\n.mo-axis-div-label {\n color: #f2f2f7;\n}\n.mo-gauge-value {\n fill: #f2f2f7;\n}\n.mo-gauge-max-value {\n fill: #f2f2f7;\n}\n.mo-gauge-tick {\n stroke: #fff;\n}\n.mo-gauge-pointer {\n fill: #fff;\n}\n.mo-gauge-inner-bg-arc {\n fill: #1c1c1e;\n}\n.mo-gauge-back-arc {\n stroke: #2c2c2e;\n}\n}", map: undefined, media: undefined });
|
|
3034
3183
|
|
|
3035
3184
|
};
|
|
3036
3185
|
/* scoped */
|
|
@@ -4234,6 +4383,7 @@ var DashboardDataConvertor = /** @class */ (function (_super) {
|
|
|
4234
4383
|
newMetadata.header = metadata.header;
|
|
4235
4384
|
newMetadata.footer = metadata.footer;
|
|
4236
4385
|
newMetadata.title = metadata.title;
|
|
4386
|
+
newMetadata.combineSmallGroups = metadata.combineSmallGroups;
|
|
4237
4387
|
if (properties) {
|
|
4238
4388
|
if (properties.visualizationType === 'RichText') {
|
|
4239
4389
|
newMetadata.content = properties.content.richTextContent;
|
|
@@ -4771,9 +4921,10 @@ var ReportDataConvertor = /** @class */ (function (_super) {
|
|
|
4771
4921
|
showPercentages: false,
|
|
4772
4922
|
showTotal: false,
|
|
4773
4923
|
groupByType: '',
|
|
4924
|
+
combineSmallGroups: false,
|
|
4774
4925
|
};
|
|
4775
4926
|
}
|
|
4776
|
-
var groupings = chart.groupings, summaries = chart.summaries, summaryAxisLocations = chart.summaryAxisLocations, summaryVisualizationTypes = chart.summaryVisualizationTypes, chartType = chart.chartType, showChartPercentages = chart.showChartPercentages, showChartTotal = chart.showChartTotal;
|
|
4927
|
+
var groupings = chart.groupings, summaries = chart.summaries, summaryAxisLocations = chart.summaryAxisLocations, summaryVisualizationTypes = chart.summaryVisualizationTypes, chartType = chart.chartType, showChartPercentages = chart.showChartPercentages, showChartTotal = chart.showChartTotal, combineSmallGroups = chart.combineSmallGroups;
|
|
4777
4928
|
var groupingColumns = groupings.map(function (grouping) {
|
|
4778
4929
|
var _a = groupingColumnInfo[grouping], label = _a.label, dataType = _a.dataType;
|
|
4779
4930
|
return {
|
|
@@ -4810,6 +4961,7 @@ var ReportDataConvertor = /** @class */ (function (_super) {
|
|
|
4810
4961
|
chartType: chartType,
|
|
4811
4962
|
showPercentages: showChartPercentages,
|
|
4812
4963
|
showTotal: showChartTotal,
|
|
4964
|
+
combineSmallGroups: combineSmallGroups,
|
|
4813
4965
|
groupByType: this.getGroupType(chart.chartType),
|
|
4814
4966
|
plotOnSecondAxis: summaryAxisLocations.length > 1 && summaryAxisLocations[0] !== summaryAxisLocations[1],
|
|
4815
4967
|
plotAsLineChart: summaryVisualizationTypes.length > 1 && summaryVisualizationTypes[1] === 'Line',
|
|
@@ -5875,6 +6027,7 @@ var __vue_render__$b = function () {
|
|
|
5875
6027
|
"show-value": _vm.metadata.showValues,
|
|
5876
6028
|
"group-by": _vm.metadata.groupingColumns[0],
|
|
5877
6029
|
aggregate: _vm.metadata.aggregateColumns[0],
|
|
6030
|
+
"combine-small-groups": _vm.metadata.combineSmallGroups,
|
|
5878
6031
|
},
|
|
5879
6032
|
})
|
|
5880
6033
|
: _vm._e()
|
|
@@ -6294,6 +6447,7 @@ var __vue_render__$g = function () {
|
|
|
6294
6447
|
decimal: 2,
|
|
6295
6448
|
"group-by": _vm.metadata.groupingColumns[0],
|
|
6296
6449
|
aggregate: _vm.metadata.aggregateColumns[0],
|
|
6450
|
+
"combine-small-groups": _vm.metadata.combineSmallGroups,
|
|
6297
6451
|
area: _vm.area,
|
|
6298
6452
|
},
|
|
6299
6453
|
})
|