From dbf26815444f124245791d2a79297a3dd2e2f235 Mon Sep 17 00:00:00 2001 From: Dennis Collaris <d.a.c.collaris@uu.nl> Date: Tue, 5 Nov 2024 09:04:34 +0000 Subject: [PATCH] fix: prevent importing and instantiating component for vis overview --- libs/shared/lib/vis/common/types.ts | 2 - libs/shared/lib/vis/views/Recommender.tsx | 39 +++++++++++++++---- .../lib/vis/visualizations/Vis0D/Vis0D.tsx | 2 - .../visualizations/arcplotvis/arcplotvis.tsx | 2 - .../lib/vis/visualizations/documentation.mdx | 1 - .../lib/vis/visualizations/mapvis/mapvis.tsx | 2 - .../visualizations/matrixvis/matrixvis.tsx | 2 - .../nodelinkvis/nodelinkvis.tsx | 2 - .../vis/visualizations/paohvis/paohvis.tsx | 2 - .../visualizations/rawjsonvis/rawjsonvis.tsx | 2 - .../semanticsubstratesvis.tsx | 4 -- .../vis/visualizations/tablevis/tablevis.tsx | 2 - .../lib/vis/visualizations/vis1D/Vis1D.tsx | 2 - 13 files changed, 31 insertions(+), 33 deletions(-) diff --git a/libs/shared/lib/vis/common/types.ts b/libs/shared/lib/vis/common/types.ts index 118c0a933..095a1ed5f 100644 --- a/libs/shared/lib/vis/common/types.ts +++ b/libs/shared/lib/vis/common/types.ts @@ -14,8 +14,6 @@ export type VisualizationSettingsType = { }; export type VISComponentType<T> = { - displayName: keyof typeof Visualizations; - description: string; component: React.FC<VisualizationPropTypes<T>>; settingsComponent: FC<VisualizationSettingsPropTypes<T>>; settings: T; diff --git a/libs/shared/lib/vis/views/Recommender.tsx b/libs/shared/lib/vis/views/Recommender.tsx index 93682640b..28215cefc 100644 --- a/libs/shared/lib/vis/views/Recommender.tsx +++ b/libs/shared/lib/vis/views/Recommender.tsx @@ -3,7 +3,6 @@ import Info from '../../components/info'; import { addVisualization } from '../../data-access/store/visualizationSlice'; import { useActiveSaveStateAuthorization, useAppDispatch } from '../../data-access'; import { Visualizations } from '../components/VisualizationPanel'; -import { isVisualizationReleased } from 'config'; type VisualizationDescription = { name: string; @@ -11,6 +10,32 @@ type VisualizationDescription = { description: string; }; +const displayNames: { [key: string]: string } = { + ArcPlot: 'ArcPlot', + MapVis: 'MapVis', + MatrixVis: 'MatrixVis', + NodeLinkVis: 'NodeLinkVis', + PaohVis: 'PaohVis', + TableVis: 'TableVis', + SemanticSubstratesVis: 'SemanticSubstratesVis', + RawJSONVis: 'RawJSONVis', + Vis0D: 'Vis0D', + Vis1D: 'Vis1D', +}; + +const descriptions: { [key: string]: string } = { + ArcPlot: '', + MapVis: 'Geographical Features', + MatrixVis: 'Overview & Details', + NodeLinkVis: 'General Patterns and Connections', + PaohVis: 'Paths and Connection', + TableVis: 'Node Attribute Statistics and Details', + SemanticSubstratesVis: 'Node/Edge Attribute Exploration', + RawJSONVis: '(Raw) Data Export', + Vis0D: 'KPI visualization', + Vis1D: 'Basic charts', +}; + export function Recommender() { const dispatch = useAppDispatch(); const saveStateAuthorization = useActiveSaveStateAuthorization(); @@ -18,18 +43,16 @@ export function Recommender() { useEffect(() => { const loadVisualizations = async () => { - const descriptions = await Promise.all( - Object.keys(Visualizations).map(async (key) => { - const visualizationModule = await Visualizations[key](); - const { default: visualizationComponent } = visualizationModule; + const visDescriptions = await Promise.all( + Object.keys(Visualizations).map((key) => { return { name: key, - displayName: visualizationComponent.displayName, - description: visualizationComponent.description, + displayName: displayNames[key], + description: descriptions[key], }; }), ); - setVisualizationDescriptions(descriptions); + setVisualizationDescriptions(visDescriptions); }; loadVisualizations(); diff --git a/libs/shared/lib/vis/visualizations/Vis0D/Vis0D.tsx b/libs/shared/lib/vis/visualizations/Vis0D/Vis0D.tsx index cc079a384..b3c56b11d 100644 --- a/libs/shared/lib/vis/visualizations/Vis0D/Vis0D.tsx +++ b/libs/shared/lib/vis/visualizations/Vis0D/Vis0D.tsx @@ -80,8 +80,6 @@ const Vis0DSettings = ({ settings, updateSettings }: VisualizationSettingsPropTy const Vis0DRef = React.createRef<Vis0DVisHandle>(); export const Vis0DComponent: VISComponentType<Vis0DProps> = { - displayName: '0Dvis', - description: 'KPI visualization', component: React.forwardRef((props: VisualizationPropTypes<Vis0DProps>, ref) => <Vis0D {...props} ref={Vis0DRef} />), settingsComponent: Vis0DSettings, settings: settings, diff --git a/libs/shared/lib/vis/visualizations/arcplotvis/arcplotvis.tsx b/libs/shared/lib/vis/visualizations/arcplotvis/arcplotvis.tsx index c7a336462..accdeb1fa 100644 --- a/libs/shared/lib/vis/visualizations/arcplotvis/arcplotvis.tsx +++ b/libs/shared/lib/vis/visualizations/arcplotvis/arcplotvis.tsx @@ -238,8 +238,6 @@ const ArcPlotVisSettings = ({ // remove ts ignore when added to Visualization Dict, because displayname needs to be key of it // @ts-ignore export const ArcVisComponent: VISComponentType = { - displayName: 'ArcPlot', - description: '', component: ArcPlotVis, settingsComponent: ArcPlotVisSettings, settings: configuration, diff --git a/libs/shared/lib/vis/visualizations/documentation.mdx b/libs/shared/lib/vis/visualizations/documentation.mdx index 43cbe3c10..78ca28794 100644 --- a/libs/shared/lib/vis/visualizations/documentation.mdx +++ b/libs/shared/lib/vis/visualizations/documentation.mdx @@ -62,7 +62,6 @@ const VisualizationSettings = ({configuration, graph, updateSettings}: { }; export const VisualizationComponent: VISComponentType = { - displayName: 'Visualization name', component: Visualization, settings: VisualizationSettings, configuration: configuration, diff --git a/libs/shared/lib/vis/visualizations/mapvis/mapvis.tsx b/libs/shared/lib/vis/visualizations/mapvis/mapvis.tsx index b53acfa01..e06283d0e 100644 --- a/libs/shared/lib/vis/visualizations/mapvis/mapvis.tsx +++ b/libs/shared/lib/vis/visualizations/mapvis/mapvis.tsx @@ -338,8 +338,6 @@ export const MapVis = forwardRef((props: VisualizationPropTypes<MapProps>, refEx const mapRef = React.createRef<{ exportImageInternal: () => void }>(); const MapComponent: VISComponentType<MapProps> = { - displayName: 'MapVis', - description: 'Geographical Features', component: React.forwardRef((props: VisualizationPropTypes<MapProps>, ref) => <MapVis {...props} ref={mapRef} />), settingsComponent: MapSettings, settings: settings, diff --git a/libs/shared/lib/vis/visualizations/matrixvis/matrixvis.tsx b/libs/shared/lib/vis/visualizations/matrixvis/matrixvis.tsx index 43b76513f..b3bc4d87d 100644 --- a/libs/shared/lib/vis/visualizations/matrixvis/matrixvis.tsx +++ b/libs/shared/lib/vis/visualizations/matrixvis/matrixvis.tsx @@ -79,8 +79,6 @@ const MatrixSettings = ({ settings, updateSettings }: VisualizationSettingsPropT const matrixVisRef = React.createRef<{ exportImageInternal: () => void }>(); export const MatrixVisComponent: VISComponentType<MatrixVisProps> = { - displayName: 'MatrixVis', - description: 'Overview & Details', component: React.forwardRef((props: VisualizationPropTypes<MatrixVisProps>, ref) => <MatrixVis {...props} ref={matrixVisRef} />), settingsComponent: MatrixSettings, settings: settings, diff --git a/libs/shared/lib/vis/visualizations/nodelinkvis/nodelinkvis.tsx b/libs/shared/lib/vis/visualizations/nodelinkvis/nodelinkvis.tsx index a62b3e883..d50ab60e5 100644 --- a/libs/shared/lib/vis/visualizations/nodelinkvis/nodelinkvis.tsx +++ b/libs/shared/lib/vis/visualizations/nodelinkvis/nodelinkvis.tsx @@ -270,8 +270,6 @@ const NodelinkSettings = ({ settings, graphMetadata, updateSettings }: Visualiza const nodeLinkVisRef = React.createRef<{ exportImageInternal: () => void }>(); export const NodeLinkComponent: VISComponentType<NodelinkVisProps> = { - displayName: 'NodeLinkVis', - description: 'General Patterns and Connections', component: React.forwardRef((props: VisualizationPropTypes<NodelinkVisProps>, ref) => <NodeLinkVis {...props} ref={nodeLinkVisRef} />), settingsComponent: NodelinkSettings, settings: patchLegacySettings(settings), diff --git a/libs/shared/lib/vis/visualizations/paohvis/paohvis.tsx b/libs/shared/lib/vis/visualizations/paohvis/paohvis.tsx index 918a4c971..f62b8b0c9 100644 --- a/libs/shared/lib/vis/visualizations/paohvis/paohvis.tsx +++ b/libs/shared/lib/vis/visualizations/paohvis/paohvis.tsx @@ -1148,8 +1148,6 @@ const PaohSettings = ({ settings, graphMetadata, updateSettings }: Visualization const paohvisRef = React.createRef<{ exportImageInternal: () => void }>(); export const PaohVisComponent: VISComponentType<PaohVisProps> = { - displayName: 'PaohVis', - description: 'Paths and Connection', component: React.forwardRef((props: VisualizationPropTypes<PaohVisProps>, ref) => <PaohVis {...props} ref={paohvisRef} />), settingsComponent: PaohSettings, settings: settings, diff --git a/libs/shared/lib/vis/visualizations/rawjsonvis/rawjsonvis.tsx b/libs/shared/lib/vis/visualizations/rawjsonvis/rawjsonvis.tsx index 9cfb89121..d7f7b2450 100644 --- a/libs/shared/lib/vis/visualizations/rawjsonvis/rawjsonvis.tsx +++ b/libs/shared/lib/vis/visualizations/rawjsonvis/rawjsonvis.tsx @@ -66,9 +66,7 @@ const RawJSONSettings = ({ settings, updateSettings }: VisualizationSettingsProp }; export const RawJSONComponent: VISComponentType<RawJSONVisProps> = { - displayName: 'RawJSONVis', component: RawJSONVis, - description: '(Raw) Data Export', settingsComponent: RawJSONSettings, settings: settings, exportImage: () => { diff --git a/libs/shared/lib/vis/visualizations/semanticsubstratesvis/semanticsubstratesvis.tsx b/libs/shared/lib/vis/visualizations/semanticsubstratesvis/semanticsubstratesvis.tsx index 4bad7ce70..4cba54b9c 100644 --- a/libs/shared/lib/vis/visualizations/semanticsubstratesvis/semanticsubstratesvis.tsx +++ b/libs/shared/lib/vis/visualizations/semanticsubstratesvis/semanticsubstratesvis.tsx @@ -41,8 +41,6 @@ const settings: SemSubstrProps = { dataPanels: [], }; -const displayName = 'SemanticSubstratesVis'; - const VisSemanticSubstrates = forwardRef<VisSemanticSubstratesHandle, VisualizationPropTypes<SemSubstrProps>>( ({ data, graphMetadata, settings, updateSettings }, refExternal) => { // for sizing the vis @@ -936,8 +934,6 @@ const SemSubstrSettings = ({ settings, updateSettings, graphMetadata }: Visualiz const SemSubstrVisRef = React.createRef<{ exportImageInternal: () => void }>(); export const SemSubstrVisComponent: VISComponentType<SemSubstrProps> = { - displayName: displayName, - description: 'Node/Edge Attribute Exploration', component: React.forwardRef((props: VisualizationPropTypes<SemSubstrProps>, ref) => ( <VisSemanticSubstrates {...props} ref={SemSubstrVisRef} /> )), diff --git a/libs/shared/lib/vis/visualizations/tablevis/tablevis.tsx b/libs/shared/lib/vis/visualizations/tablevis/tablevis.tsx index 23441c163..d4b7e8026 100644 --- a/libs/shared/lib/vis/visualizations/tablevis/tablevis.tsx +++ b/libs/shared/lib/vis/visualizations/tablevis/tablevis.tsx @@ -242,8 +242,6 @@ const TableSettings = ({ settings, graphMetadata, updateSettings }: Visualizatio const tableRef = React.createRef<{ exportImageInternal: () => void }>(); export const TableComponent: VISComponentType<TableProps> = { - displayName: 'TableVis', - description: 'Node Attribute Statistics and Details', component: React.forwardRef((props: VisualizationPropTypes<TableProps>, ref) => <TableVis {...props} ref={tableRef} />), settingsComponent: TableSettings, settings: settings, diff --git a/libs/shared/lib/vis/visualizations/vis1D/Vis1D.tsx b/libs/shared/lib/vis/visualizations/vis1D/Vis1D.tsx index 42f8391d8..739c992f5 100644 --- a/libs/shared/lib/vis/visualizations/vis1D/Vis1D.tsx +++ b/libs/shared/lib/vis/visualizations/vis1D/Vis1D.tsx @@ -155,8 +155,6 @@ const Vis1DSettings = ({ settings, graphMetadata, updateSettings }: Visualizatio const Vis1DRef = React.createRef<Vis1DVisHandle>(); export const Vis1DComponent: VISComponentType<Vis1DProps> = { - displayName: '1Dvis', - description: 'Basic charts', component: React.forwardRef((props: VisualizationPropTypes<Vis1DProps>, ref) => <Vis1D {...props} ref={Vis1DRef} />), settingsComponent: Vis1DSettings, settings: defaultSettings, -- GitLab