Make Sidebar Extensions more idiomatic
Summary: Sidebar extensions were unkeyed, which make them render inefficiently. I cleaned the api a bit here by making the extensions more idiomatic; they are now components rather then functions, so that they have their own render cycle, state, etc. They are memo-ed now as well, so that they don't have to re-render if the selected item doesn't change. Reviewed By: nikoant Differential Revision: D27685980 fbshipit-source-id: b133bc42061b3b8cf971792f5818810ecb80e3ea
This commit is contained in:
committed by
Facebook GitHub Bot
parent
7d9495027b
commit
4f75247213
@@ -9,11 +9,12 @@
|
||||
|
||||
import type {Client, Logger, PluginClient, Element} from 'flipper';
|
||||
|
||||
export default [] as Array<
|
||||
(
|
||||
client: PluginClient,
|
||||
realClient: Client,
|
||||
selectedNode: Element,
|
||||
logger: Logger,
|
||||
) => React.ReactNode
|
||||
>;
|
||||
export const SidebarExtensions: Record<
|
||||
string,
|
||||
React.FC<{
|
||||
client: PluginClient;
|
||||
realClient: Client;
|
||||
selectedNode: Element;
|
||||
logger: Logger;
|
||||
}>
|
||||
> = {};
|
||||
Reference in New Issue
Block a user