@kubit-ui-web/react-charts 1.8.0 → 1.9.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/dist/cjs/charts/barChart/barChart.type.d.ts +3 -0
- package/dist/cjs/charts/barChart/barChart.type.d.ts.map +1 -1
- package/dist/cjs/charts/barChart/barChartStructure.d.ts.map +1 -1
- package/dist/cjs/charts/barChart/barChartStructure.js +21 -12
- package/dist/cjs/charts/lineChart/lineChart.type.d.ts +3 -0
- package/dist/cjs/charts/lineChart/lineChart.type.d.ts.map +1 -1
- package/dist/cjs/charts/lineChart/lineChartStructure.d.ts.map +1 -1
- package/dist/cjs/charts/lineChart/lineChartStructure.js +10 -27
- package/dist/cjs/charts/pieChart/pieChart.type.d.ts +3 -0
- package/dist/cjs/charts/pieChart/pieChart.type.d.ts.map +1 -1
- package/dist/cjs/charts/pieChart/pieChartStructure.d.ts.map +1 -1
- package/dist/cjs/charts/pieChart/pieChartStructure.js +14 -13
- package/dist/cjs/components/zoomArea/hooks/index.d.ts +0 -1
- package/dist/cjs/components/zoomArea/hooks/index.d.ts.map +1 -1
- package/dist/cjs/components/zoomArea/hooks/index.js +0 -1
- package/dist/cjs/components/zoomArea/zoomArea.js +1 -1
- package/dist/cjs/hooks/index.d.ts +2 -0
- package/dist/cjs/hooks/index.d.ts.map +1 -1
- package/dist/cjs/hooks/index.js +2 -0
- package/dist/cjs/hooks/useId/index.d.ts +2 -0
- package/dist/cjs/hooks/useId/index.d.ts.map +1 -0
- package/dist/cjs/hooks/useId/index.js +1 -0
- package/dist/cjs/hooks/useId/useId.d.ts +2 -0
- package/dist/cjs/hooks/useId/useId.d.ts.map +1 -0
- package/dist/cjs/hooks/useId/useId.js +13 -0
- package/dist/cjs/hooks/useResponsiveCanvas/index.d.ts +2 -0
- package/dist/cjs/hooks/useResponsiveCanvas/index.d.ts.map +1 -0
- package/dist/cjs/hooks/useResponsiveCanvas/index.js +1 -0
- package/dist/{types/components/zoomArea/hooks → cjs/hooks/useResponsiveCanvas}/useResponsiveCanvas.d.ts +3 -1
- package/dist/cjs/hooks/useResponsiveCanvas/useResponsiveCanvas.d.ts.map +1 -0
- package/dist/{esm/components/zoomArea/hooks → cjs/hooks/useResponsiveCanvas}/useResponsiveCanvas.js +5 -4
- package/dist/esm/charts/barChart/barChart.type.d.ts +3 -0
- package/dist/esm/charts/barChart/barChart.type.d.ts.map +1 -1
- package/dist/esm/charts/barChart/barChartStructure.d.ts.map +1 -1
- package/dist/esm/charts/barChart/barChartStructure.js +21 -12
- package/dist/esm/charts/lineChart/lineChart.type.d.ts +3 -0
- package/dist/esm/charts/lineChart/lineChart.type.d.ts.map +1 -1
- package/dist/esm/charts/lineChart/lineChartStructure.d.ts.map +1 -1
- package/dist/esm/charts/lineChart/lineChartStructure.js +10 -27
- package/dist/esm/charts/pieChart/pieChart.type.d.ts +3 -0
- package/dist/esm/charts/pieChart/pieChart.type.d.ts.map +1 -1
- package/dist/esm/charts/pieChart/pieChartStructure.d.ts.map +1 -1
- package/dist/esm/charts/pieChart/pieChartStructure.js +14 -13
- package/dist/esm/components/zoomArea/hooks/index.d.ts +0 -1
- package/dist/esm/components/zoomArea/hooks/index.d.ts.map +1 -1
- package/dist/esm/components/zoomArea/hooks/index.js +0 -1
- package/dist/esm/components/zoomArea/zoomArea.js +1 -1
- package/dist/esm/hooks/index.d.ts +2 -0
- package/dist/esm/hooks/index.d.ts.map +1 -1
- package/dist/esm/hooks/index.js +2 -0
- package/dist/esm/hooks/useId/index.d.ts +2 -0
- package/dist/esm/hooks/useId/index.d.ts.map +1 -0
- package/dist/esm/hooks/useId/index.js +1 -0
- package/dist/esm/hooks/useId/useId.d.ts +2 -0
- package/dist/esm/hooks/useId/useId.d.ts.map +1 -0
- package/dist/esm/hooks/useId/useId.js +13 -0
- package/dist/esm/hooks/useResponsiveCanvas/index.d.ts +2 -0
- package/dist/esm/hooks/useResponsiveCanvas/index.d.ts.map +1 -0
- package/dist/esm/hooks/useResponsiveCanvas/index.js +1 -0
- package/dist/esm/{components/zoomArea/hooks → hooks/useResponsiveCanvas}/useResponsiveCanvas.d.ts +3 -1
- package/dist/esm/hooks/useResponsiveCanvas/useResponsiveCanvas.d.ts.map +1 -0
- package/dist/{cjs/components/zoomArea/hooks → esm/hooks/useResponsiveCanvas}/useResponsiveCanvas.js +5 -4
- package/dist/kubit-ui-web-react-charts.cjs.js +1 -1
- package/dist/kubit-ui-web-react-charts.es.js +1 -1
- package/dist/kubit-ui-web-react-charts.umd.js +1 -1
- package/dist/types/charts/barChart/barChart.type.d.ts +3 -0
- package/dist/types/charts/barChart/barChart.type.d.ts.map +1 -1
- package/dist/types/charts/barChart/barChartStructure.d.ts.map +1 -1
- package/dist/types/charts/lineChart/lineChart.type.d.ts +3 -0
- package/dist/types/charts/lineChart/lineChart.type.d.ts.map +1 -1
- package/dist/types/charts/lineChart/lineChartStructure.d.ts.map +1 -1
- package/dist/types/charts/pieChart/pieChart.type.d.ts +3 -0
- package/dist/types/charts/pieChart/pieChart.type.d.ts.map +1 -1
- package/dist/types/charts/pieChart/pieChartStructure.d.ts.map +1 -1
- package/dist/types/components/zoomArea/hooks/index.d.ts +0 -1
- package/dist/types/components/zoomArea/hooks/index.d.ts.map +1 -1
- package/dist/types/hooks/index.d.ts +2 -0
- package/dist/types/hooks/index.d.ts.map +1 -1
- package/dist/types/hooks/useId/index.d.ts +2 -0
- package/dist/types/hooks/useId/index.d.ts.map +1 -0
- package/dist/types/hooks/useId/useId.d.ts +2 -0
- package/dist/types/hooks/useId/useId.d.ts.map +1 -0
- package/dist/types/hooks/useResponsiveCanvas/index.d.ts +2 -0
- package/dist/types/hooks/useResponsiveCanvas/index.d.ts.map +1 -0
- package/dist/{cjs/components/zoomArea/hooks → types/hooks/useResponsiveCanvas}/useResponsiveCanvas.d.ts +3 -1
- package/dist/types/hooks/useResponsiveCanvas/useResponsiveCanvas.d.ts.map +1 -0
- package/package.json +1 -1
- package/dist/cjs/components/zoomArea/hooks/useResponsiveCanvas.d.ts.map +0 -1
- package/dist/esm/components/zoomArea/hooks/useResponsiveCanvas.d.ts.map +0 -1
- package/dist/types/components/zoomArea/hooks/useResponsiveCanvas.d.ts.map +0 -1
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { Children, useEffect, useMemo, useState } from 'react';
|
|
3
3
|
import { SvgContainer } from '../../components/svgContainer/svgContainer';
|
|
4
|
-
import {
|
|
4
|
+
import { useId } from '../../hooks/useId/useId';
|
|
5
|
+
import { useResponsiveCanvas } from '../../hooks/useResponsiveCanvas/useResponsiveCanvas';
|
|
5
6
|
import { DefaultCanvasConfig } from '../../types/canvas.type';
|
|
6
7
|
import { createErrorAccumulator } from '../../utils/createErrorAccumulator';
|
|
7
|
-
import { getCanvasDimensions } from '../../utils/getCanvasDimensions/getCanvasDimensions';
|
|
8
8
|
import { getChildrenAttr } from '../../utils/getChildrenAttr/getChildrenAttr';
|
|
9
9
|
import { getDataFingerprint } from '../../utils/getDataFingerprint/getDataFingerprint';
|
|
10
|
-
import { parseStringToNumberPx } from '../../utils/parseStringToNumberPx.ts/parseStringToNumberPx';
|
|
11
10
|
import { buildLineContextValue } from './context/buildLineContextValue';
|
|
12
11
|
import { LineChartContext } from './context/lineChartContext';
|
|
13
12
|
import { LineChartXAxis } from './fragments/lineChartXAxis';
|
|
@@ -42,17 +41,16 @@ import { useHover } from './hook/useHover';
|
|
|
42
41
|
*
|
|
43
42
|
* @returns The rendered LineChart component.
|
|
44
43
|
*/
|
|
45
|
-
export const LineChartStructure = ({ ariaHidden, ariaLabel, canvasConfig = DefaultCanvasConfig, caption, children, classNames, data, dataTestId = 'line-chart', getPathArea, height = '100%', onErrors, role, tabIndex, width = '100%', xKey, ...props }) => {
|
|
46
|
-
const
|
|
44
|
+
export const LineChartStructure = ({ ariaHidden, ariaLabel, canvasConfig = DefaultCanvasConfig, caption, children, classNames, data, dataTestId: dataTestIdProp = 'line-chart', getPathArea, height = '100%', onErrors, role, tabIndex, width = '100%', xKey, ...props }) => {
|
|
45
|
+
const dataTestId = useId(dataTestIdProp);
|
|
47
46
|
const [childrenYKeys, setChildrenYKey] = useState('');
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
47
|
+
// Use the responsive canvas hook for dimension management
|
|
48
|
+
const { parsedCanvas, parsedCanvasExtraSpace, viewBox } = useResponsiveCanvas({
|
|
49
|
+
canvasConfig,
|
|
50
|
+
dataTestId,
|
|
51
|
+
height,
|
|
52
|
+
width,
|
|
51
53
|
});
|
|
52
|
-
const parsedCanvasExtraSpace = canvasExtraSpace
|
|
53
|
-
? parseStringToNumberPx(canvasExtraSpace)
|
|
54
|
-
: undefined;
|
|
55
|
-
const viewBox = buildViewBox(parsedCanvas.width, parsedCanvas.height, parsedCanvasExtraSpace);
|
|
56
54
|
// Set the default axis for the chart
|
|
57
55
|
const defaultAxis = [
|
|
58
56
|
_jsx(LineChartXAxis, {}, "default-x-axis"),
|
|
@@ -95,21 +93,6 @@ export const LineChartStructure = ({ ariaHidden, ariaLabel, canvasConfig = Defau
|
|
|
95
93
|
canvasHeight: parsedCanvas.height,
|
|
96
94
|
canvasWidth: parsedCanvas.width,
|
|
97
95
|
});
|
|
98
|
-
useEffect(() => {
|
|
99
|
-
const svgElement = document.querySelector('[data-kbt-svg]');
|
|
100
|
-
if (!svgElement) {
|
|
101
|
-
return;
|
|
102
|
-
}
|
|
103
|
-
const { parsedCanvasHeight, parsedCanvasWidth } = getCanvasDimensions({
|
|
104
|
-
canvasHeight,
|
|
105
|
-
canvasWidth,
|
|
106
|
-
svgElement,
|
|
107
|
-
});
|
|
108
|
-
setParsedCanvas({
|
|
109
|
-
height: parsedCanvasHeight,
|
|
110
|
-
width: parsedCanvasWidth,
|
|
111
|
-
});
|
|
112
|
-
}, [canvasWidth, canvasHeight]);
|
|
113
96
|
useEffect(() => {
|
|
114
97
|
getPathArea?.({
|
|
115
98
|
x1: contextValue.xAxisCoordinates.coordinates.x1,
|
|
@@ -16,6 +16,9 @@ export interface PieChartProps {
|
|
|
16
16
|
ariaLabel?: string;
|
|
17
17
|
ariaHidden?: boolean;
|
|
18
18
|
caption?: string;
|
|
19
|
+
/**
|
|
20
|
+
* @deprecated Use `width` and `height` props instead to define chart dimensions.
|
|
21
|
+
*/
|
|
19
22
|
canvasConfig?: CanvasConfig;
|
|
20
23
|
dataTestId?: string;
|
|
21
24
|
width?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pieChart.type.d.ts","sourceRoot":"","sources":["../../../../src/charts/pieChart/pieChart.type.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pieChart.type.d.ts","sourceRoot":"","sources":["../../../../src/charts/pieChart/pieChart.type.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pieChartStructure.d.ts","sourceRoot":"","sources":["../../../../src/charts/pieChart/pieChartStructure.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAA8B,MAAM,OAAO,CAAC;AAY5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,aAAa,
|
|
1
|
+
{"version":3,"file":"pieChartStructure.d.ts","sourceRoot":"","sources":["../../../../src/charts/pieChart/pieChartStructure.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAA8B,MAAM,OAAO,CAAC;AAY5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,aAAa,CAgF/C,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { useMemo } from 'react';
|
|
3
3
|
import { SvgContainer } from '../../components/svgContainer/svgContainer';
|
|
4
|
-
import {
|
|
4
|
+
import { useId } from '../../hooks/useId/useId';
|
|
5
|
+
import { useResponsiveCanvas } from '../../hooks/useResponsiveCanvas/useResponsiveCanvas';
|
|
5
6
|
import { DefaultCanvasConfig } from '../../types/canvas.type';
|
|
6
7
|
import { createErrorAccumulator } from '../../utils/createErrorAccumulator';
|
|
7
8
|
import { getDataFingerprint } from '../../utils/getDataFingerprint/getDataFingerprint';
|
|
8
|
-
import { parseStringToNumberPx } from '../../utils/parseStringToNumberPx.ts/parseStringToNumberPx';
|
|
9
9
|
import { buildPieContextValue } from './context/buildPieContextValue';
|
|
10
10
|
import { PieChartContext } from './context/pieChartContext';
|
|
11
11
|
/**
|
|
@@ -38,16 +38,17 @@ import { PieChartContext } from './context/pieChartContext';
|
|
|
38
38
|
* @param {ChartData[]} props.data - The data for the pie chart.
|
|
39
39
|
* @returns {ReactElement} The rendered pie chart component.
|
|
40
40
|
*/
|
|
41
|
-
export const PieChartStructure = ({ ariaHidden, ariaLabel, canvasConfig = DefaultCanvasConfig, caption, children, classNames, data, dataTestId = 'pie-chart', halfChart, height = '100%', onErrors, radius = '50%', role, tabIndex, width = '100%', ...props }) => {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
const
|
|
41
|
+
export const PieChartStructure = ({ ariaHidden, ariaLabel, canvasConfig = DefaultCanvasConfig, caption, children, classNames, data, dataTestId: dataTestIdProp = 'pie-chart', halfChart, height = '100%', onErrors, radius = '50%', role, tabIndex, width = '100%', ...props }) => {
|
|
42
|
+
const dataTestId = useId(dataTestIdProp);
|
|
43
|
+
// Use the responsive canvas hook for dimension management
|
|
44
|
+
const { parsedCanvas, viewBox } = useResponsiveCanvas({
|
|
45
|
+
canvasConfig,
|
|
46
|
+
dataTestId,
|
|
47
|
+
height,
|
|
48
|
+
width,
|
|
49
|
+
});
|
|
50
|
+
const parsedCanvasWidth = parsedCanvas.width;
|
|
51
|
+
const parsedCanvasHeight = parsedCanvas.height;
|
|
51
52
|
const errorAccumulator = useMemo(() => createErrorAccumulator(onErrors), [onErrors]);
|
|
52
53
|
// Create a fingerprint of the data to avoid unnecessary contextValue updates
|
|
53
54
|
const dataFingerprint = getDataFingerprint(data);
|
|
@@ -63,7 +64,7 @@ export const PieChartStructure = ({ ariaHidden, ariaLabel, canvasConfig = Defaul
|
|
|
63
64
|
children,
|
|
64
65
|
halfChart,
|
|
65
66
|
});
|
|
66
|
-
}, [
|
|
67
|
+
}, [parsedCanvasHeight, parsedCanvasWidth, halfChart, dataFingerprint, errorAccumulator]);
|
|
67
68
|
return (_jsx(SvgContainer, { ariaHidden: ariaHidden, ariaLabel: ariaLabel, caption: caption, className: classNames, dataTestId: dataTestId, height: height, radius: radius, role: role, tabIndex: tabIndex, viewBox: viewBox, width: width, ...props, children: _jsx(PieChartContext.Provider, { value: {
|
|
68
69
|
...contextValue,
|
|
69
70
|
canvasHeight: parsedCanvasHeight,
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
export { useDragInteraction } from './useDragInteraction';
|
|
2
2
|
export { useKeyboardNavigation } from './useKeyboardNavigation';
|
|
3
|
-
export { useResponsiveCanvas } from './useResponsiveCanvas';
|
|
4
3
|
export { useZoomAreaFocus } from './useZoomAreaFocus';
|
|
5
4
|
export { useZoomData } from './useZoomData';
|
|
6
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/zoomArea/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/zoomArea/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
export { useDragInteraction } from './useDragInteraction';
|
|
2
2
|
export { useKeyboardNavigation } from './useKeyboardNavigation';
|
|
3
|
-
export { useResponsiveCanvas } from './useResponsiveCanvas';
|
|
4
3
|
export { useZoomAreaFocus } from './useZoomAreaFocus';
|
|
5
4
|
export { useZoomData } from './useZoomData';
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useMemo, useRef } from 'react';
|
|
3
3
|
import { SvgContainer } from '../../components/svgContainer/svgContainer';
|
|
4
|
+
import { useResponsiveCanvas } from '../../hooks/useResponsiveCanvas/useResponsiveCanvas';
|
|
4
5
|
import { getDataFingerprint } from '../../utils/getDataFingerprint/getDataFingerprint';
|
|
5
6
|
import { FocusRing } from '../focusRing/focusRing';
|
|
6
7
|
import { LineRenderer } from './components/LineRenderer';
|
|
@@ -8,7 +9,6 @@ import { SelectionArea } from './components/SelectionArea';
|
|
|
8
9
|
import { ZoomHandler } from './components/ZoomHandler';
|
|
9
10
|
import { useDragInteraction } from './hooks/useDragInteraction';
|
|
10
11
|
import { useKeyboardNavigation } from './hooks/useKeyboardNavigation';
|
|
11
|
-
import { useResponsiveCanvas } from './hooks/useResponsiveCanvas';
|
|
12
12
|
import { useZoomAreaFocus } from './hooks/useZoomAreaFocus';
|
|
13
13
|
import { useZoomData } from './hooks/useZoomData';
|
|
14
14
|
import { generateAccessibilityLabels } from './utils/accessibilityLabels';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,2CAA2C,CAAC"}
|
package/dist/esm/hooks/index.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useId/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './useId';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useId.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useId/useId.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,KAAK,GAAI,SAAS,MAAM,KAAG,MAIvC,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { useState } from 'react';
|
|
2
|
+
const DEFAULT_PREFIX = '$component$';
|
|
3
|
+
const uniqueId = {};
|
|
4
|
+
const generateUniqueId = (prefix) => {
|
|
5
|
+
if (!uniqueId[prefix]) {
|
|
6
|
+
uniqueId[prefix] = 0;
|
|
7
|
+
}
|
|
8
|
+
return uniqueId[prefix]++;
|
|
9
|
+
};
|
|
10
|
+
export const useId = (prefix) => {
|
|
11
|
+
const [id] = useState(() => generateUniqueId(prefix || DEFAULT_PREFIX));
|
|
12
|
+
return `${prefix}${id}`;
|
|
13
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useResponsiveCanvas/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './useResponsiveCanvas';
|
package/dist/esm/{components/zoomArea/hooks → hooks/useResponsiveCanvas}/useResponsiveCanvas.d.ts
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CanvasConfig } from '
|
|
1
|
+
import type { CanvasConfig } from '../../types/canvas.type';
|
|
2
2
|
/**
|
|
3
3
|
* Universal responsive canvas hook for chart components.
|
|
4
4
|
*
|
|
@@ -56,6 +56,8 @@ interface UseResponsiveCanvasReturn {
|
|
|
56
56
|
};
|
|
57
57
|
/** SVG viewBox string */
|
|
58
58
|
viewBox: string;
|
|
59
|
+
/** Parsed extra space in pixels (optional) */
|
|
60
|
+
parsedCanvasExtraSpace?: number;
|
|
59
61
|
}
|
|
60
62
|
export declare const useResponsiveCanvas: ({ canvasConfig, dataTestId, extraSpace, height, width, }: UseResponsiveCanvasParams) => UseResponsiveCanvasReturn;
|
|
61
63
|
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useResponsiveCanvas.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useResponsiveCanvas/useResponsiveCanvas.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAKxD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,UAAU,yBAAyB;IACjC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC9B;AAED,UAAU,yBAAyB;IACjC,yCAAyC;IACzC,YAAY,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,yBAAyB;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,eAAO,MAAM,mBAAmB,GAAI,0DAMjC,yBAAyB,KAAG,yBA+F9B,CAAC"}
|
package/dist/{cjs/components/zoomArea/hooks → esm/hooks/useResponsiveCanvas}/useResponsiveCanvas.js
RENAMED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { useEffect, useMemo, useState } from 'react';
|
|
2
|
-
import { buildViewBox } from '
|
|
3
|
-
import { getCanvasDimensions } from '
|
|
4
|
-
import { parseStringToNumberPx } from '
|
|
5
|
-
import { isBrowser, safeQuerySelector } from '
|
|
2
|
+
import { buildViewBox } from '../../components/svgContainer/utils/buildViewBox/buildViewBox';
|
|
3
|
+
import { getCanvasDimensions } from '../../utils/getCanvasDimensions/getCanvasDimensions';
|
|
4
|
+
import { parseStringToNumberPx } from '../../utils/parseStringToNumberPx.ts/parseStringToNumberPx';
|
|
5
|
+
import { isBrowser, safeQuerySelector } from '../../utils/ssr/ssr';
|
|
6
6
|
export const useResponsiveCanvas = ({ canvasConfig, dataTestId, extraSpace = 0, height, width, }) => {
|
|
7
7
|
// State for parsed/calculated dimensions
|
|
8
8
|
const [parsedCanvas, setParsedCanvas] = useState({
|
|
@@ -70,6 +70,7 @@ export const useResponsiveCanvas = ({ canvasConfig, dataTestId, extraSpace = 0,
|
|
|
70
70
|
}, [parsedCanvas.width, parsedCanvas.height, parsedCanvasExtraSpace]);
|
|
71
71
|
return {
|
|
72
72
|
parsedCanvas,
|
|
73
|
+
parsedCanvasExtraSpace,
|
|
73
74
|
viewBox,
|
|
74
75
|
};
|
|
75
76
|
};
|