@evergis/react 3.1.39 → 3.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/components/Dashboard/containers/ChartContainer/types.d.ts +2 -0
- package/dist/components/Dashboard/hooks/useExportPdf.d.ts +1 -1
- package/dist/components/Dashboard/types.d.ts +2 -0
- package/dist/components/Dashboard/utils/getRootElementId.d.ts +2 -0
- package/dist/components/Dashboard/utils/index.d.ts +2 -0
- package/dist/index.js +125 -130
- package/dist/index.js.map +1 -1
- package/dist/react.esm.js +124 -131
- package/dist/react.esm.js.map +1 -1
- package/package.json +3 -3
|
@@ -19,6 +19,7 @@ export interface ConfigRelatedDataSource {
|
|
|
19
19
|
dataSourceName: string;
|
|
20
20
|
attributeName: string;
|
|
21
21
|
attributeTitle: string;
|
|
22
|
+
attributeUnits?: string;
|
|
22
23
|
attributeColor?: string;
|
|
23
24
|
alias?: string;
|
|
24
25
|
chartAxis?: string;
|
|
@@ -46,6 +47,7 @@ export interface ConfigOptions {
|
|
|
46
47
|
label?: string;
|
|
47
48
|
withPadding?: boolean;
|
|
48
49
|
withDivider?: boolean;
|
|
50
|
+
dotSnapping?: boolean;
|
|
49
51
|
tagView?: boolean;
|
|
50
52
|
simple?: boolean;
|
|
51
53
|
separator?: string;
|
|
@@ -14,6 +14,7 @@ export * from './formatElementValue';
|
|
|
14
14
|
export * from './getAttributeByName';
|
|
15
15
|
export * from './getAttributesConfiguration';
|
|
16
16
|
export * from './getAttributeValue';
|
|
17
|
+
export * from './getChartAxes';
|
|
17
18
|
export * from './getChartFilterName';
|
|
18
19
|
export * from './getChartMarkers';
|
|
19
20
|
export * from './getConfigFilter';
|
|
@@ -44,6 +45,7 @@ export * from './getSlideshowImages';
|
|
|
44
45
|
export * from './getSvgUrl';
|
|
45
46
|
export * from './getTotalFromAttributes';
|
|
46
47
|
export * from './getTotalFromRelatedFeatures';
|
|
48
|
+
export * from './getRootElementId';
|
|
47
49
|
export * from './isEmptyElementValue';
|
|
48
50
|
export * from './isEmptyValue';
|
|
49
51
|
export * from './isHiddenEmptyValue';
|
package/dist/index.js
CHANGED
|
@@ -14,10 +14,10 @@ var enUS = require('date-fns/locale/en-US');
|
|
|
14
14
|
var lodash = require('lodash');
|
|
15
15
|
var signalr = require('@microsoft/signalr');
|
|
16
16
|
var findAnd = require('find-and');
|
|
17
|
-
var MapboxDraw = require('@mapbox/mapbox-gl-draw');
|
|
18
|
-
var turf = require('@turf/turf');
|
|
19
17
|
var jspdf = require('jspdf');
|
|
20
18
|
var html2canvas = require('html2canvas');
|
|
19
|
+
var MapboxDraw = require('@mapbox/mapbox-gl-draw');
|
|
20
|
+
var turf = require('@turf/turf');
|
|
21
21
|
var MapGL = require('react-map-gl/mapbox');
|
|
22
22
|
require('@mapbox/mapbox-gl-draw/dist/mapbox-gl-draw.css');
|
|
23
23
|
require('mapbox-gl/dist/mapbox-gl.css');
|
|
@@ -5414,6 +5414,8 @@ const getAttributeValue = (element, attributes) => {
|
|
|
5414
5414
|
return maxLength && maxLength < value.length ? (jsxRuntime.jsx(TextTrim, { maxLength: maxLength, expandable: expandable, lineBreak: lineBreak, children: value })) : (value);
|
|
5415
5415
|
};
|
|
5416
5416
|
|
|
5417
|
+
const getChartAxes = (chartElement) => chartElement?.options?.relatedDataSources?.filter(({ chartAxis }) => chartAxis === "y");
|
|
5418
|
+
|
|
5417
5419
|
const getChartFilterName = (relatedDataSources) => {
|
|
5418
5420
|
const relatedAttributes = relatedDataSources || [];
|
|
5419
5421
|
const axes = relatedAttributes.filter(({ chartAxis }) => chartAxis === "y");
|
|
@@ -6007,7 +6009,7 @@ const PagesContainer = React.memo(({ type = exports.WidgetType.Dashboard, noBord
|
|
|
6007
6009
|
setSelectedTabId,
|
|
6008
6010
|
type,
|
|
6009
6011
|
]);
|
|
6010
|
-
return (jsxRuntime.
|
|
6012
|
+
return (jsxRuntime.jsx(Container, { id: getRootElementId(type), style: { width }, isMain: true, isColumn: isColumn, noBorders: noBorders, children: jsxRuntime.jsx(ContainerChildren, { items: filteredChildren, isMain: true, renderElement: renderElement }) }));
|
|
6011
6013
|
});
|
|
6012
6014
|
|
|
6013
6015
|
const TwoColumnsInnerContainer = React.memo(({ renderElement }) => {
|
|
@@ -6575,10 +6577,12 @@ const LayersContainer = React.memo(({ type, elementConfig, renderElement }) => {
|
|
|
6575
6577
|
return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(ExpandableTitle, { elementConfig: elementConfig, type: type, renderElement: renderElement }), isVisible && (jsxRuntime.jsx(LayersContainerWrapper, { style: style, children: jsxRuntime.jsx(LayerTree, { layers: layers, onlyMainTools: true }) }))] }));
|
|
6576
6578
|
});
|
|
6577
6579
|
|
|
6578
|
-
const ExportPdfContainer = React.memo(({ elementConfig }) => {
|
|
6579
|
-
const {
|
|
6580
|
-
const {
|
|
6581
|
-
|
|
6580
|
+
const ExportPdfContainer = React.memo(({ type, elementConfig }) => {
|
|
6581
|
+
const { t } = useGlobalContext();
|
|
6582
|
+
const { loading, onExport } = useExportPdf(getRootElementId(type));
|
|
6583
|
+
const { style, options } = elementConfig || {};
|
|
6584
|
+
const { icon, title } = options || {};
|
|
6585
|
+
return (jsxRuntime.jsx(Container, { children: jsxRuntime.jsx(uilibGl.IconButton, { kind: icon || "download", primary: true, disabled: loading, style: style, onClick: onExport, children: title ?? t("downloadPdf", { ns: "dashboard", defaultValue: "Скачать PDF" }) }) }));
|
|
6582
6586
|
});
|
|
6583
6587
|
|
|
6584
6588
|
const containerComponents = {
|
|
@@ -7430,8 +7434,6 @@ const ElementImage = React.memo(({ type, elementConfig }) => {
|
|
|
7430
7434
|
return firstImage ? jsxRuntime.jsx("img", { src: firstImage, alt: firstImage, width: width }) : null;
|
|
7431
7435
|
});
|
|
7432
7436
|
|
|
7433
|
-
const getChartAxes = (chartElement) => chartElement?.options?.relatedDataSources?.filter(({ chartAxis }) => chartAxis === "y");
|
|
7434
|
-
|
|
7435
7437
|
const ElementLegend = React.memo(({ type, element, elementConfig, expandedContainers }) => {
|
|
7436
7438
|
const { attributes, dataSources } = useWidgetContext(type);
|
|
7437
7439
|
const { options } = elementConfig || {};
|
|
@@ -8642,6 +8644,8 @@ const getTotalFromRelatedFeatures = (data) => {
|
|
|
8642
8644
|
return data?.reduce((result, { value }) => result + Number(value), 0)?.toFixed(0) || "";
|
|
8643
8645
|
};
|
|
8644
8646
|
|
|
8647
|
+
const getRootElementId = (type = exports.WidgetType.Dashboard) => `${type}-root`;
|
|
8648
|
+
|
|
8645
8649
|
const pieChartTooltipFromAttributes = (t, data, attributes) => {
|
|
8646
8650
|
const attribute = attributes?.find(({ name }) => name === data[0].name);
|
|
8647
8651
|
const renderValue = attribute
|
|
@@ -8831,7 +8835,7 @@ const useChartData = ({ element, type }) => {
|
|
|
8831
8835
|
return [];
|
|
8832
8836
|
return filteredAttributes
|
|
8833
8837
|
.map(relatedAxis => {
|
|
8834
|
-
const { dataSourceName, axisColor, attributeName } = relatedAxis;
|
|
8838
|
+
const { dataSourceName, axisColor, attributeName, attributeUnits } = relatedAxis;
|
|
8835
8839
|
const dataSource = configDataSources.find(({ name }) => name === dataSourceName);
|
|
8836
8840
|
const layerInfo = layerInfos?.find(item => item?.name === dataSource?.layerName);
|
|
8837
8841
|
const featureDataSource = getDataSource(dataSourceName, dataSources);
|
|
@@ -8849,8 +8853,10 @@ const useChartData = ({ element, type }) => {
|
|
|
8849
8853
|
})
|
|
8850
8854
|
: null,
|
|
8851
8855
|
color: axisColor,
|
|
8856
|
+
attributeName,
|
|
8857
|
+
attributeUnits,
|
|
8858
|
+
dataSourceName,
|
|
8852
8859
|
layerInfo,
|
|
8853
|
-
attributeName
|
|
8854
8860
|
};
|
|
8855
8861
|
})
|
|
8856
8862
|
.filter(({ items }) => items === null || (items?.length && !items.every(({ value }) => value === null)));
|
|
@@ -8860,6 +8866,8 @@ const useChartData = ({ element, type }) => {
|
|
|
8860
8866
|
items: getDataFromAttributes(t, element, attributes),
|
|
8861
8867
|
layerInfo: null,
|
|
8862
8868
|
attributeName: null,
|
|
8869
|
+
attributeUnits: null,
|
|
8870
|
+
dataSourceName: null,
|
|
8863
8871
|
color: null
|
|
8864
8872
|
}
|
|
8865
8873
|
];
|
|
@@ -9096,125 +9104,99 @@ const useExpandableContainers = () => {
|
|
|
9096
9104
|
return [expandedContainers, expandContainer];
|
|
9097
9105
|
};
|
|
9098
9106
|
|
|
9099
|
-
const useExportPdf = (
|
|
9107
|
+
const useExportPdf = (id, margin = 20) => {
|
|
9100
9108
|
const [loading, setLoading] = React.useState(false);
|
|
9101
9109
|
const onExport = React.useCallback(async () => {
|
|
9102
|
-
if (
|
|
9110
|
+
if (!id) {
|
|
9103
9111
|
return;
|
|
9104
9112
|
}
|
|
9105
9113
|
setLoading(true);
|
|
9106
|
-
const
|
|
9107
|
-
|
|
9108
|
-
|
|
9109
|
-
|
|
9110
|
-
|
|
9111
|
-
|
|
9112
|
-
|
|
9113
|
-
|
|
9114
|
-
|
|
9115
|
-
|
|
9116
|
-
|
|
9117
|
-
|
|
9118
|
-
|
|
9119
|
-
|
|
9120
|
-
|
|
9121
|
-
|
|
9122
|
-
|
|
9123
|
-
|
|
9124
|
-
|
|
9125
|
-
|
|
9126
|
-
|
|
9127
|
-
|
|
9128
|
-
|
|
9129
|
-
|
|
9130
|
-
|
|
9131
|
-
|
|
9132
|
-
|
|
9133
|
-
|
|
9134
|
-
|
|
9135
|
-
|
|
9136
|
-
|
|
9137
|
-
|
|
9138
|
-
|
|
9139
|
-
|
|
9140
|
-
|
|
9141
|
-
|
|
9142
|
-
|
|
9143
|
-
|
|
9144
|
-
|
|
9145
|
-
|
|
9146
|
-
|
|
9147
|
-
|
|
9148
|
-
|
|
9149
|
-
|
|
9150
|
-
|
|
9151
|
-
|
|
9152
|
-
|
|
9153
|
-
|
|
9154
|
-
|
|
9155
|
-
|
|
9156
|
-
|
|
9157
|
-
|
|
9158
|
-
|
|
9159
|
-
|
|
9160
|
-
|
|
9161
|
-
}
|
|
9162
|
-
|
|
9163
|
-
if ((textarea as HTMLTextAreaElement).classList.contains("report-page-front-cover-comment")) {
|
|
9164
|
-
(div as HTMLDivElement).style.fontSize = "16px";
|
|
9165
|
-
(div as HTMLDivElement).style.fontWeight = "400";
|
|
9166
|
-
(div as HTMLDivElement).style.opacity = "0.54";
|
|
9167
|
-
(div as HTMLDivElement).style.lineHeight = "normal";
|
|
9168
|
-
}
|
|
9169
|
-
}
|
|
9170
|
-
|
|
9171
|
-
div.innerText = (textarea as HTMLTextAreaElement).value;
|
|
9172
|
-
|
|
9173
|
-
textarea.replaceWith(div);
|
|
9174
|
-
});
|
|
9175
|
-
|
|
9176
|
-
datePickerWrappers.forEach((inputWrapper) => {
|
|
9177
|
-
const input = inputWrapper.querySelector("input");
|
|
9178
|
-
const div = document.createElement("div");
|
|
9179
|
-
|
|
9180
|
-
if (isCoverPage) {
|
|
9181
|
-
(div as HTMLDivElement).style.fontSize = "12px";
|
|
9182
|
-
(div as HTMLDivElement).style.fontWeight = "400";
|
|
9183
|
-
(div as HTMLDivElement).style.opacity = "0.54";
|
|
9184
|
-
}
|
|
9185
|
-
|
|
9186
|
-
div.innerText = (input as HTMLInputElement).value;
|
|
9187
|
-
|
|
9188
|
-
inputWrapper.replaceWith(div);
|
|
9189
|
-
});
|
|
9190
|
-
|
|
9191
|
-
pageBlockContainers.forEach((element) => {
|
|
9192
|
-
(element as HTMLDivElement).style.background = "#ffffff";
|
|
9193
|
-
});
|
|
9194
|
-
|
|
9195
|
-
pageItemTitles.forEach((item) => {
|
|
9196
|
-
if (isCoverPage) {
|
|
9197
|
-
(item as HTMLDivElement).style.display = "none";
|
|
9198
|
-
} else {
|
|
9199
|
-
(item as HTMLDivElement).style.fontSize = "40px";
|
|
9200
|
-
(item as HTMLDivElement).style.fontWeight = "300";
|
|
9201
|
-
(item as HTMLDivElement).style.marginBottom = "2rem";
|
|
9202
|
-
}
|
|
9203
|
-
});*/
|
|
9204
|
-
},
|
|
9114
|
+
const container = document.querySelector(`#${id}`);
|
|
9115
|
+
if (!container) {
|
|
9116
|
+
setLoading(false);
|
|
9117
|
+
return;
|
|
9118
|
+
}
|
|
9119
|
+
// Сохраняем оригинальные стили для восстановления
|
|
9120
|
+
const originalStyles = {
|
|
9121
|
+
overflow: container.style.overflow,
|
|
9122
|
+
position: container.style.position,
|
|
9123
|
+
};
|
|
9124
|
+
// Временные стили для точного измерения
|
|
9125
|
+
container.style.overflow = 'visible';
|
|
9126
|
+
container.style.position = 'relative';
|
|
9127
|
+
const pdf = new jspdf.jsPDF("p", "px", "a4", false);
|
|
9128
|
+
const pageWidth = pdf.internal.pageSize.getWidth();
|
|
9129
|
+
const pageHeight = pdf.internal.pageSize.getHeight();
|
|
9130
|
+
const availableHeight = pageHeight - (2 * margin);
|
|
9131
|
+
// Получаем все дочерние элементы
|
|
9132
|
+
const children = Array.from(container.children);
|
|
9133
|
+
let currentPageHeight = 0;
|
|
9134
|
+
let currentPageElements = [];
|
|
9135
|
+
const pages = [];
|
|
9136
|
+
// Распределяем элементы по страницам
|
|
9137
|
+
for (const child of children) {
|
|
9138
|
+
const childHeight = child.offsetHeight;
|
|
9139
|
+
// Если элемент не помещается на текущей странице, начинаем новую
|
|
9140
|
+
if (currentPageHeight + childHeight > availableHeight && currentPageElements.length > 0) {
|
|
9141
|
+
pages.push([...currentPageElements]);
|
|
9142
|
+
currentPageElements = [];
|
|
9143
|
+
currentPageHeight = 0;
|
|
9144
|
+
}
|
|
9145
|
+
currentPageElements.push(child);
|
|
9146
|
+
currentPageHeight += childHeight;
|
|
9147
|
+
}
|
|
9148
|
+
// Добавляем последнюю страницу
|
|
9149
|
+
if (currentPageElements.length > 0) {
|
|
9150
|
+
pages.push(currentPageElements);
|
|
9151
|
+
}
|
|
9152
|
+
// Генерируем PDF для каждой страницы
|
|
9153
|
+
for (let pageIndex = 0; pageIndex < pages.length; pageIndex++) {
|
|
9154
|
+
if (pageIndex > 0) {
|
|
9155
|
+
pdf.addPage();
|
|
9156
|
+
}
|
|
9157
|
+
const pageElements = pages[pageIndex];
|
|
9158
|
+
// Создаем временный контейнер для текущей страницы
|
|
9159
|
+
const tempContainer = document.createElement('div');
|
|
9160
|
+
tempContainer.style.position = 'absolute';
|
|
9161
|
+
tempContainer.style.left = '-9999px';
|
|
9162
|
+
tempContainer.style.top = '0';
|
|
9163
|
+
tempContainer.style.width = container.offsetWidth + 'px';
|
|
9164
|
+
tempContainer.style.overflow = 'visible';
|
|
9165
|
+
// Клонируем элементы для текущей страницы
|
|
9166
|
+
pageElements.forEach(element => {
|
|
9167
|
+
const clone = element.cloneNode(true);
|
|
9168
|
+
tempContainer.appendChild(clone);
|
|
9205
9169
|
});
|
|
9206
|
-
|
|
9207
|
-
|
|
9208
|
-
|
|
9209
|
-
|
|
9210
|
-
|
|
9211
|
-
|
|
9170
|
+
document.body.appendChild(tempContainer);
|
|
9171
|
+
try {
|
|
9172
|
+
const canvas = await html2canvas(tempContainer, {
|
|
9173
|
+
scale: 2,
|
|
9174
|
+
useCORS: true,
|
|
9175
|
+
logging: false,
|
|
9176
|
+
backgroundColor: '#ffffff',
|
|
9177
|
+
width: container.offsetWidth,
|
|
9178
|
+
height: tempContainer.offsetHeight,
|
|
9179
|
+
});
|
|
9180
|
+
const imgData = canvas.toDataURL('image/png', 1.0);
|
|
9181
|
+
const imgWidth = pageWidth - (2 * margin);
|
|
9182
|
+
const imgHeight = (canvas.height * imgWidth) / canvas.width;
|
|
9183
|
+
// Центрируем по горизонтали и добавляем с верхним отступом
|
|
9184
|
+
pdf.addImage(imgData, 'PNG', margin, margin, imgWidth, imgHeight);
|
|
9185
|
+
}
|
|
9186
|
+
catch (error) {
|
|
9187
|
+
console.error('Error generating page:', error);
|
|
9188
|
+
}
|
|
9189
|
+
finally {
|
|
9190
|
+
// Удаляем временный контейнер
|
|
9191
|
+
document.body.removeChild(tempContainer);
|
|
9212
9192
|
}
|
|
9213
|
-
pdf.addImage(img, "PNG", 0, 0, pdfWidth, pdfHeight);
|
|
9214
9193
|
}
|
|
9215
|
-
|
|
9194
|
+
// Восстанавливаем оригинальные стили
|
|
9195
|
+
container.style.overflow = originalStyles.overflow;
|
|
9196
|
+
container.style.position = originalStyles.position;
|
|
9197
|
+
pdf.save(`${dateFns.format(new Date(), "yyyy-MM-dd_HH:mm:ss")}.pdf`);
|
|
9216
9198
|
setLoading(false);
|
|
9217
|
-
}, [
|
|
9199
|
+
}, [id, margin]);
|
|
9218
9200
|
return { loading, onExport };
|
|
9219
9201
|
};
|
|
9220
9202
|
|
|
@@ -9417,7 +9399,7 @@ const Chart = React.memo(({ config, element, elementConfig, type, renderElement
|
|
|
9417
9399
|
const { t } = useGlobalContext();
|
|
9418
9400
|
const { expandedContainers, layerInfos, attributes, dataSources } = useWidgetContext(type);
|
|
9419
9401
|
const { id, options, children } = element || {};
|
|
9420
|
-
const { column, markers: configMarkers, showLabels, showMarkers, showTotal, totalWord: configTotalWord, totalAttribute, expandable, expanded, chartType, relatedDataSources, defaultColor } = options || {};
|
|
9402
|
+
const { column, markers: configMarkers, showLabels, showMarkers, showTotal, totalWord: configTotalWord, totalAttribute, expandable, expanded, chartType, relatedDataSources, defaultColor, dotSnapping, } = options || {};
|
|
9421
9403
|
const isLineChart = chartType === "line";
|
|
9422
9404
|
const isPieChart = chartType === "pie";
|
|
9423
9405
|
const isStackBar = chartType === "stack";
|
|
@@ -9472,14 +9454,23 @@ const Chart = React.memo(({ config, element, elementConfig, type, renderElement
|
|
|
9472
9454
|
const renderLineChartTooltip = React.useCallback((items, { indexX }) => {
|
|
9473
9455
|
return (jsxRuntime.jsxs(Tooltip, { children: [jsxRuntime.jsx(ChartTooltipLabel, { children: labels[indexX] }), items
|
|
9474
9456
|
.filter(({ value }) => !isEmptyValue(value))
|
|
9475
|
-
?.map(({ layerName, attributeName, value, stroke }, index) => {
|
|
9476
|
-
const layerInfo =
|
|
9477
|
-
|
|
9478
|
-
|
|
9479
|
-
|
|
9480
|
-
|
|
9457
|
+
?.map(({ layerName, attributeName, attributeUnits, dataSourceName, value, stroke }, index) => {
|
|
9458
|
+
const layerInfo = !attributeUnits
|
|
9459
|
+
? layerInfos?.find(({ name }) => name === layerName)
|
|
9460
|
+
: null;
|
|
9461
|
+
const attribute = !attributeUnits
|
|
9462
|
+
? layerInfo?.layerDefinition.attributes[attributeName]
|
|
9463
|
+
: null;
|
|
9464
|
+
const dataSource = dataSourceName ? getDataSource(dataSourceName, dataSources) : null;
|
|
9465
|
+
const dataSourceUnits = !dataSource || !attributeUnits
|
|
9466
|
+
? null
|
|
9467
|
+
: dataSource.features?.[0]?.attributes?.[attributeUnits];
|
|
9468
|
+
const legendValue = attribute
|
|
9469
|
+
? formatAttributeValue({ t, type: attribute.type, value, stringFormat: attribute.stringFormat })
|
|
9470
|
+
: [value, dataSourceUnits].filter(Boolean).join(" ");
|
|
9471
|
+
return (jsxRuntime.jsxs(ChartTooltipRow, { children: [jsxRuntime.jsx(ChartLegendColor$1, { "$color": stroke }), jsxRuntime.jsx(ChartLegendValue, { children: legendValue })] }, index));
|
|
9481
9472
|
})] }));
|
|
9482
|
-
}, [labels, layerInfos]);
|
|
9473
|
+
}, [labels, layerInfos, dataSources, dotSnapping]);
|
|
9483
9474
|
const markers = React.useMemo(() => getChartMarkers(data[0]?.items, configMarkers, dataSources), [data, dataSources, configMarkers]);
|
|
9484
9475
|
const margin = React.useMemo(() => {
|
|
9485
9476
|
const markersMargin = showMarkers ? 10 : 0;
|
|
@@ -9513,6 +9504,8 @@ const Chart = React.memo(({ config, element, elementConfig, type, renderElement
|
|
|
9513
9504
|
const lineChartData = data.map(item => ({
|
|
9514
9505
|
layerName: item.layerInfo?.name,
|
|
9515
9506
|
attributeName: item.attributeName,
|
|
9507
|
+
attributeUnits: item.attributeUnits,
|
|
9508
|
+
dataSourceName: item.dataSourceName,
|
|
9516
9509
|
stroke: item.color || primaryColor,
|
|
9517
9510
|
values: item.items
|
|
9518
9511
|
?.filter(({ value }) => !isEmptyValue(value))
|
|
@@ -9527,7 +9520,7 @@ const Chart = React.memo(({ config, element, elementConfig, type, renderElement
|
|
|
9527
9520
|
if (isHidedY) {
|
|
9528
9521
|
yAxis.remove();
|
|
9529
9522
|
}
|
|
9530
|
-
}, customYAxis: yAxis => yAxis.ticks(4), renderTooltip: renderLineChartTooltip, customize: customize, dynamicTooltipEnable: true, stackedTooltip: true, tooltipClassName: "dashboardLineChartTooltip", drawGridX: !isHidedY, margin: margin })] }));
|
|
9523
|
+
}, customYAxis: yAxis => yAxis.ticks(4), renderTooltip: renderLineChartTooltip, customize: customize, dotSnapping: dotSnapping, dynamicTooltipEnable: true, stackedTooltip: true, tooltipClassName: "dashboardLineChartTooltip", drawGridX: !isHidedY, margin: margin })] }));
|
|
9531
9524
|
}
|
|
9532
9525
|
if (isStackBar) {
|
|
9533
9526
|
return (jsxRuntime.jsx(AnyChartWrapper, { height: height, children: jsxRuntime.jsx(StackBar, { data: data, filterName: filterName, type: type, alias: elementConfig?.children?.find(child => child.id === "alias"), options: options, renderTooltip: renderPieChartTooltip, renderElement: renderElement }) }));
|
|
@@ -10274,6 +10267,7 @@ exports.getActualExtrusionHeight = getActualExtrusionHeight;
|
|
|
10274
10267
|
exports.getAttributeByName = getAttributeByName;
|
|
10275
10268
|
exports.getAttributeValue = getAttributeValue;
|
|
10276
10269
|
exports.getAttributesConfiguration = getAttributesConfiguration;
|
|
10270
|
+
exports.getChartAxes = getChartAxes;
|
|
10277
10271
|
exports.getChartFilterName = getChartFilterName;
|
|
10278
10272
|
exports.getChartMarkers = getChartMarkers;
|
|
10279
10273
|
exports.getConfigFilter = getConfigFilter;
|
|
@@ -10302,6 +10296,7 @@ exports.getProxyService = getProxyService;
|
|
|
10302
10296
|
exports.getRelatedAttribute = getRelatedAttribute;
|
|
10303
10297
|
exports.getRenderElement = getRenderElement;
|
|
10304
10298
|
exports.getResourceUrl = getResourceUrl;
|
|
10299
|
+
exports.getRootElementId = getRootElementId;
|
|
10305
10300
|
exports.getSelectedFilterValue = getSelectedFilterValue;
|
|
10306
10301
|
exports.getSlideshowImages = getSlideshowImages;
|
|
10307
10302
|
exports.getSvgUrl = getSvgUrl;
|