Introduce column filters
Summary: Beyond a search across all columns, it is now possible to specific columns for specific values: * for a row to be visible, all active column filters need to be matched (e.g. both a filter on time and app has to be satisfied) * if multiple values within a column are filtered for, these are -or-ed. * if no value at all within a column is checked, even when they are defined, the column won't take part in filtering * if there is a general search and column filters, a row has to satisfy both Filters can be preconfigured, pre-configured filters cannot be removed. Reseting will reset the filters back to their original Move `useMemoize` to flipper-plugin Merged the `ui/utils` and `utils` folder inside `flipper-plugin` Reviewed By: nikoant Differential Revision: D26450260 fbshipit-source-id: 11693d5d140cea03cad91c1e0f3438d7b129cf29
This commit is contained in:
committed by
Facebook GitHub Bot
parent
8aabce477b
commit
11eb19da4c
@@ -1,25 +0,0 @@
|
||||
/**
|
||||
* Copyright (c) Facebook, Inc. and its affiliates.
|
||||
*
|
||||
* This source code is licensed under the MIT license found in the
|
||||
* LICENSE file in the root directory of this source tree.
|
||||
*
|
||||
* @format
|
||||
*/
|
||||
|
||||
import {useMemo} from 'react';
|
||||
|
||||
/**
|
||||
* Slight variation on useMemo that encourages to create hoistable memoization functions,
|
||||
* which encourages reuse and testability by no longer closing over things in the memoization function.
|
||||
*
|
||||
* @example
|
||||
* const metroDevice = useMemoize(
|
||||
* findMetroDevice,
|
||||
* [connections.devices],
|
||||
* );
|
||||
*/
|
||||
export function useMemoize<T extends any[], R>(fn: (...args: T) => R, args: T) {
|
||||
// eslint-disable-next-line
|
||||
return useMemo(() => fn.apply(null, args), args);
|
||||
}
|
||||
Reference in New Issue
Block a user