Make exportMetrics strict

Summary: _typescript_

Reviewed By: danielbuechele

Differential Revision: D17074932

fbshipit-source-id: 1a6a8e81a9d15021dd9b51a0c3a394a2cf349e9c
This commit is contained in:
Pascal Hartig
2019-08-28 03:00:15 -07:00
committed by Facebook Github Bot
parent 5c69ad8e8b
commit 9a63ee9fff

View File

@@ -26,17 +26,21 @@ async function exportMetrics(
const pluginStateData = pluginStates[key]; const pluginStateData = pluginStates[key];
const arr = key.split('#'); const arr = key.split('#');
const pluginName = arr.pop(); const pluginName = arr.pop();
if (selectedPlugins.length > 0 && !selectedPlugins.includes(pluginName)) { if (
pluginName === undefined ||
(selectedPlugins.length > 0 && !selectedPlugins.includes(pluginName))
) {
continue; continue;
} }
const clientID = arr.join('#'); const clientID = arr.join('#');
const plugin = pluginsMap.get(pluginName); const plugin = pluginsMap.get(pluginName);
const metricsReducer: ( const metricsReducer:
persistedState: any, | (<U>(persistedState: U) => Promise<MetricType>)
) => Promise<MetricType> | undefined = plugin && plugin.metricsReducer; | null
| undefined = plugin && plugin.metricsReducer;
if (pluginsMap.has(pluginName) && metricsReducer) { if (pluginsMap.has(pluginName) && metricsReducer) {
const metricsObject = await metricsReducer(pluginStateData); const metricsObject = await metricsReducer(pluginStateData);
const pluginObject = {}; const pluginObject: MetricPluginType = {};
pluginObject[pluginName] = metricsObject; pluginObject[pluginName] = metricsObject;
if (!metrics[clientID]) { if (!metrics[clientID]) {
metrics[clientID] = pluginObject; metrics[clientID] = pluginObject;