mirror of
https://github.com/gristlabs/grist-core.git
synced 2024-10-19 16:02:01 +00:00
96fee73b70
Summary: Adding "Download as CSV" button that exports filtred section data to csv Test Plan: Browser tests Reviewers: paulfitz, dsagal Reviewed By: paulfitz Differential Revision: https://phab.getgrist.com/D2830
17 lines
504 B
TypeScript
17 lines
504 B
TypeScript
import { CellValue } from "app/common/DocActions";
|
|
import { ColumnFilterFunc } from "app/common/ColumnFilterFunc";
|
|
|
|
export type RowFilterFunc<T> = (row: T) => boolean;
|
|
|
|
// Builds RowFilter for a single column
|
|
export function buildRowFilter<T>(
|
|
getter: RowValueFunc<T> | null,
|
|
filterFunc: ColumnFilterFunc | null): RowFilterFunc<T> {
|
|
if (!getter || !filterFunc) {
|
|
return () => true;
|
|
}
|
|
return (rowId: T) => filterFunc(getter(rowId));
|
|
}
|
|
|
|
export type RowValueFunc<T> = (rowId: T) => CellValue;
|