mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-04-22 00:36:01 +00:00
useExtensions fixed (extensions in context)
This commit is contained in:
@@ -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 <ExtensionsContext.Provider value={extensions}>{children}</ExtensionsContext.Provider>;
|
||||
}
|
||||
|
||||
export function buildExtensions(plugins) {
|
||||
const extensions = {
|
||||
plugins,
|
||||
fileFormats: buildFileFormats(plugins),
|
||||
};
|
||||
return extensions;
|
||||
}
|
||||
|
||||
export default function useExtensions() {
|
||||
return React.useContext(ExtensionsContext);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user