From a97de36eb4c8a264ad6ea1ad3ba3ecfe2cdf74bd Mon Sep 17 00:00:00 2001 From: Manuel Bouza Date: Thu, 4 Apr 2019 11:31:22 +0200 Subject: [PATCH] Only instantiate bugsnag client if BUGSNAG_API_KEY is defined --- src/js/utils/notifier.js | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/src/js/utils/notifier.js b/src/js/utils/notifier.js index 15a5d8c..e9fdecd 100644 --- a/src/js/utils/notifier.js +++ b/src/js/utils/notifier.js @@ -24,16 +24,22 @@ const filterReport = report => { return scripts.some(script => report.stacktrace.some(includes(script))) } -const bugsnagClient = bugsnag({ - apiKey: process.env.BUGSNAG_API_KEY, - appVersion: getAppVersion(), - collectUserIp: false, - beforeSend: filterReport, - releaseStage: process.env.NODE_ENV, - notifyReleaseStages: ["production"] -}) -bugsnagClient.use(bugsnagReact, React) +// When BUGSNAG_API_KEY is undefined ErrorBoundary should simply render children +let ErrorBoundary = ({ children }) => children -export default bugsnagClient -export const ErrorBoundary = bugsnagClient.getPlugin("react") +if (process.env.BUGSNAG_API_KEY) { + const bugsnagClient = bugsnag({ + apiKey: process.env.BUGSNAG_API_KEY, + appVersion: getAppVersion(), + collectUserIp: false, + beforeSend: filterReport, + releaseStage: process.env.NODE_ENV, + notifyReleaseStages: ["production"] + }) + + bugsnagClient.use(bugsnagReact, React) + ErrorBoundary = bugsnagClient.getPlugin("react") +} + +export { ErrorBoundary }