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;