diff --git a/docs/en-US/component/table-v2.md b/docs/en-US/component/table-v2.md index c60bd1420f..61f5c56221 100644 --- a/docs/en-US/component/table-v2.md +++ b/docs/en-US/component/table-v2.md @@ -88,3 +88,13 @@ It is recommended that you write your table component in JSX, since it contains table-v2/grouping-header ::: + +## Filter + +Virtualized Table providers customizing header renderers for rendering customized header, then we can use that to render filters + +:::demo + +table-v2/filter + +::: diff --git a/docs/examples/table-v2/filter.vue b/docs/examples/table-v2/filter.vue new file mode 100644 index 0000000000..e9b5e69e69 --- /dev/null +++ b/docs/examples/table-v2/filter.vue @@ -0,0 +1,114 @@ + + + + diff --git a/packages/components/table-v2/index.ts b/packages/components/table-v2/index.ts index 5070379a2d..c0c61a6e1d 100644 --- a/packages/components/table-v2/index.ts +++ b/packages/components/table-v2/index.ts @@ -9,3 +9,5 @@ export type { TableV2CustomizedHeaderSlotParam, } from './src/types' export * from './src/table' + +export type { HeaderCellSlotProps } from './src/renderers/header-cell' diff --git a/packages/components/table-v2/src/renderers/header-cell.tsx b/packages/components/table-v2/src/renderers/header-cell.tsx index 1c931592a4..6f11599b62 100644 --- a/packages/components/table-v2/src/renderers/header-cell.tsx +++ b/packages/components/table-v2/src/renderers/header-cell.tsx @@ -11,7 +11,7 @@ import type { UseTableReturn } from '../use-table' import type { TableV2Props } from '../table' import type { TableV2HeaderCell } from '../header-cell' -type HeaderCellRendererProps = TableV2HeaderRowCellRendererParams & +export type HeaderCellRendererProps = TableV2HeaderRowCellRendererParams & UnwrapNestedRefs> & Pick & { ns: UseNamespaceReturn @@ -94,3 +94,4 @@ const HeaderCellRenderer: FunctionalComponent = ( } export default HeaderCellRenderer +export type HeaderCellSlotProps = HeaderCellRendererProps & { class: string }