feat: Add customization support for more UI components (#4634)
Co-authored-by: ashikcn <ashik@L1140.trenser.com> Co-authored-by: Devu Jayalekshmi <devu.jayalekshmi@trenser.com> Co-authored-by: Arul Mozhi <arul.mozhi@trenser.com>
This commit is contained in:
31 files changed
+288
-33
No files matched your search
@@ -0,0 +1,33 @@
|
||||
import React, { createContext, useContext } from 'react';
|
||||
import { CommandsManager, HotkeysManager } from '../classes';
|
||||
import { ExtensionManager } from '../extensions';
|
||||
import { ServicesManager } from '../services';
|
||||
|
||||
interface SystemContextProviderProps {
|
||||
children: React.ReactNode | React.ReactNode[] | ((...args: any[]) => React.ReactNode);
|
||||
servicesManager: ServicesManager;
|
||||
commandsManager: CommandsManager;
|
||||
extensionManager: ExtensionManager;
|
||||
hotkeysManager: HotkeysManager;
|
||||
}
|
||||
|
||||
const systemContext = createContext(null);
|
||||
const { Provider } = systemContext;
|
||||
|
||||
export const useSystem = () => useContext(systemContext);
|
||||
|
||||
export function SystemContextProvider({
|
||||
children,
|
||||
servicesManager,
|
||||
commandsManager,
|
||||
extensionManager,
|
||||
hotkeysManager,
|
||||
}: SystemContextProviderProps) {
|
||||
return (
|
||||
<Provider value={{ servicesManager, commandsManager, extensionManager, hotkeysManager }}>
|
||||
{children}
|
||||
</Provider>
|
||||
);
|
||||
}
|
||||
|
||||
export default SystemContextProvider;
|
||||
@@ -1,6 +1,7 @@
|
||||
import { ExtensionManager, MODULE_TYPES } from './extensions';
|
||||
import { ServiceProvidersManager, ServicesManager } from './services';
|
||||
import classes, { CommandsManager, HotkeysManager } from './classes';
|
||||
import { SystemContextProvider, useSystem } from './contextProviders/SystemProvider';
|
||||
|
||||
import DICOMWeb from './DICOMWeb';
|
||||
import errorHandler from './errorHandler.js';
|
||||
@@ -99,6 +100,7 @@ export {
|
||||
HotkeysManager,
|
||||
ServicesManager,
|
||||
ServiceProvidersManager,
|
||||
SystemContextProvider,
|
||||
//
|
||||
defaults,
|
||||
utils,
|
||||
@@ -134,6 +136,7 @@ export {
|
||||
PanelService,
|
||||
WorkflowStepsService,
|
||||
StudyPrefetcherService,
|
||||
useSystem,
|
||||
useToolbar,
|
||||
useActiveViewportDisplaySets,
|
||||
};
|
||||
|
||||
Reference in new issue
Block a user