'use client'; import { MapPin } from 'lucide-react'; import { useEffect, useRef } from 'react'; export default function GasStationMap() { const mapRef = useRef(null); useEffect(() => { // This is a placeholder for a real map implementation // In a real application, you would use a mapping library like Mapbox, Google Maps, or Leaflet if (mapRef.current) { const canvas = document.createElement('canvas'); canvas.width = mapRef.current.clientWidth; canvas.height = mapRef.current.clientHeight; mapRef.current.appendChild(canvas); const ctx = canvas.getContext('2d'); if (ctx) { // Draw a simple map placeholder ctx.fillStyle = '#f3f4f6'; ctx.fillRect(0, 0, canvas.width, canvas.height); // Draw some roads ctx.strokeStyle = '#d1d5db'; ctx.lineWidth = 5; // Horizontal roads for (let i = 1; i < 5; i++) { ctx.beginPath(); ctx.moveTo(0, canvas.height * (i / 5)); ctx.lineTo(canvas.width, canvas.height * (i / 5)); ctx.stroke(); } // Vertical roads for (let i = 1; i < 8; i++) { ctx.beginPath(); ctx.moveTo(canvas.width * (i / 8), 0); ctx.lineTo(canvas.width * (i / 8), canvas.height); ctx.stroke(); } // Draw gas station markers const stations = [ { x: 0.2, y: 0.3 }, { x: 0.5, y: 0.2 }, { x: 0.7, y: 0.4 }, { x: 0.3, y: 0.6 }, { x: 0.6, y: 0.7 }, { x: 0.8, y: 0.8 }, { x: 0.1, y: 0.9 }, ]; stations.forEach((station) => { // Draw marker ctx.fillStyle = '#ef4444'; ctx.beginPath(); ctx.arc( station.x * canvas.width, station.y * canvas.height, 10, 0, 2 * Math.PI, ); ctx.fill(); // Draw white border ctx.strokeStyle = 'white'; ctx.lineWidth = 2; ctx.beginPath(); ctx.arc( station.x * canvas.width, station.y * canvas.height, 10, 0, 2 * Math.PI, ); ctx.stroke(); }); // Add city names ctx.fillStyle = '#1f2937'; ctx.font = 'bold 16px Arial'; ctx.fillText('Душанбе', canvas.width * 0.45, canvas.height * 0.15); ctx.fillText('Худжанд', canvas.width * 0.2, canvas.height * 0.25); ctx.fillText('Куляб', canvas.width * 0.7, canvas.height * 0.35); ctx.fillText('Бохтар', canvas.width * 0.3, canvas.height * 0.55); ctx.fillText('Хорог', canvas.width * 0.6, canvas.height * 0.65); ctx.fillText('Истаравшан', canvas.width * 0.8, canvas.height * 0.75); ctx.fillText('Пенджикент', canvas.width * 0.1, canvas.height * 0.85); } } return () => { if (mapRef.current) { while (mapRef.current.firstChild) { mapRef.current.removeChild(mapRef.current.firstChild); } } }; }, []); return (
Наши заправки

Всего станций: 25

); }