feat: add support to scoord3d (#5016)

Co-authored-by: Bill Wallace <wayfarer3130@gmail.com>
This commit is contained in:
Pedro KöhlerandBill Wallace authored and GitHub committed 2025-07-31 00:21:26 -04:00
1 parent af40f06524
commit 735405a855
73 files changed
+1032 -993

No files matched your search

@@ -246,11 +246,9 @@ const DefaultFallback = ({
const ErrorBoundary = ({
context = 'OHIF',
onReset = () => {},
onError = () => {},
onError = _error => {},
fallbackComponent: FallbackComponent = DefaultFallback,
children,
fallbackRoute = null,
isPage,
}: ErrorBoundaryProps) => {
const [error, setError] = useState<ErrorBoundaryError | null>(null);
@@ -276,8 +274,8 @@ const ErrorBoundary = ({
event.preventDefault();
clearTimeout(errorTimeout);
errorTimeout = setTimeout(() => {
setError(event.reason);
onErrorHandler(event.reason, null);
setError(event.reason || event);
onErrorHandler(event.reason || event, null);
}, 100);
};
@@ -291,7 +289,10 @@ const ErrorBoundary = ({
};
}, []);
const onErrorHandler = (error: ErrorBoundaryError, componentStack: string | null) => {
const onErrorHandler = (
error: ErrorBoundaryError | ErrorEvent,
componentStack: string | null
) => {
console.debug(`${context} Error Boundary`, error, componentStack, context);
onError(error, componentStack || '', context);
};
@@ -125,6 +125,7 @@ interface ViewportGridApi {
setViewportGridSizeChanged: (props: any) => void;
publishViewportsReady: () => void;
getDisplaySetsUIDsForViewport: (viewportId: string) => string[];
isReferenceViewable: (viewportId: string, viewRef, options?) => boolean;
}
// Update the context type
@@ -142,19 +143,6 @@ interface ViewportGridProviderProps {
export function ViewportGridProvider({ children, service }: ViewportGridProviderProps) {
const viewportGridReducer = (state: AppTypes.ViewportGrid.State, action) => {
switch (action.type) {
case 'SET_IS_REFERENCE_VIEWABLE': {
const { viewportId, isReferenceViewable } = action.payload;
const viewports = new Map(state.viewports);
const viewport = viewports.get(viewportId);
if (!viewport) {
return;
}
viewports.set(viewportId, {
...viewport,
isReferenceViewable,
});
return { ...state, viewports };
}
case 'SET_ACTIVE_VIEWPORT_ID': {
return { ...state, ...{ activeViewportId: action.payload } };
}
@@ -392,13 +380,6 @@ export function ViewportGridProvider({ children, service }: ViewportGridProvider
[dispatch]
);
const setIsReferenceViewable = useCallback(
(viewportId, isReferenceViewable) => {
dispatch({ type: 'SET_IS_REFERENCE_VIEWABLE', payload: { viewportId, isReferenceViewable } });
},
[dispatch]
);
const setDisplaySetsForViewports = useCallback(
viewports =>
dispatch({
@@ -495,7 +476,7 @@ export function ViewportGridProvider({ children, service }: ViewportGridProvider
getState,
setActiveViewportId,
setDisplaySetsForViewports,
setIsReferenceViewable,
isReferenceViewable: () => false,
setLayout,
reset,
onModeExit: reset,
@@ -511,7 +492,6 @@ export function ViewportGridProvider({ children, service }: ViewportGridProvider
service,
setActiveViewportId,
setDisplaySetsForViewports,
setIsReferenceViewable,
setLayout,
reset,
set,
@@ -527,8 +507,8 @@ export function ViewportGridProvider({ children, service }: ViewportGridProvider
setActiveViewportId: index => service.setActiveViewportId(index),
setDisplaySetsForViewport: props => service.setDisplaySetsForViewports([props]),
setDisplaySetsForViewports: props => service.setDisplaySetsForViewports(props),
setIsReferenceViewable: (viewportId, isReferenceViewable) =>
service.setIsReferenceViewable(viewportId, isReferenceViewable),
isReferenceViewable: (viewportId, isReferenceViewable, options) =>
service.isReferenceViewable(viewportId, isReferenceViewable, options),
setLayout: layout => service.setLayout(layout),
getViewportState: viewportId => service.getViewportState(viewportId),
reset: () => service.reset(),