mirror of
https://github.com/azaion/ui.git
synced 2026-04-25 15:46:34 +00:00
274800e508
- Port mission-planner flight planning to main app (Tailwind, react-leaflet v5, react-i18next) - Add FlightMap with click-to-add waypoints, draggable markers, polyline with arrows - Add FlightParamsPanel with action modes, waypoint list (drag-reorder), altitude chart, wind, JSON import/export - Add FlightListSidebar with create/delete and telemetry date - Add collapsible left panel with quick action mode shortcuts - Add work area / no-go zone drawing via manual mouse events (L.rectangle) - Add AltitudeDialog and JsonEditorDialog (Tailwind modals) - Add battery/time/distance calculations per waypoint segment - Add satellite/classic map toggle and mini-map on point drag - Add Camera FOV and Communication Addr fields - Add current position display under location search - Merge mission-planner translations under flights.planner.* - Gitignore .superpowers session data
23 lines
758 B
TypeScript
23 lines
758 B
TypeScript
import L from 'leaflet'
|
|
|
|
function pinIcon(color: string) {
|
|
return L.divIcon({
|
|
className: '',
|
|
html: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512" width="24" height="24" fill="${color}"><path d="M384 192c0 87.4-117 243-168.3 307.2a24 24 0 0 1-47.4 0C117 435 0 279.4 0 192 0 86 86 0 192 0s192 86 192 192z"/></svg>`,
|
|
iconSize: [24, 24],
|
|
iconAnchor: [12, 24],
|
|
popupAnchor: [0, -24],
|
|
})
|
|
}
|
|
|
|
export const pointIconGreen = pinIcon('#1ed013')
|
|
export const pointIconBlue = pinIcon('#228be6')
|
|
export const pointIconRed = pinIcon('#fa5252')
|
|
|
|
export const defaultIcon = new L.Icon({
|
|
iconUrl: 'https://unpkg.com/leaflet@1.7.1/dist/images/marker-icon.png',
|
|
iconSize: [25, 41],
|
|
iconAnchor: [12, 41],
|
|
popupAnchor: [1, -34],
|
|
})
|