Track filtering and searching for data table
Reviewed By: mweststrate Differential Revision: D48116067 fbshipit-source-id: 2dee2cfd68a23e1153b3f10ff229009777e936da
This commit is contained in:
committed by
Facebook GitHub Bot
parent
b30f7492cd
commit
2834d3300a
@@ -13,7 +13,7 @@ import {MutableRefObject, Reducer, RefObject} from 'react';
|
|||||||
import {DataSourceVirtualizer} from '../../data-source/index';
|
import {DataSourceVirtualizer} from '../../data-source/index';
|
||||||
import produce, {castDraft, immerable, original} from 'immer';
|
import produce, {castDraft, immerable, original} from 'immer';
|
||||||
import {theme} from '../theme';
|
import {theme} from '../theme';
|
||||||
import {DataSource, _DataSourceView} from 'flipper-plugin-core';
|
import {DataSource, getFlipperLib, _DataSourceView} from 'flipper-plugin-core';
|
||||||
|
|
||||||
export type OnColumnResize = (id: string, size: number | Percentage) => void;
|
export type OnColumnResize = (id: string, size: number | Percentage) => void;
|
||||||
export type Sorting<T = any> = {
|
export type Sorting<T = any> = {
|
||||||
@@ -485,6 +485,7 @@ export function createDataTableManager<T>(
|
|||||||
dispatch({type: 'sortColumn', column, direction});
|
dispatch({type: 'sortColumn', column, direction});
|
||||||
},
|
},
|
||||||
setSearchValue(value, addToHistory = false) {
|
setSearchValue(value, addToHistory = false) {
|
||||||
|
getFlipperLib().logger.track('usage', 'data-table:filter:search');
|
||||||
dispatch({type: 'setSearchValue', value, addToHistory});
|
dispatch({type: 'setSearchValue', value, addToHistory});
|
||||||
},
|
},
|
||||||
toggleSearchValue() {
|
toggleSearchValue() {
|
||||||
@@ -506,9 +507,11 @@ export function createDataTableManager<T>(
|
|||||||
dispatch({type: 'setShowNumberedHistory', showNumberedHistory});
|
dispatch({type: 'setShowNumberedHistory', showNumberedHistory});
|
||||||
},
|
},
|
||||||
addColumnFilter(column, value, options = {}) {
|
addColumnFilter(column, value, options = {}) {
|
||||||
|
getFlipperLib().logger.track('usage', 'data-table:filter:add-column');
|
||||||
dispatch({type: 'addColumnFilter', column, value, options});
|
dispatch({type: 'addColumnFilter', column, value, options});
|
||||||
},
|
},
|
||||||
removeColumnFilter(column, label) {
|
removeColumnFilter(column, label) {
|
||||||
|
getFlipperLib().logger.track('usage', 'data-table:filter:remove-column');
|
||||||
dispatch({type: 'removeColumnFilter', column, label});
|
dispatch({type: 'removeColumnFilter', column, label});
|
||||||
},
|
},
|
||||||
setFilterExceptions(exceptions: string[] | undefined) {
|
setFilterExceptions(exceptions: string[] | undefined) {
|
||||||
|
|||||||
@@ -14,12 +14,15 @@ import {createDataSource} from 'flipper-plugin-core';
|
|||||||
import {computeDataTableFilter, DataTableManager} from '../DataTableManager';
|
import {computeDataTableFilter, DataTableManager} from '../DataTableManager';
|
||||||
import {Button} from 'antd';
|
import {Button} from 'antd';
|
||||||
import {sleep} from 'flipper-common';
|
import {sleep} from 'flipper-common';
|
||||||
|
import {TestUtils, _setFlipperLibImplementation} from 'flipper-plugin-core';
|
||||||
|
|
||||||
type Todo = {
|
type Todo = {
|
||||||
title: string;
|
title: string;
|
||||||
done: boolean;
|
done: boolean;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
_setFlipperLibImplementation(TestUtils.createMockFlipperLib());
|
||||||
|
|
||||||
function createTestDataSource() {
|
function createTestDataSource() {
|
||||||
return createDataSource<Todo>([
|
return createDataSource<Todo>([
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user