From 2a42cae28f0a340fe07dbbd7679b144ff05725d3 Mon Sep 17 00:00:00 2001 From: Laura Date: Thu, 23 Apr 2026 16:00:23 -0400 Subject: [PATCH] Pass options param to useGridLayout through GridLayout component --- packages/react/src/components/layout/GridLayout.tsx | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/react/src/components/layout/GridLayout.tsx b/packages/react/src/components/layout/GridLayout.tsx index fe3685351..a8c989e0a 100644 --- a/packages/react/src/components/layout/GridLayout.tsx +++ b/packages/react/src/components/layout/GridLayout.tsx @@ -2,7 +2,7 @@ import * as React from 'react'; import type { UseParticipantsOptions } from '../../hooks'; import { useGridLayout, usePagination, useSwipe } from '../../hooks'; import { mergeProps } from '../../utils'; -import type { TrackReferenceOrPlaceholder } from '@livekit/components-core'; +import type { TrackReferenceOrPlaceholder, GridLayoutDefinition } from '@livekit/components-core'; import { TrackLoop } from '../TrackLoop'; import { PaginationControl } from '../controls/PaginationControl'; import { PaginationIndicator } from '../controls/PaginationIndicator'; @@ -12,6 +12,7 @@ export interface GridLayoutProps extends React.HTMLAttributes, Pick { children: React.ReactNode; tracks: TrackReferenceOrPlaceholder[]; + gridLayouts?: GridLayoutDefinition[]; } /** @@ -30,14 +31,14 @@ export interface GridLayoutProps * ``` * @public */ -export function GridLayout({ tracks, ...props }: GridLayoutProps) { +export function GridLayout({ tracks, gridLayouts, ...props }: GridLayoutProps) { const gridEl = React.createRef(); const elementProps = React.useMemo( () => mergeProps(props, { className: 'lk-grid-layout' }), [props], ); - const { layout } = useGridLayout(gridEl, tracks.length); + const { layout } = useGridLayout(gridEl, tracks.length, gridLayouts ? { gridLayouts } : undefined); const pagination = usePagination(layout.maxTiles, tracks); useSwipe(gridEl, {