Skip to content

Commit 306b412

Browse files
fix(charts): fix error when module was resolved as CommonJS, improve SSR (#5301)
1 parent 1410ec0 commit 306b412

File tree

10 files changed

+22
-9
lines changed

10 files changed

+22
-9
lines changed

packages/charts/src/components/BarChart/Placeholder.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
import { ThemingParameters } from '@ui5/webcomponents-react-base';
22
import React from 'react';
3-
import ContentLoader from 'react-content-loader/dist/react-content-loader.es.js';
3+
import ContentLoader from 'react-content-loader';
44

55
export const BarChartPlaceholder = () => {
66
return (
7+
// @ts-expect-error: TypeScript is going crazy
78
<ContentLoader
89
viewBox="0 0 165 145"
910
preserveAspectRatio="xMidYMid meet"

packages/charts/src/components/BulletChart/Placeholder.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { ThemingParameters } from '@ui5/webcomponents-react-base';
22
import React from 'react';
3-
import ContentLoader from 'react-content-loader/dist/react-content-loader.es.js';
3+
import ContentLoader from 'react-content-loader';
44
import type { IChartMeasure } from '../../interfaces/IChartMeasure.js';
55

66
const barContentVertical = (
@@ -48,6 +48,7 @@ export const BulletChartPlaceholder = ({ layout, measures }: BulletChartPlacehol
4848
const distinctElements = new Set(measures.map((item) => item.type));
4949

5050
return (
51+
// @ts-expect-error: TypeScript is going crazy
5152
<ContentLoader
5253
viewBox="0 0 165 145"
5354
preserveAspectRatio="xMidYMid meet"

packages/charts/src/components/ColumnChart/Placeholder.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
import { ThemingParameters } from '@ui5/webcomponents-react-base';
22
import React from 'react';
3-
import ContentLoader from 'react-content-loader/dist/react-content-loader.es.js';
3+
import ContentLoader from 'react-content-loader';
44

55
export const ColumnChartPlaceholder = (props) => {
66
return (
7+
// @ts-expect-error: TypeScript is going crazy
78
<ContentLoader
89
viewBox="0 0 165 145"
910
preserveAspectRatio="xMidYMid meet"

packages/charts/src/components/ColumnChartWithTrend/Placeholder.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
import { ThemingParameters } from '@ui5/webcomponents-react-base';
22
import React from 'react';
3-
import ContentLoader from 'react-content-loader/dist/react-content-loader.es.js';
3+
import ContentLoader from 'react-content-loader';
44

55
export const ColumnChartWithTrendPlaceholder = (props) => {
66
return (
7+
// @ts-expect-error: TypeScript is going crazy
78
<ContentLoader
89
viewBox="0 0 165 145"
910
preserveAspectRatio="xMidYMid meet"

packages/charts/src/components/ComposedChart/Placeholder.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { ThemingParameters } from '@ui5/webcomponents-react-base';
22
import React from 'react';
3-
import ContentLoader from 'react-content-loader/dist/react-content-loader.es.js';
3+
import ContentLoader from 'react-content-loader';
44
import type { IChartMeasure } from '../../interfaces/IChartMeasure.js';
55

66
const barContentVertical = (
@@ -54,6 +54,7 @@ export const ComposedChartPlaceholder = ({ layout, measures }: ComposedChartPlac
5454
const distinctElements = new Set(measures.map((item) => item.type));
5555

5656
return (
57+
// @ts-expect-error: TypeScript is going crazy
5758
<ContentLoader
5859
viewBox="0 0 165 145"
5960
preserveAspectRatio="xMidYMid meet"

packages/charts/src/components/LineChart/Placeholder.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
import { ThemingParameters } from '@ui5/webcomponents-react-base';
22
import React from 'react';
3-
import ContentLoader from 'react-content-loader/dist/react-content-loader.es.js';
3+
import ContentLoader from 'react-content-loader';
44

55
export const LineChartPlaceholder = (props) => {
66
return (
7+
// @ts-expect-error: TypeScript is going crazy
78
<ContentLoader
89
viewBox="0 0 165 145"
910
preserveAspectRatio="xMidYMid meet"

packages/charts/src/components/PieChart/Placeholder.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
import { ThemingParameters } from '@ui5/webcomponents-react-base';
22
import React from 'react';
3-
import ContentLoader from 'react-content-loader/dist/react-content-loader.es.js';
3+
import ContentLoader from 'react-content-loader';
44

55
export const PieChartPlaceholder = (props) => {
66
return (
7+
// @ts-expect-error: TypeScript is going crazy
78
<ContentLoader
89
viewBox="0 0 165 145"
910
preserveAspectRatio="xMidYMid meet"

packages/charts/src/components/ScatterChart/Placeholder.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
import { ThemingParameters } from '@ui5/webcomponents-react-base';
22
import React from 'react';
3-
import ContentLoader from 'react-content-loader/dist/react-content-loader.es.js';
3+
import ContentLoader from 'react-content-loader';
44

55
export const ScatterChartPlaceholder = (props) => {
66
return (
7+
// @ts-expect-error: TypeScript is going crazy
78
<ContentLoader
89
viewBox="0 0 165 145"
910
preserveAspectRatio="xMidYMid meet"

packages/charts/src/components/TimelineChart/Placeholder.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
import { ThemingParameters } from '@ui5/webcomponents-react-base';
22
import React from 'react';
3-
import ContentLoader from 'react-content-loader/dist/react-content-loader.es.js';
3+
import ContentLoader from 'react-content-loader';
44

55
export const TimelineChartPlaceholder = () => {
66
return (
7+
// @ts-expect-error: TypeScript is going crazy
78
<ContentLoader
89
viewBox="0 0 600 150"
910
preserveAspectRatio="xMidYMid meet"

packages/charts/src/internal/Utils.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ export const getCellColors = (element: Record<string, any>, data: Record<string,
1212
let canvas;
1313

1414
export const getTextWidth = (text) => {
15+
if (typeof document === 'undefined') {
16+
return text.length * 7;
17+
}
18+
1519
const font = `normal 12pt "72","72full",Arial,Helvetica,sans-serif`;
1620
// re-use canvas object for better performance
1721
canvas = canvas || (canvas = document.createElement('canvas'));

0 commit comments

Comments
 (0)