fix(Map): Added migration mechanism

This commit is contained in:
DanSylvest
2025-09-28 09:29:42 +03:00
parent f89cd5f44f
commit 5c8753fb96
17 changed files with 155 additions and 66 deletions

View File

@@ -14,7 +14,7 @@ import { Connections } from '@/hooks/Mapper/components/mapRootContent/components
import { ContextMenuSystemMultiple, useContextMenuSystemMultipleHandlers } from '../contexts/ContextMenuSystemMultiple';
import { getSystemById } from '@/hooks/Mapper/helpers';
import { Commands } from '@/hooks/Mapper/types/mapHandlers.ts';
import { Node, useReactFlow, XYPosition } from 'reactflow';
import { Node, useReactFlow, Viewport, XYPosition } from 'reactflow';
import { useCommandsSystems } from '@/hooks/Mapper/mapRootProvider/hooks/api';
import { emitMapEvent, useMapEventListener } from '@/hooks/Mapper/events';
@@ -48,7 +48,7 @@ export const MapWrapper = () => {
linkSignatureToSystem,
systemSignatures,
},
storedSettings: { interfaceSettings, settingsLocal },
storedSettings: { interfaceSettings, settingsLocal, mapSettings, mapSettingsUpdate },
} = useMapRootState();
const {
@@ -83,8 +83,17 @@ export const MapWrapper = () => {
systems,
systemSignatures,
deleteSystems,
mapSettingsUpdate,
});
ref.current = { selectedConnections, selectedSystems, systemContextProps, systems, systemSignatures, deleteSystems };
ref.current = {
selectedConnections,
selectedSystems,
systemContextProps,
systems,
systemSignatures,
deleteSystems,
mapSettingsUpdate,
};
useMapEventListener(event => {
runCommand(event);
@@ -121,6 +130,10 @@ export const MapWrapper = () => {
[update],
);
const handleChangeViewport = useCallback((viewport: Viewport) => {
ref.current.mapSettingsUpdate({ viewport });
}, []);
const handleCommand: OutCommandHandler = useCallback(
event => {
switch (event.type) {
@@ -259,6 +272,7 @@ export const MapWrapper = () => {
onConnectionInfoClick={handleConnectionDbClick}
onSystemContextMenu={handleSystemContextMenu}
onSelectionContextMenu={handleSystemMultipleContext}
onChangeViewport={handleChangeViewport}
minimapClasses={minimapClasses}
isShowMinimap={showMinimap}
showKSpaceBG={isShowKSpace}
@@ -270,6 +284,7 @@ export const MapWrapper = () => {
onAddSystem={onAddSystem}
minimapPlacement={minimapPosition}
localShowShipName={settingsLocal.showShipName}
defaultViewport={mapSettings.viewport}
/>
{openSettings != null && (