diff --git a/cypress/src/components/treemap/shared.ts b/cypress/src/components/treemap/shared.ts index 3c5b427c2b..d0b686c0c7 100644 --- a/cypress/src/components/treemap/shared.ts +++ b/cypress/src/components/treemap/shared.ts @@ -1,7 +1,7 @@ export interface Datum { id: string value?: number - children?: Datum[] + children?: readonly Datum[] } export const defaultData: Datum = { diff --git a/packages/treemap/src/TreeMapCanvas.tsx b/packages/treemap/src/TreeMapCanvas.tsx index 987e9ed1ad..508c727372 100644 --- a/packages/treemap/src/TreeMapCanvas.tsx +++ b/packages/treemap/src/TreeMapCanvas.tsx @@ -26,7 +26,7 @@ import { ComputedNode, DefaultTreeMapDatum, TreeMapCanvasProps, TreeMapCommonPro import { canvasDefaultProps } from './defaults' const findNodeUnderCursor = ( - nodes: ComputedNode[], + nodes: readonly ComputedNode[], margin: Margin, x: number, y: number diff --git a/packages/treemap/src/TreeMapNodes.tsx b/packages/treemap/src/TreeMapNodes.tsx index 4664595adc..82c984e8b7 100644 --- a/packages/treemap/src/TreeMapNodes.tsx +++ b/packages/treemap/src/TreeMapNodes.tsx @@ -52,7 +52,7 @@ const getEndingAnimatedNodeProps = ( } interface TreeMapNodesProps { - nodes: ComputedNode[] + nodes: readonly ComputedNode[] nodeComponent: NodeComponent borderWidth: TreeMapCommonProps['borderWidth'] enableLabel: TreeMapCommonProps['enableLabel'] diff --git a/packages/treemap/src/hooks.ts b/packages/treemap/src/hooks.ts index 3831ee8cab..ff82700a1d 100644 --- a/packages/treemap/src/hooks.ts +++ b/packages/treemap/src/hooks.ts @@ -180,7 +180,7 @@ export const useTreeMap = ({ const node = { id: getIdentity(rawNode.data), path, - pathComponents, + pathComponents: pathComponents as readonly string[], data: omit(rawNode.data, 'children'), x: rawNode.x0, y: rawNode.y0, @@ -269,7 +269,7 @@ export const useTreeMap = ({ } export const useInteractiveTreeMapNodes = ( - nodes: ComputedNode[], + nodes: readonly ComputedNode[], { isInteractive, onMouseEnter, diff --git a/packages/treemap/src/types.ts b/packages/treemap/src/types.ts index b8ffe9b175..1d591c5c78 100644 --- a/packages/treemap/src/types.ts +++ b/packages/treemap/src/types.ts @@ -15,13 +15,13 @@ import { TileType } from './tiling' export interface DefaultTreeMapDatum { id: string value?: number - children?: DefaultTreeMapDatum[] + children?: readonly DefaultTreeMapDatum[] } export interface ComputedNode { id: string path: string - pathComponents: string[] + pathComponents: readonly string[] data: Omit x: number y: number @@ -93,7 +93,7 @@ export type TooltipComponent = FunctionComponent { - nodes: ComputedNode[] + nodes: readonly ComputedNode[] } export type CustomSvgLayer = FunctionComponent> export type CustomHtmlLayer = FunctionComponent> @@ -176,14 +176,14 @@ export type TreeMapSvgProps = Partial> & { nodeComponent?: NodeComponent - layers?: (LayerId | CustomSvgLayer)[] + layers?: readonly (LayerId | CustomSvgLayer)[] } export type TreeMapHtmlProps = Partial> & TreeMapDataProps & Dimensions & { nodeComponent?: NodeComponent - layers?: (LayerId | CustomHtmlLayer)[] + layers?: readonly (LayerId | CustomHtmlLayer)[] } export type TreeMapCanvasProps = Partial< @@ -201,6 +201,6 @@ export type TreeMapCanvasProps = Partial< > & TreeMapDataProps & Dimensions & { - layers?: (LayerId | CustomCanvasLayer)[] + layers?: readonly (LayerId | CustomCanvasLayer)[] pixelRatio?: number }