From 9a63ee9fff2f4bce7c5f413314efe97509af6e76 Mon Sep 17 00:00:00 2001 From: Pascal Hartig Date: Wed, 28 Aug 2019 03:00:15 -0700 Subject: [PATCH] Make exportMetrics strict Summary: _typescript_ Reviewed By: danielbuechele Differential Revision: D17074932 fbshipit-source-id: 1a6a8e81a9d15021dd9b51a0c3a394a2cf349e9c --- src/utils/exportMetrics.tsx | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/utils/exportMetrics.tsx b/src/utils/exportMetrics.tsx index 020c61005..a31b776c9 100644 --- a/src/utils/exportMetrics.tsx +++ b/src/utils/exportMetrics.tsx @@ -26,17 +26,21 @@ async function exportMetrics( const pluginStateData = pluginStates[key]; const arr = key.split('#'); const pluginName = arr.pop(); - if (selectedPlugins.length > 0 && !selectedPlugins.includes(pluginName)) { + if ( + pluginName === undefined || + (selectedPlugins.length > 0 && !selectedPlugins.includes(pluginName)) + ) { continue; } const clientID = arr.join('#'); const plugin = pluginsMap.get(pluginName); - const metricsReducer: ( - persistedState: any, - ) => Promise | undefined = plugin && plugin.metricsReducer; + const metricsReducer: + | ((persistedState: U) => Promise) + | null + | undefined = plugin && plugin.metricsReducer; if (pluginsMap.has(pluginName) && metricsReducer) { const metricsObject = await metricsReducer(pluginStateData); - const pluginObject = {}; + const pluginObject: MetricPluginType = {}; pluginObject[pluginName] = metricsObject; if (!metrics[clientID]) { metrics[clientID] = pluginObject;