import type { MapAnnotation } from "../types";

export const mapAnnotations: MapAnnotation[] = [
  {
    id: "burst",
    label: "爆管位置",
    coordinate: [121.5215, 30.9084],
    kind: "burst"
  },
  {
    id: "dn600",
    label: "DN600",
    coordinate: [121.512, 30.9102],
    kind: "pipe-label"
  },
  {
    id: "east-gate",
    label: "东直门小区",
    coordinate: [121.545, 30.951],
    kind: "district"
  },
  {
    id: "impact",
    label: "影响范围 约 1.82 km²",
    coordinate: [121.567, 30.896],
    kind: "tooltip"
  }
];

export const impactAreaPolygon = {
  type: "FeatureCollection" as const,
  features: [
    {
      type: "Feature" as const,
      properties: {
        id: "impact-area",
        label: "影响范围",
        area: "1.82 km²"
      },
      geometry: {
        type: "Polygon" as const,
        coordinates: [
          [
            [121.5205, 30.9084],
            [121.548, 30.928],
            [121.604, 30.918],
            [121.626, 30.886],
            [121.584, 30.862],
            [121.538, 30.873],
            [121.506, 30.895],
            [121.5205, 30.9084]
          ]
        ]
      }
    }
  ]
};

export const annotationPoints = {
  type: "FeatureCollection" as const,
  features: mapAnnotations.map((annotation) => ({
    type: "Feature" as const,
    properties: {
      id: annotation.id,
      label: annotation.label,
      kind: annotation.kind
    },
    geometry: {
      type: "Point" as const,
      coordinates: annotation.coordinate
    }
  }))
};
