diff --git a/packages/builder/src/App.svelte b/packages/builder/src/App.svelte index 69bddc225c..870d057ace 100644 --- a/packages/builder/src/App.svelte +++ b/packages/builder/src/App.svelte @@ -6,12 +6,26 @@ import { onMount } from "svelte" import IconButton from "./common/IconButton.svelte" import Spinner from "./common/Spinner.svelte" + import AppNotification, { showAppNotification } from "./common/AppNotification.svelte" let init = initialise() + + function showErrorBanner() { + showAppNotification({ + status: "danger", + message: + "Whoops! Looks like we're having trouble. Please refresh the page.", + }) + } + + onMount(() => { + window.addEventListener("error", showErrorBanner) + window.addEventListener("unhandledrejection", showErrorBanner) + })
- + {#await init}
diff --git a/packages/builder/src/builderStore/store/index.js b/packages/builder/src/builderStore/store/index.js index d7be2fe92a..41230bcaf4 100644 --- a/packages/builder/src/builderStore/store/index.js +++ b/packages/builder/src/builderStore/store/index.js @@ -44,7 +44,7 @@ export const getStore = () => { currentNode: null, libraries: null, showSettings: false, - useAnalytics: true, + useAnalytics: true } const store = writable(initial) diff --git a/packages/builder/src/common/AppNotification.svelte b/packages/builder/src/common/AppNotification.svelte new file mode 100644 index 0000000000..59e6730857 --- /dev/null +++ b/packages/builder/src/common/AppNotification.svelte @@ -0,0 +1,76 @@ + + +