Skip to content

Commit de49e6c

Browse files
Mihran MargaryanMihran Margaryan
authored andcommitted
added readonly flag to freezeColumns tuple prop
1 parent 4bd0842 commit de49e6c

File tree

5 files changed

+28
-24
lines changed

5 files changed

+28
-24
lines changed

packages/core/src/internal/data-grid/data-grid.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ export interface DataGridProps {
7272

7373
readonly accessibilityHeight: number;
7474

75-
readonly freezeColumns: number | [left: number, right: number];
75+
readonly freezeColumns: number | readonly [left: number, right: number];
7676
readonly freezeTrailingRows: number;
7777
readonly hasAppendRow: boolean;
7878
readonly firstColAccessible: boolean;

packages/core/src/internal/data-grid/image-window-loader-interface.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,11 @@ import type { Rectangle } from "./data-grid-types.js";
33

44
/** @category Types */
55
export interface ImageWindowLoader {
6-
setWindow(newWindow: Rectangle, freezeCols: number | [left: number, right: number], freezeRows: number[]): void;
6+
setWindow(
7+
newWindow: Rectangle,
8+
freezeCols: number | readonly [left: number, right: number],
9+
freezeRows: number[]
10+
): void;
711
loadOrGetImage(url: string, col: number, row: number): HTMLImageElement | ImageBitmap | undefined;
812
setCallback(imageLoaded: (locations: CellSet) => void): void;
913
}

packages/core/src/internal/data-grid/render/data-grid-lib.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ export interface MappedGridColumn extends FullyDefined<InnerGridColumn> {
2222

2323
export function useMappedColumns(
2424
columns: readonly InnerGridColumn[],
25-
freezeColumns: number | [left: number, right: number]
25+
freezeColumns: number | readonly [left: number, right: number]
2626
): readonly MappedGridColumn[] {
2727
// Extract freeze column counts from the union type parameter. freezeColumnsLeft and freezeColumnsRight
2828
// determine which columns should remain sticky at the left and right sides respectively during horizontal scrolling.
@@ -223,7 +223,7 @@ export function getEffectiveColumns(
223223
columns: readonly MappedGridColumn[],
224224
cellXOffset: number,
225225
width: number,
226-
freezeColumns: number | [left: number, right: number],
226+
freezeColumns: number | readonly [left: number, right: number],
227227
dndState?: {
228228
src: number;
229229
dest: number;
@@ -281,7 +281,7 @@ export function getEffectiveColumns(
281281
export function getColumnIndexForX(
282282
targetX: number,
283283
effectiveColumns: readonly MappedGridColumn[],
284-
freezeColumns: number | [left: number, right: number],
284+
freezeColumns: number | readonly [left: number, right: number],
285285
width: number,
286286
translateX?: number
287287
): number {
@@ -817,7 +817,7 @@ export function computeBounds(
817817
translateX: number,
818818
translateY: number,
819819
rows: number,
820-
freezeColumns: number | [left: number, right: number],
820+
freezeColumns: number | readonly [left: number, right: number],
821821
freezeTrailingRows: number,
822822
mappedColumns: readonly MappedGridColumn[],
823823
rowHeight: number | ((index: number) => number)

packages/core/src/internal/data-grid/render/data-grid.render.rings.ts

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ export function drawHighlightRings(
1717
translateX: number,
1818
translateY: number,
1919
mappedColumns: readonly MappedGridColumn[],
20-
freezeColumns: number | [left: number, right: number],
20+
freezeColumns: number | readonly [left: number, right: number],
2121
headerHeight: number,
2222
groupHeaderHeight: number,
2323
rowHeight: number | ((index: number) => number),
@@ -69,22 +69,22 @@ export function drawHighlightRings(
6969
rect.width === 1 && rect.height === 1
7070
? topLeftBounds
7171
: computeBounds(
72-
rect.x + rect.width - 1,
73-
rect.y + rect.height - 1,
74-
width,
75-
height,
76-
groupHeaderHeight,
77-
headerHeight + groupHeaderHeight,
78-
cellXOffset,
79-
cellYOffset,
80-
translateX,
81-
translateY,
82-
rows,
83-
freezeColumns,
84-
freezeTrailingRows,
85-
mappedColumns,
86-
rowHeight
87-
);
72+
rect.x + rect.width - 1,
73+
rect.y + rect.height - 1,
74+
width,
75+
height,
76+
groupHeaderHeight,
77+
headerHeight + groupHeaderHeight,
78+
cellXOffset,
79+
cellYOffset,
80+
translateX,
81+
translateY,
82+
rows,
83+
freezeColumns,
84+
freezeTrailingRows,
85+
mappedColumns,
86+
rowHeight
87+
);
8888

8989
if (rect.x + rect.width >= mappedColumns.length) {
9090
bottomRightBounds.width -= 1;

packages/core/src/internal/data-grid/render/draw-grid-arg.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ export interface DrawGridArg {
4040
readonly translateY: number;
4141
readonly mappedColumns: readonly MappedGridColumn[];
4242
readonly enableGroups: boolean;
43-
readonly freezeColumns: number | [left: number, right: number];
43+
readonly freezeColumns: number | readonly [left: number, right: number];
4444
readonly dragAndDropState: DragAndDropState | undefined;
4545
readonly theme: FullTheme;
4646
readonly headerHeight: number;

0 commit comments

Comments
 (0)