mdt-charts 1.29.0 → 1.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/config/config.d.ts +170 -178
- package/lib/designer/designerConfig.d.ts +59 -62
- package/lib/engine/block/block.d.ts +16 -22
- package/lib/engine/block/block.js +51 -51
- package/lib/engine/block/blockHelper.d.ts +6 -6
- package/lib/engine/block/blockHelper.js +16 -16
- package/lib/engine/block/blockHtml.d.ts +8 -8
- package/lib/engine/block/blockHtml.js +15 -15
- package/lib/engine/block/blockSvg.d.ts +20 -20
- package/lib/engine/block/blockSvg.js +66 -65
- package/lib/engine/block/defs/LinearGradientDef.d.ts +2 -2
- package/lib/engine/block/defs/LinearGradientDef.js +27 -27
- package/lib/engine/block/defs/hatchPattern.d.ts +4 -4
- package/lib/engine/block/defs/hatchPattern.js +9 -9
- package/lib/engine/colorReader/colorReader.d.ts +5 -5
- package/lib/engine/colorReader/colorReader.js +18 -18
- package/lib/engine/contentManager/contentManager.d.ts +7 -6
- package/lib/engine/contentManager/contentManager.js +15 -15
- package/lib/engine/contentManager/contentManagerFactory.d.ts +7 -7
- package/lib/engine/contentManager/contentManagerFactory.js +12 -12
- package/lib/engine/elementHighlighter/elementHighlighter.d.ts +22 -70
- package/lib/engine/elementHighlighter/elementHighlighter.js +181 -230
- package/lib/engine/elementHighlighter/selectHighlighter.d.ts +4 -29
- package/lib/engine/elementHighlighter/selectHighlighter.js +87 -189
- package/lib/engine/engine.d.ts +17 -17
- package/lib/engine/engine.js +62 -87
- package/lib/engine/features/aggregator/aggregator.d.ts +17 -24
- package/lib/engine/features/aggregator/aggregator.js +102 -113
- package/lib/engine/features/axis/axis.d.ts +9 -22
- package/lib/engine/features/axis/axis.js +150 -159
- package/lib/engine/features/axis/axisDomHelper.d.ts +2 -7
- package/lib/engine/features/axis/axisDomHelper.js +20 -19
- package/lib/engine/features/axis/axisHelper.d.ts +5 -9
- package/lib/engine/features/axis/axisHelper.js +33 -28
- package/lib/engine/features/axis/axisLabelDomHelper.d.ts +11 -26
- package/lib/engine/features/axis/axisLabelDomHelper.js +152 -156
- package/lib/engine/features/axis/axisLabelsEventManager.d.ts +2 -2
- package/lib/engine/features/axis/axisLabelsEventManager.js +32 -32
- package/lib/engine/features/embeddedLabels/embeddedLabels.d.ts +16 -51
- package/lib/engine/features/embeddedLabels/embeddedLabels.js +134 -234
- package/lib/engine/features/embeddedLabels/embeddedLabelsDomHelper.d.ts +2 -13
- package/lib/engine/features/embeddedLabels/embeddedLabelsDomHelper.js +23 -20
- package/lib/engine/features/embeddedLabels/embeddedLabelsHelper.d.ts +15 -32
- package/lib/engine/features/embeddedLabels/embeddedLabelsHelper.js +63 -56
- package/lib/engine/features/gridLine/gidLineHelper.d.ts +7 -13
- package/lib/engine/features/gridLine/gidLineHelper.js +49 -42
- package/lib/engine/features/gridLine/gridLine.d.ts +5 -19
- package/lib/engine/features/gridLine/gridLine.js +36 -35
- package/lib/engine/features/legend/legend.d.ts +28 -38
- package/lib/engine/features/legend/legend.js +92 -118
- package/lib/engine/features/legend/legendDomHelper.d.ts +6 -13
- package/lib/engine/features/legend/legendDomHelper.js +62 -63
- package/lib/engine/features/legend/legendEventsManager.d.ts +8 -13
- package/lib/engine/features/legend/legendEventsManager.js +47 -48
- package/lib/engine/features/legend/legendHelper.d.ts +14 -39
- package/lib/engine/features/legend/legendHelper.js +92 -98
- package/lib/engine/features/legend/legendHelperService.d.ts +6 -13
- package/lib/engine/features/legend/legendHelperService.js +25 -24
- package/lib/engine/features/legend/legendMarkerCreator.d.ts +9 -18
- package/lib/engine/features/legend/legendMarkerCreator.js +76 -79
- package/lib/engine/features/legend/legendWidthCalculator.d.ts +7 -7
- package/lib/engine/features/legend/legendWidthCalculator.js +122 -126
- package/lib/engine/features/markDots/markDot.d.ts +15 -42
- package/lib/engine/features/markDots/markDot.js +70 -101
- package/lib/engine/features/markDots/markDotsHelper.d.ts +1 -8
- package/lib/engine/features/markDots/markDotsHelper.js +12 -13
- package/lib/engine/features/recordOverflowAlert/recordOverflowAlertCore.d.ts +5 -23
- package/lib/engine/features/recordOverflowAlert/recordOverflowAlertCore.js +34 -42
- package/lib/engine/features/scale/scale.d.ts +12 -17
- package/lib/engine/features/scale/scale.js +69 -76
- package/lib/engine/features/tipBox/tipBox.d.ts +5 -9
- package/lib/engine/features/tipBox/tipBox.js +24 -24
- package/lib/engine/features/tipBox/tipBoxHelper.d.ts +9 -16
- package/lib/engine/features/tipBox/tipBoxHelper.js +45 -60
- package/lib/engine/features/title/title.d.ts +6 -6
- package/lib/engine/features/title/title.js +35 -34
- package/lib/engine/features/tolltip/newTooltip/newTooltip.d.ts +11 -15
- package/lib/engine/features/tolltip/newTooltip/newTooltip.js +21 -21
- package/lib/engine/features/tolltip/newTooltip/newTooltipService.d.ts +8 -13
- package/lib/engine/features/tolltip/newTooltip/newTooltipService.js +23 -26
- package/lib/engine/features/tolltip/tooltip.d.ts +11 -17
- package/lib/engine/features/tolltip/tooltip.js +142 -296
- package/lib/engine/features/tolltip/tooltipComponentsManager.d.ts +10 -21
- package/lib/engine/features/tolltip/tooltipComponentsManager.js +114 -113
- package/lib/engine/features/tolltip/tooltipDomHelper.d.ts +21 -43
- package/lib/engine/features/tolltip/tooltipDomHelper.js +120 -144
- package/lib/engine/features/tolltip/tooltipHelper.d.ts +9 -39
- package/lib/engine/features/tolltip/tooltipHelper.js +91 -114
- package/lib/engine/features/valueLabels/valueLabels.d.ts +38 -58
- package/lib/engine/features/valueLabels/valueLabels.js +170 -205
- package/lib/engine/features/valueLabels/valueLabelsHelper.d.ts +1 -7
- package/lib/engine/features/valueLabels/valueLabelsHelper.js +18 -23
- package/lib/engine/features/valueLabelsCollision/valueLabelsCollision.d.ts +15 -18
- package/lib/engine/features/valueLabelsCollision/valueLabelsCollision.js +47 -46
- package/lib/engine/features/valueLabelsCollision/valueLabelsCollisionHelper.d.ts +3 -6
- package/lib/engine/features/valueLabelsCollision/valueLabelsCollisionHelper.js +45 -49
- package/lib/engine/filterManager/filterEventManager.d.ts +30 -37
- package/lib/engine/filterManager/filterEventManager.js +131 -174
- package/lib/engine/helpers/domHelper.d.ts +20 -45
- package/lib/engine/helpers/domHelper.js +61 -62
- package/lib/engine/helpers/fontResizer/fontResizer.d.ts +10 -10
- package/lib/engine/helpers/fontResizer/fontResizer.js +16 -21
- package/lib/engine/helpers/fontResizer/fontResizerService.d.ts +1 -1
- package/lib/engine/helpers/fontResizer/fontResizerService.js +10 -9
- package/lib/engine/helpers/helper.d.ts +27 -27
- package/lib/engine/helpers/helper.js +92 -91
- package/lib/engine/helpers/namesHelper.d.ts +3 -3
- package/lib/engine/helpers/namesHelper.js +6 -6
- package/lib/engine/helpers/pipeline/Pipeline.d.ts +5 -5
- package/lib/engine/helpers/pipeline/Pipeline.js +33 -33
- package/lib/engine/polarNotation/donut/DonutHelper.d.ts +11 -25
- package/lib/engine/polarNotation/donut/DonutHelper.js +70 -71
- package/lib/engine/polarNotation/donut/donut.d.ts +23 -38
- package/lib/engine/polarNotation/donut/donut.js +99 -109
- package/lib/engine/polarNotation/polarManager.d.ts +6 -6
- package/lib/engine/polarNotation/polarManager.js +47 -67
- package/lib/engine/transitionManager.d.ts +14 -13
- package/lib/engine/transitionManager.js +49 -48
- package/lib/engine/twoDimensionalNotation/area/area.d.ts +28 -44
- package/lib/engine/twoDimensionalNotation/area/area.js +238 -272
- package/lib/engine/twoDimensionalNotation/area/areaGenerator.d.ts +5 -13
- package/lib/engine/twoDimensionalNotation/area/areaGenerator.js +13 -13
- package/lib/engine/twoDimensionalNotation/area/areaHelper.d.ts +4 -4
- package/lib/engine/twoDimensionalNotation/area/areaHelper.js +41 -57
- package/lib/engine/twoDimensionalNotation/bar/bar.d.ts +29 -54
- package/lib/engine/twoDimensionalNotation/bar/bar.js +224 -362
- package/lib/engine/twoDimensionalNotation/bar/barHelper.d.ts +32 -71
- package/lib/engine/twoDimensionalNotation/bar/barHelper.js +126 -162
- package/lib/engine/twoDimensionalNotation/bar/stackedData/dataStacker.d.ts +6 -6
- package/lib/engine/twoDimensionalNotation/bar/stackedData/dataStacker.js +24 -24
- package/lib/engine/twoDimensionalNotation/bar/stackedData/dataStackerService.d.ts +2 -2
- package/lib/engine/twoDimensionalNotation/bar/stackedData/dataStackerService.js +17 -16
- package/lib/engine/twoDimensionalNotation/dot/dotChart.d.ts +23 -23
- package/lib/engine/twoDimensionalNotation/dot/dotChart.js +114 -135
- package/lib/engine/twoDimensionalNotation/line/line.d.ts +16 -37
- package/lib/engine/twoDimensionalNotation/line/line.js +132 -162
- package/lib/engine/twoDimensionalNotation/line/lineBuilder.d.ts +11 -14
- package/lib/engine/twoDimensionalNotation/line/lineBuilder.js +48 -47
- package/lib/engine/twoDimensionalNotation/line/lineGenerator.d.ts +4 -4
- package/lib/engine/twoDimensionalNotation/line/lineGenerator.js +8 -8
- package/lib/engine/twoDimensionalNotation/line/lineHelper.d.ts +6 -12
- package/lib/engine/twoDimensionalNotation/line/lineHelper.js +60 -76
- package/lib/engine/twoDimensionalNotation/lineLike/generatorFactory/lineLikeGeneratorFactory.d.ts +6 -6
- package/lib/engine/twoDimensionalNotation/lineLike/generatorMiddleware/lineLikeGeneratorCurveMiddleware.d.ts +5 -5
- package/lib/engine/twoDimensionalNotation/lineLike/generatorMiddleware/lineLikeGeneratorCurveMiddleware.js +17 -16
- package/lib/engine/twoDimensionalNotation/lineLike/generatorMiddleware/lineLikeGeneratorDefineMiddleware.d.ts +10 -11
- package/lib/engine/twoDimensionalNotation/lineLike/generatorMiddleware/lineLikeGeneratorDefineMiddleware.js +7 -9
- package/lib/engine/twoDimensionalNotation/lineLike/generatorMiddleware/lineLikeGeneratorMiddleware.d.ts +1 -3
- package/lib/engine/twoDimensionalNotation/twoDimensionalManager.d.ts +10 -10
- package/lib/engine/twoDimensionalNotation/twoDimensionalManager.js +138 -253
- package/lib/engine/valueFormatter.d.ts +3 -3
- package/lib/engine/valueFormatter.js +6 -6
- package/lib/main.d.ts +79 -82
- package/lib/main.js +84 -79
- package/lib/model/EventEmitter.d.ts +8 -8
- package/lib/model/EventEmitter.js +24 -24
- package/lib/model/chartStyleModel/chartStyleModel.d.ts +5 -5
- package/lib/model/chartStyleModel/chartStyleModel.js +25 -27
- package/lib/model/chartStyleModel/colorRange.d.ts +3 -3
- package/lib/model/chartStyleModel/colorRange.js +24 -19
- package/lib/model/chartStyleModel/twoDimensionalChartStyleModel.d.ts +12 -22
- package/lib/model/chartStyleModel/twoDimensionalChartStyleModel.js +60 -69
- package/lib/model/configsValidator/configValidator.d.ts +1 -1
- package/lib/model/configsValidator/configValidator.js +4 -4
- package/lib/model/dataManagerModel/dataManagerModel.d.ts +26 -36
- package/lib/model/dataManagerModel/dataManagerModel.js +128 -179
- package/lib/model/dataManagerModel/dataManagerModelService.d.ts +2 -2
- package/lib/model/dataManagerModel/dataManagerModelService.js +26 -25
- package/lib/model/featuresModel/axisModel.d.ts +18 -69
- package/lib/model/featuresModel/axisModel.js +169 -224
- package/lib/model/featuresModel/axisModelService.d.ts +6 -10
- package/lib/model/featuresModel/axisModelService.js +27 -27
- package/lib/model/featuresModel/legendModel/legendCanvasModel.d.ts +11 -16
- package/lib/model/featuresModel/legendModel/legendCanvasModel.js +59 -55
- package/lib/model/featuresModel/legendModel/legendModel.d.ts +3 -7
- package/lib/model/featuresModel/legendModel/legendModel.js +41 -59
- package/lib/model/featuresModel/legendModel/polarMarginCalculator.d.ts +3 -8
- package/lib/model/featuresModel/legendModel/polarMarginCalculator.js +20 -18
- package/lib/model/featuresModel/legendModel/twoDimLegendModel.d.ts +4 -8
- package/lib/model/featuresModel/legendModel/twoDimLegendModel.js +27 -40
- package/lib/model/featuresModel/otherComponents.d.ts +4 -7
- package/lib/model/featuresModel/otherComponents.js +9 -9
- package/lib/model/featuresModel/recordOverflowModel/recordOverflowModel.d.ts +4 -0
- package/lib/model/featuresModel/recordOverflowModel/recordOverflowModel.js +33 -0
- package/lib/model/featuresModel/scaleModel/scaleAxisRecalcer.d.ts +6 -6
- package/lib/model/featuresModel/scaleModel/scaleAxisRecalcer.js +23 -27
- package/lib/model/featuresModel/scaleModel/scaleDomainService.d.ts +5 -19
- package/lib/model/featuresModel/scaleModel/scaleDomainService.js +55 -44
- package/lib/model/featuresModel/scaleModel/scaleModel.d.ts +10 -10
- package/lib/model/featuresModel/scaleModel/scaleModel.js +50 -61
- package/lib/model/featuresModel/scaleModel/scaleModelServices.js +22 -15
- package/lib/model/featuresModel/titleModel.d.ts +1 -1
- package/lib/model/featuresModel/titleModel.js +14 -14
- package/lib/model/featuresModel/tooltipModel.d.ts +1 -1
- package/lib/model/featuresModel/tooltipModel.js +5 -5
- package/lib/model/featuresModel/valueLabelsModel/valueLabelsModel.d.ts +11 -23
- package/lib/model/featuresModel/valueLabelsModel/valueLabelsModel.js +51 -53
- package/lib/model/helpers/modelHelper.d.ts +7 -7
- package/lib/model/helpers/modelHelper.js +42 -38
- package/lib/model/helpers/twoDimensionalModelHelper.d.ts +9 -37
- package/lib/model/helpers/twoDimensionalModelHelper.js +125 -147
- package/lib/model/helpers/unitsFromConfigReader.js +4 -4
- package/lib/model/helpers/unitsReader.d.ts +2 -2
- package/lib/model/helpers/unitsReader.js +13 -11
- package/lib/model/margin/marginModel.d.ts +7 -7
- package/lib/model/margin/marginModel.js +20 -23
- package/lib/model/margin/twoDim/twoDimMarginModel.d.ts +13 -13
- package/lib/model/margin/twoDim/twoDimMarginModel.js +113 -184
- package/lib/model/model.d.ts +281 -315
- package/lib/model/model.js +4 -4
- package/lib/model/modelBuilder.d.ts +18 -27
- package/lib/model/modelBuilder.js +79 -85
- package/lib/model/modelInstance/canvasModel/canvasModel.d.ts +17 -17
- package/lib/model/modelInstance/canvasModel/canvasModel.js +43 -42
- package/lib/model/modelInstance/canvasModel/canvasSizesModel/canvasMarginModel.d.ts +7 -7
- package/lib/model/modelInstance/canvasModel/canvasSizesModel/canvasSizeModel.d.ts +2 -2
- package/lib/model/modelInstance/canvasModel/canvasSizesModel/marginModelService.d.ts +6 -6
- package/lib/model/modelInstance/canvasModel/canvasSizesModel/marginModelService.js +24 -24
- package/lib/model/modelInstance/canvasModel/legendCanvasModel.d.ts +4 -4
- package/lib/model/modelInstance/canvasModel/legendCanvasModel.js +11 -11
- package/lib/model/modelInstance/canvasModel/titleCanvas.d.ts +4 -4
- package/lib/model/modelInstance/canvasModel/titleCanvas.js +9 -9
- package/lib/model/modelInstance/chartBlockVersion/chartBlockVersion.d.ts +3 -3
- package/lib/model/modelInstance/chartBlockVersion/chartBlockVersion.js +6 -6
- package/lib/model/modelInstance/configReader.d.ts +23 -32
- package/lib/model/modelInstance/configReader.js +94 -125
- package/lib/model/modelInstance/dataModel/dataModel.d.ts +10 -10
- package/lib/model/modelInstance/dataModel/dataModel.js +25 -25
- package/lib/model/modelInstance/dataModel/dataRepository.d.ts +14 -14
- package/lib/model/modelInstance/dataModel/dataRepository.js +42 -42
- package/lib/model/modelInstance/modelInstance.d.ts +6 -11
- package/lib/model/modelInstance/modelInstance.js +16 -16
- package/lib/model/modelInstance/titleConfigReader.d.ts +8 -8
- package/lib/model/modelInstance/titleConfigReader.js +30 -37
- package/lib/model/notations/polar/donut/donutAggregatorService.d.ts +6 -9
- package/lib/model/notations/polar/donut/donutAggregatorService.js +37 -40
- package/lib/model/notations/polar/donut/donutModel.d.ts +5 -9
- package/lib/model/notations/polar/donut/donutModel.js +28 -28
- package/lib/model/notations/polar/donut/donutThicknessService.d.ts +3 -3
- package/lib/model/notations/polar/donut/donutThicknessService.js +15 -13
- package/lib/model/notations/polar/polarModel.d.ts +7 -18
- package/lib/model/notations/polar/polarModel.js +72 -79
- package/lib/model/notations/twoDimensional/styles.d.ts +7 -44
- package/lib/model/notations/twoDimensional/styles.js +125 -234
- package/lib/model/notations/twoDimensionalModel.d.ts +13 -23
- package/lib/model/notations/twoDimensionalModel.js +170 -330
- package/lib/optionsServices/publicOptionsService.d.ts +1 -1
- package/lib/optionsServices/publicOptionsService.js +4 -4
- package/lib/optionsServices/validators/sizeValidator.d.ts +2 -2
- package/lib/optionsServices/validators/sizeValidator.js +11 -10
- package/lib/style/charts-main.css +151 -150
- package/lib/style/charts-main.less +151 -150
- package/package.json +5 -5
- package/lib/engine/polarNotation/extenders/polarRecordOverflowAlert.d.ts +0 -15
- package/lib/engine/polarNotation/extenders/polarRecordOverflowAlert.js +0 -40
- package/lib/engine/twoDimensionalNotation/extenders/twoDimRecordOverflowAlert.d.ts +0 -15
- package/lib/engine/twoDimensionalNotation/extenders/twoDimRecordOverflowAlert.js +0 -32
|
@@ -2,68 +2,67 @@ import { MarkDot } from "../features/markDots/markDot";
|
|
|
2
2
|
import { Bar } from "../twoDimensionalNotation/bar/bar";
|
|
3
3
|
export var SelectionCondition;
|
|
4
4
|
(function (SelectionCondition) {
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
SelectionCondition[SelectionCondition["Include"] = 0] = "Include";
|
|
6
|
+
SelectionCondition[SelectionCondition["Exclude"] = 1] = "Exclude";
|
|
7
7
|
})(SelectionCondition || (SelectionCondition = {}));
|
|
8
8
|
export class DomHelper {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
}
|
|
9
|
+
static setCssClasses(elem, cssClasses) {
|
|
10
|
+
cssClasses.forEach((cssClass) => {
|
|
11
|
+
elem.classed(cssClass, true);
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
static get2DChartElements(block, chart) {
|
|
15
|
+
if (chart.type === "line" || chart.type === "area")
|
|
16
|
+
return MarkDot.getMarkDotForChart(block, chart.cssClasses);
|
|
17
|
+
else
|
|
18
|
+
return Bar.get().getAllBarsForChart(block, chart.cssClasses);
|
|
19
|
+
}
|
|
20
|
+
static getCssPropertyValue(node, propertyName) {
|
|
21
|
+
return window.getComputedStyle(node).getPropertyValue(propertyName);
|
|
22
|
+
}
|
|
23
|
+
static getSelectionNumericAttr(selection, attrName) {
|
|
24
|
+
return parseFloat(selection.attr(attrName));
|
|
25
|
+
}
|
|
26
|
+
static setChartStyle(elements, chartStyle, fieldIndex, styleType) {
|
|
27
|
+
this.setChartElementColor(elements, chartStyle.elementColors, fieldIndex, styleType);
|
|
28
|
+
this.setChartOpacity(elements, chartStyle.opacity);
|
|
29
|
+
}
|
|
30
|
+
static setChartElementColor(elements, colorPalette, fieldIndex, styleType) {
|
|
31
|
+
elements.style(styleType, colorPalette[fieldIndex % colorPalette.length]);
|
|
32
|
+
}
|
|
33
|
+
static cropSvgLabels(labelBlocks, maxWidth) {
|
|
34
|
+
labelBlocks.nodes().forEach((node) => {
|
|
35
|
+
if (node.getBBox().width > maxWidth) {
|
|
36
|
+
const text = node.textContent;
|
|
37
|
+
let textLength = text.length;
|
|
38
|
+
while (node.getBBox().width > maxWidth && textLength > 0) {
|
|
39
|
+
node.textContent = text.substring(0, --textLength) + "...";
|
|
40
|
+
}
|
|
41
|
+
if (textLength === 0)
|
|
42
|
+
node.textContent = "";
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Возвращает выборку элементов, ключи которых содержатся или НЕ содержатся в переданном массиве
|
|
48
|
+
* @param initialSelection Изначальная выборка
|
|
49
|
+
* @param dataWrapped Содержаться ли данные в обертке .data
|
|
50
|
+
* @param keyFieldName название поля ключей
|
|
51
|
+
* @param keyValues значения ключей
|
|
52
|
+
* @param condition включать или исключать элменты по ключам
|
|
53
|
+
* @returns Выборка по ключам
|
|
54
|
+
*/
|
|
55
|
+
static getChartElementsByKeys(initialSelection, dataWrapped, keyFieldName, keyValues, condition = SelectionCondition.Include) {
|
|
56
|
+
return initialSelection.filter((d) => {
|
|
57
|
+
let i;
|
|
58
|
+
if (dataWrapped)
|
|
59
|
+
i = keyValues.findIndex((kv) => kv === d.data[keyFieldName]);
|
|
60
|
+
else
|
|
61
|
+
i = keyValues.findIndex((kv) => kv === d[keyFieldName]);
|
|
62
|
+
return condition === SelectionCondition.Exclude ? i === -1 : i !== -1;
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
static setChartOpacity(elements, opacity) {
|
|
66
|
+
elements.attr("opacity", opacity);
|
|
67
|
+
}
|
|
69
68
|
}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
export interface ResizingOptions {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
elWrapper: HTMLElement;
|
|
3
|
+
unit: "px" | "em";
|
|
4
|
+
smallestFontSize: number;
|
|
5
|
+
step?: number;
|
|
6
6
|
}
|
|
7
7
|
export declare const FontResizer: {
|
|
8
|
-
|
|
8
|
+
setSize(el: HTMLElement, options: ResizingOptions): void;
|
|
9
9
|
};
|
|
10
10
|
export declare class ResizedElement {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
private el;
|
|
12
|
+
constructor(el: HTMLElement);
|
|
13
|
+
setStyle(style: string, value: string): void;
|
|
14
|
+
getSizeStyleInNum(style: string): number;
|
|
15
|
+
getWidth(): number;
|
|
16
16
|
}
|
|
@@ -1,26 +1,21 @@
|
|
|
1
1
|
import { resizeFont } from "./fontResizerService";
|
|
2
2
|
export const FontResizer = new (class {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
Object.assign(Object.assign({}, options), {
|
|
8
|
-
elWrapper: new ResizedElement(options.elWrapper)
|
|
9
|
-
})
|
|
10
|
-
);
|
|
11
|
-
}
|
|
3
|
+
setSize(el, options) {
|
|
4
|
+
const wrappedEl = new ResizedElement(el);
|
|
5
|
+
resizeFont(wrappedEl, Object.assign(Object.assign({}, options), { elWrapper: new ResizedElement(options.elWrapper) }));
|
|
6
|
+
}
|
|
12
7
|
})();
|
|
13
8
|
export class ResizedElement {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
9
|
+
constructor(el) {
|
|
10
|
+
this.el = el;
|
|
11
|
+
}
|
|
12
|
+
setStyle(style, value) {
|
|
13
|
+
this.el.style[style] = value;
|
|
14
|
+
}
|
|
15
|
+
getSizeStyleInNum(style) {
|
|
16
|
+
return parseFloat(this.el.style[style]);
|
|
17
|
+
}
|
|
18
|
+
getWidth() {
|
|
19
|
+
return this.el.getBoundingClientRect().width;
|
|
20
|
+
}
|
|
26
21
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ResizedElement, ResizingOptions } from "./fontResizer";
|
|
2
2
|
interface ResizerServiceOptions extends Omit<ResizingOptions, "elWrapper"> {
|
|
3
|
-
|
|
3
|
+
elWrapper: ResizedElement;
|
|
4
4
|
}
|
|
5
5
|
export declare function resizeFont(el: ResizedElement, options: ResizerServiceOptions): void;
|
|
6
6
|
export {};
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
export function resizeFont(el, options) {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
2
|
+
const wrapper = options.elWrapper;
|
|
3
|
+
if (el.getWidth() <= wrapper.getWidth())
|
|
4
|
+
return;
|
|
5
|
+
let fontSize = el.getSizeStyleInNum("font-size");
|
|
6
|
+
const { smallestFontSize: minSize, step, unit } = options;
|
|
7
|
+
const wrapperWidth = wrapper.getWidth();
|
|
8
|
+
while (el.getWidth() > wrapperWidth && fontSize > minSize) {
|
|
9
|
+
fontSize -= step;
|
|
10
|
+
el.setStyle("font-size", `${fontSize}${unit}`);
|
|
11
|
+
}
|
|
11
12
|
}
|
|
@@ -1,30 +1,30 @@
|
|
|
1
1
|
import { MdtChartsDataRow, MdtChartsDataSource } from "../../config/config";
|
|
2
2
|
export declare class Helper {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
3
|
+
static getRowsByKeys(keys: string[], keyFieldName: string, dataSet: MdtChartsDataRow[]): MdtChartsDataRow[];
|
|
4
|
+
static getKeysByIds(ids: number[], keyFieldName: string, dataSet: MdtChartsDataRow[]): string[];
|
|
5
|
+
static extractKeysFromRows(keyFieldName: string, dataSet: MdtChartsDataRow[]): string[];
|
|
6
|
+
static getRowsByIds(ids: number[], dataSet: MdtChartsDataRow[]): MdtChartsDataRow[];
|
|
7
|
+
static getCssClassesLine(cssClasses: string[]): string;
|
|
8
|
+
static getCssClassesArray(cssClass: string): string[];
|
|
9
|
+
static getCssClassesWithElementIndex(cssClasses: string[], index: number): string[];
|
|
10
|
+
static getRgbaFromRgb(rgbValue: string, opacity: number): string;
|
|
11
|
+
static getTranslateNumbers(transformValue: string): [number, number];
|
|
12
|
+
static getSumOfNumeric(numbers: number[]): number;
|
|
13
|
+
static parseFormattedToNumber(value: string, rankSpliter: string): number;
|
|
14
|
+
static calcDigitsAfterDot(value: number): number;
|
|
15
|
+
static checkDomainsEquality(oldDomain: string[], newDomain: string[]): boolean;
|
|
16
|
+
static getValueOrZero(value: number): number;
|
|
17
|
+
static getPXValueFromString(propertyValue: string): number;
|
|
18
|
+
/**
|
|
19
|
+
* Возвращает значение ключа в зависимости от того, обернуты ли данные
|
|
20
|
+
* @param row
|
|
21
|
+
* @param keyFieldName
|
|
22
|
+
* @param isSegmented
|
|
23
|
+
* @returns
|
|
24
|
+
*/
|
|
25
|
+
static getKeyFieldValue(row: MdtChartsDataRow, keyFieldName: string, isSegmented: boolean): string;
|
|
26
|
+
/**
|
|
27
|
+
* Сравнивает старые и новые данные
|
|
28
|
+
*/
|
|
29
|
+
static compareData(oldSource: MdtChartsDataSource, newSource: MdtChartsDataSource, sourceName: string): boolean;
|
|
30
30
|
}
|
|
@@ -1,93 +1,94 @@
|
|
|
1
1
|
export class Helper {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
2
|
+
static getRowsByKeys(keys, keyFieldName, dataSet) {
|
|
3
|
+
return dataSet.filter((row) => keys.findIndex((key) => key === row[keyFieldName]) !== -1);
|
|
4
|
+
}
|
|
5
|
+
static getKeysByIds(ids, keyFieldName, dataSet) {
|
|
6
|
+
return this.extractKeysFromRows(keyFieldName, this.getRowsByIds(ids, dataSet));
|
|
7
|
+
}
|
|
8
|
+
static extractKeysFromRows(keyFieldName, dataSet) {
|
|
9
|
+
return dataSet.map((row) => row[keyFieldName]);
|
|
10
|
+
}
|
|
11
|
+
static getRowsByIds(ids, dataSet) {
|
|
12
|
+
return dataSet.filter((row) => ids.findIndex((id) => id === row.$id) !== -1);
|
|
13
|
+
}
|
|
14
|
+
static getCssClassesLine(cssClasses) {
|
|
15
|
+
return "." + cssClasses.join(".");
|
|
16
|
+
}
|
|
17
|
+
static getCssClassesArray(cssClass) {
|
|
18
|
+
return cssClass.split(" ");
|
|
19
|
+
}
|
|
20
|
+
static getCssClassesWithElementIndex(cssClasses, index) {
|
|
21
|
+
return cssClasses.concat([`chart-element-${index}`]);
|
|
22
|
+
}
|
|
23
|
+
static getRgbaFromRgb(rgbValue, opacity) {
|
|
24
|
+
const rgbNumbers = rgbValue.substring(3, rgbValue.length - 1);
|
|
25
|
+
return `rgba${rgbNumbers}, ${opacity})`;
|
|
26
|
+
}
|
|
27
|
+
static getTranslateNumbers(transformValue) {
|
|
28
|
+
if (!transformValue)
|
|
29
|
+
return [0, 0];
|
|
30
|
+
const translateNumbers = transformValue.substring(10, transformValue.length - 1).split(", ");
|
|
31
|
+
const translateX = parseFloat(translateNumbers[0]);
|
|
32
|
+
const translateY = parseFloat(translateNumbers[1]);
|
|
33
|
+
return [translateX, translateY];
|
|
34
|
+
}
|
|
35
|
+
static getSumOfNumeric(numbers) {
|
|
36
|
+
return numbers.reduce((acc, value) => acc + value, 0);
|
|
37
|
+
}
|
|
38
|
+
static parseFormattedToNumber(value, rankSpliter) {
|
|
39
|
+
return parseFloat(value.replace(rankSpliter, ".").split(/\s/).join(""));
|
|
40
|
+
}
|
|
41
|
+
static calcDigitsAfterDot(value) {
|
|
42
|
+
const valueInString = value.toString();
|
|
43
|
+
const dotIndex = valueInString.lastIndexOf(".") === -1 ? valueInString.length : valueInString.lastIndexOf(".") + 1;
|
|
44
|
+
return valueInString.substring(dotIndex).length;
|
|
45
|
+
}
|
|
46
|
+
static checkDomainsEquality(oldDomain, newDomain) {
|
|
47
|
+
if (oldDomain.length !== newDomain.length)
|
|
48
|
+
return false;
|
|
49
|
+
let isEqual = true;
|
|
50
|
+
oldDomain.forEach((keyValue, index) => {
|
|
51
|
+
if (keyValue !== newDomain[index])
|
|
52
|
+
isEqual = false;
|
|
53
|
+
});
|
|
54
|
+
return isEqual;
|
|
55
|
+
}
|
|
56
|
+
static getValueOrZero(value) {
|
|
57
|
+
return Math.max(value, 0);
|
|
58
|
+
}
|
|
59
|
+
static getPXValueFromString(propertyValue) {
|
|
60
|
+
return parseFloat(propertyValue);
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Возвращает значение ключа в зависимости от того, обернуты ли данные
|
|
64
|
+
* @param row
|
|
65
|
+
* @param keyFieldName
|
|
66
|
+
* @param isSegmented
|
|
67
|
+
* @returns
|
|
68
|
+
*/
|
|
69
|
+
static getKeyFieldValue(row, keyFieldName, isSegmented) {
|
|
70
|
+
return isSegmented ? row.data[keyFieldName] : row[keyFieldName];
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Сравнивает старые и новые данные
|
|
74
|
+
*/
|
|
75
|
+
static compareData(oldSource, newSource, sourceName) {
|
|
76
|
+
if (!oldSource ||
|
|
77
|
+
!newSource ||
|
|
78
|
+
!sourceName ||
|
|
79
|
+
!oldSource[sourceName] ||
|
|
80
|
+
!newSource[sourceName] ||
|
|
81
|
+
oldSource[sourceName].length !== newSource[sourceName].length)
|
|
82
|
+
return false;
|
|
83
|
+
const oldData = oldSource[sourceName];
|
|
84
|
+
const newData = newSource[sourceName];
|
|
85
|
+
let isEqual = true;
|
|
86
|
+
oldData.forEach((row, i) => {
|
|
87
|
+
for (let key in row) {
|
|
88
|
+
if (row[key] !== newData[i][key] && isEqual)
|
|
89
|
+
isEqual = false;
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
return isEqual;
|
|
93
|
+
}
|
|
93
94
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export declare class NamesHelper {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
private static prefix;
|
|
3
|
+
static getClassName(classOfElem: string): string;
|
|
4
|
+
static getId(idName: string, blockId: number): string;
|
|
5
5
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export class NamesHelper {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
static getClassName(classOfElem) {
|
|
3
|
+
return this.prefix + classOfElem;
|
|
4
|
+
}
|
|
5
|
+
static getId(idName, blockId) {
|
|
6
|
+
return this.prefix + idName + "-" + blockId;
|
|
7
|
+
}
|
|
8
8
|
}
|
|
9
9
|
NamesHelper.prefix = "mdt-charts-";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
declare type Middleware<D, M> = (args: D, meta?: M) => D | undefined;
|
|
2
2
|
export declare class Pipeline<D = any, M = any> {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
3
|
+
private middlewaresStorage;
|
|
4
|
+
constructor(middlewares?: Middleware<D, M>[]);
|
|
5
|
+
push(middleware: Middleware<D, M>): () => void;
|
|
6
|
+
remove(middleware: Middleware<D, M>): void;
|
|
7
|
+
execute<CurrentArgs extends D = D>(args: CurrentArgs, meta?: M): CurrentArgs;
|
|
8
8
|
}
|
|
9
9
|
export {};
|
|
@@ -1,37 +1,37 @@
|
|
|
1
1
|
export class Pipeline {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
2
|
+
constructor(middlewares) {
|
|
3
|
+
this.middlewaresStorage = new PipelineMiddlewaresStorage(middlewares);
|
|
4
|
+
}
|
|
5
|
+
push(middleware) {
|
|
6
|
+
return this.middlewaresStorage.push(middleware);
|
|
7
|
+
}
|
|
8
|
+
remove(middleware) {
|
|
9
|
+
this.middlewaresStorage.remove(middleware);
|
|
10
|
+
}
|
|
11
|
+
execute(args, meta) {
|
|
12
|
+
const process = (args, middlewares) => {
|
|
13
|
+
const current = middlewares[0];
|
|
14
|
+
if (!current) {
|
|
15
|
+
return args;
|
|
16
|
+
}
|
|
17
|
+
const replaceArgs = current(args, meta);
|
|
18
|
+
return process(replaceArgs === undefined ? args : replaceArgs, middlewares.slice(1));
|
|
19
|
+
};
|
|
20
|
+
return process(args, this.middlewaresStorage.getList());
|
|
21
|
+
}
|
|
22
22
|
}
|
|
23
23
|
class PipelineMiddlewaresStorage {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
24
|
+
constructor(middlewares) {
|
|
25
|
+
this.middlewares = middlewares || [];
|
|
26
|
+
}
|
|
27
|
+
push(middleware) {
|
|
28
|
+
this.middlewares.push(middleware);
|
|
29
|
+
return () => this.remove(middleware);
|
|
30
|
+
}
|
|
31
|
+
remove(middleware) {
|
|
32
|
+
this.middlewares = this.middlewares.filter((cur) => cur != middleware);
|
|
33
|
+
}
|
|
34
|
+
getList() {
|
|
35
|
+
return this.middlewares;
|
|
36
|
+
}
|
|
37
37
|
}
|
|
@@ -3,29 +3,15 @@ import { MdtChartsDataRow, Size, MdtChartsColorField } from "../../../config/con
|
|
|
3
3
|
import { BlockMargin, DonutChartSettings } from "../../../model/model";
|
|
4
4
|
import { Translate } from "./donut";
|
|
5
5
|
export declare class DonutHelper {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
): Arc<any, PieArcDatum<MdtChartsDataRow>>;
|
|
18
|
-
static getOuterRadius(margin: BlockMargin, blockSize: Size): number;
|
|
19
|
-
static getInnerRadius(outerRadius: number, thickness: number): number;
|
|
20
|
-
static getTranslate(margin: BlockMargin, blockSize: Size): Translate;
|
|
21
|
-
static getArcGenerator(outerRadius: number, innerRadius: number): Arc<any, PieArcDatum<MdtChartsDataRow>>;
|
|
22
|
-
static getPieGenerator(valueField: string, padAngle: number): Pie<any, MdtChartsDataRow>;
|
|
23
|
-
static mergeDataWithZeros(
|
|
24
|
-
firstDataset: MdtChartsDataRow[],
|
|
25
|
-
secondDataset: MdtChartsDataRow[],
|
|
26
|
-
keyField: string,
|
|
27
|
-
colorField: MdtChartsColorField
|
|
28
|
-
): MdtChartsDataRow[];
|
|
29
|
-
private static getThicknessByUnit;
|
|
30
|
-
private static getChartBlockSize;
|
|
6
|
+
static getThickness(donutSettings: DonutChartSettings, blockSize: Size, margin: BlockMargin): number;
|
|
7
|
+
static getArcCentroid(blockSize: Size, margin: BlockMargin, dataItem: PieArcDatum<MdtChartsDataRow>, donutThickness: number): [number, number];
|
|
8
|
+
static getArcGeneratorObject(blockSize: Size, margin: BlockMargin, donutThickness: number): Arc<any, PieArcDatum<MdtChartsDataRow>>;
|
|
9
|
+
static getOuterRadius(margin: BlockMargin, blockSize: Size): number;
|
|
10
|
+
static getInnerRadius(outerRadius: number, thickness: number): number;
|
|
11
|
+
static getTranslate(margin: BlockMargin, blockSize: Size): Translate;
|
|
12
|
+
static getArcGenerator(outerRadius: number, innerRadius: number): Arc<any, PieArcDatum<MdtChartsDataRow>>;
|
|
13
|
+
static getPieGenerator(valueField: string, padAngle: number): Pie<any, MdtChartsDataRow>;
|
|
14
|
+
static mergeDataWithZeros(firstDataset: MdtChartsDataRow[], secondDataset: MdtChartsDataRow[], keyField: string, colorField: MdtChartsColorField): MdtChartsDataRow[];
|
|
15
|
+
private static getThicknessByUnit;
|
|
16
|
+
private static getChartBlockSize;
|
|
31
17
|
}
|