diff --git a/packages/web/src/App.js b/packages/web/src/App.js
index 0497767a6..28426f75f 100644
--- a/packages/web/src/App.js
+++ b/packages/web/src/App.js
@@ -17,6 +17,7 @@ import { ModalLayerProvider } from './modals/showModal';
import UploadsProvider from './utility/UploadsProvider';
import ThemeHelmet from './themes/ThemeHelmet';
import PluginsProvider from './plugins/PluginsProvider';
+import { ExtensionsProvider } from './utility/useExtensions';
function App() {
return (
@@ -29,16 +30,18 @@ function App() {
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/packages/web/src/impexp/ImportExportConfigurator.js b/packages/web/src/impexp/ImportExportConfigurator.js
index 6913ef286..82c5d21e1 100644
--- a/packages/web/src/impexp/ImportExportConfigurator.js
+++ b/packages/web/src/impexp/ImportExportConfigurator.js
@@ -354,10 +354,6 @@ export default function ImportExportConfigurator({ uploadedFile = undefined, onC
const [previewSource, setPreviewSource] = React.useState(null);
const extensions = useExtensions();
- console.log('ImportExportConfigurator', extensions);
- const installed = useInstalledPlugins();
- console.log('installed', installed);
-
const handleUpload = React.useCallback(
(file) => {
console.log('UPLOAD', extensions);
diff --git a/packages/web/src/utility/useExtensions.js b/packages/web/src/utility/useExtensions.js
index 6b53996c7..712209138 100644
--- a/packages/web/src/utility/useExtensions.js
+++ b/packages/web/src/utility/useExtensions.js
@@ -2,14 +2,22 @@ import React from 'react';
import { usePlugins } from '../plugins/PluginsProvider';
import { buildFileFormats } from './fileformats';
-export default function useExtensions() {
+const ExtensionsContext = React.createContext(buildExtensions([]));
+
+export function ExtensionsProvider({ children }) {
const plugins = usePlugins();
- const extensions = React.useMemo(
- () => ({
- plugins,
- fileFormats: buildFileFormats(plugins),
- }),
- [plugins]
- );
+ const extensions = React.useMemo(() => buildExtensions(plugins), [plugins]);
+ return {children};
+}
+
+export function buildExtensions(plugins) {
+ const extensions = {
+ plugins,
+ fileFormats: buildFileFormats(plugins),
+ };
return extensions;
}
+
+export default function useExtensions() {
+ return React.useContext(ExtensionsContext);
+}