diff --git a/packages/eui-docgen/src/filter_prop.ts b/packages/eui-docgen/src/filter_prop.ts index b23d15246f3..629ba78ccad 100644 --- a/packages/eui-docgen/src/filter_prop.ts +++ b/packages/eui-docgen/src/filter_prop.ts @@ -35,6 +35,9 @@ const allowedParents = [ 'RefAttributes', ]; +// components/types that should allow all props, even from external modules +const allowedComponents = ['EuiDataGridVirtualizationOptions']; + /** * Filter props to remove props from node modules while keeping those whitelisted */ @@ -88,9 +91,10 @@ export const filterProp = ( return true; } + if (allowedComponents.includes(component.name)) return true; if (prop.parent.fileName.includes('@elastic/charts')) return true; return !prop.parent.fileName.includes('node_modules'); } return true; -} +}; diff --git a/packages/eui/src/components/datagrid/data_grid_types.docgen.tsx b/packages/eui/src/components/datagrid/data_grid_types.docgen.tsx index 3f8c014ab9e..373fffc8908 100644 --- a/packages/eui/src/components/datagrid/data_grid_types.docgen.tsx +++ b/packages/eui/src/components/datagrid/data_grid_types.docgen.tsx @@ -101,6 +101,14 @@ export const EuiDataGridRowHeightsOptions: FunctionComponent< DataGridTypes.EuiDataGridRowHeightsOptions > = () => <>; +export const EuiDataGridHeightWidthProps: FunctionComponent< + Pick +> = () => <>; + +export const EuiDataGridVirtualizationOptions: FunctionComponent< + DataGridTypes.EuiDataGridProps['virtualizationOptions'] +> = () => <>; + export const EuiDataGridRefProps: FunctionComponent< DataGridTypes.EuiDataGridRefProps > = () => <>; diff --git a/packages/eui/src/components/datagrid/data_grid_types.ts b/packages/eui/src/components/datagrid/data_grid_types.ts index bb627fe46fe..2a8397ca549 100644 --- a/packages/eui/src/components/datagrid/data_grid_types.ts +++ b/packages/eui/src/components/datagrid/data_grid_types.ts @@ -366,23 +366,21 @@ export type CommonGridProps = CommonProps & /** * Allows customizing the underlying [react-window grid](https://react-window.vercel.app/#/api/VariableSizeGrid) props. */ - virtualizationOptions?: Partial< - Omit< - VariableSizeGridProps, - | 'children' - | 'itemData' - | 'height' - | 'width' - | 'rowCount' - | 'rowHeight' - | 'columnCount' - | 'columnWidth' - | 'ref' - | 'innerRef' - | 'outerRef' - | 'innerElementType' - | 'useIsScrolling' - > + virtualizationOptions?: Pick< + VariableSizeGridProps, + | 'className' + | 'style' + | 'direction' + | 'estimatedRowHeight' + | 'estimatedColumnWidth' + | 'overscanRowCount' + | 'overscanColumnCount' + | 'initialScrollTop' + | 'initialScrollLeft' + | 'onScroll' + | 'onItemsRendered' + | 'itemKey' + | 'outerElementType' >; /** * A #EuiDataGridRowHeightsOptions object that provides row heights options. diff --git a/packages/website/docs/components/tabular_content/data_grid/data_grid_container_constraints.mdx b/packages/website/docs/components/tabular_content/data_grid/data_grid_container_constraints.mdx index e84c8a4ef9e..8f776502fe9 100644 --- a/packages/website/docs/components/tabular_content/data_grid/data_grid_container_constraints.mdx +++ b/packages/website/docs/components/tabular_content/data_grid/data_grid_container_constraints.mdx @@ -590,12 +590,9 @@ export default () => { }; ``` - + +