File size: 1,038 Bytes
c993983
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/** ProcessMapPreview — shows the stored map snapshot image. */

import { useProjectStore } from '../../store/projectStore';

interface Props {
  imgData?: string | null;
}

export default function ProcessMapPreview({ imgData: propImgData }: Props) {
  const snapshots = useProjectStore((s) => s.state.map_snapshots_encoded);
  const currentBase = useProjectStore((s) => s.state.current_base);

  const imgData = propImgData ?? snapshots?.[currentBase ?? 'OpenStreetMap']
    ?? (snapshots ? Object.values(snapshots)[0] : null);

  if (!imgData) {
    return (
      <div className="pa-panel">
        <h4 className="pa-panel-title">🗺️ Georeferencing</h4>
        <div className="pa-info-box">Map not available. Lock a map in Data Collection first.</div>
      </div>
    );
  }

  return (
    <div className="pa-panel">
      <h4 className="pa-panel-title">🗺️ Georeferencing</h4>
      <img
        src={`data:image/png;base64,${imgData}`}
        alt="Process map"
        className="pa-map-img"
      />
    </div>
  );
}