From 97b8b27ddf29560aba07ec36d752b7fa764dfaff Mon Sep 17 00:00:00 2001 From: Hamza-Ayed Date: Tue, 18 Aug 2026 09:55:52 +0300 Subject: [PATCH] feat(tactical): enhance symbols palette, instructions, and fix header layout spacing --- apps/web/src/pages/TacticalDefenseView.tsx | 79 +++++++++++++++++----- 1 file changed, 61 insertions(+), 18 deletions(-) diff --git a/apps/web/src/pages/TacticalDefenseView.tsx b/apps/web/src/pages/TacticalDefenseView.tsx index 6f772d1..2bb142b 100644 --- a/apps/web/src/pages/TacticalDefenseView.tsx +++ b/apps/web/src/pages/TacticalDefenseView.tsx @@ -229,7 +229,14 @@ export const TacticalDefenseView: React.FC = () => { // Tactical Symbols Layer initialMap.addSource('tactical-symbols-src', { type: 'geojson', - data: { type: 'FeatureCollection', features: [] } + data: { + type: 'FeatureCollection', + features: DEFAULT_SYMBOLS.map(s => ({ + type: 'Feature', + properties: { type: s.type, name: s.name }, + geometry: { type: 'Point', coordinates: [s.lng, s.lat] } + })) as any + } }); initialMap.addLayer({ @@ -247,6 +254,7 @@ export const TacticalDefenseView: React.FC = () => { 'radar', '#06b6d4', 'checkpoint', '#eab308', 'minefield', '#dc2626', + 'hlz', '#10b981', '#a855f7' ], 'circle-stroke-color': '#ffffff', @@ -433,22 +441,23 @@ export const TacticalDefenseView: React.FC = () => { flexDirection: 'column', background: '#0a0e17', color: '#f8fafc', - fontFamily: "'IBM Plex Sans Arabic', Inter, system-ui, sans-serif", + fontFamily: '-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "SF Pro Arabic", system-ui, sans-serif', direction: 'rtl', - overflow: 'hidden' + overflow: 'hidden', + paddingTop: 56 }}> {/* Top Military HUD Header */}
{

+
+ 🎯 طريقة التثبيت: اختر نوع الرمز واسم الوحدة، ثم انقر على أي نقطة بالخريطة لإسقاطه فوراً وتثبيت إحداثياته. +
+
@@ -854,22 +875,26 @@ export const TacticalDefenseView: React.FC = () => { { id: 'friendly', label: '🟦 وحدة صديقة' }, { id: 'hostile', label: '🟥 هدف معادي' }, { id: 'artillery', label: '🟧 مربض مدفعية' }, - { id: 'radar', label: '🟦 محطة رادار' }, + { id: 'radar', label: '🩵 محطة رادار' }, { id: 'checkpoint', label: '🟨 نقطة سيطرة' }, { id: 'op', label: '🟪 نقطة مراقبة' }, + { id: 'minefield', label: '⛔ حقل ألغام' }, + { id: 'hlz', label: '🚁 مهبط مروحيات' }, ].map(sym => (
{/* Active Symbols List */} -
-
الرموز المنتشرة على الخريطة ({symbols.length}):
+
+
+ الرموز المنتشرة ({symbols.length}): + {symbols.length > 0 && ( + + )} +
{symbols.map(s => (
- {s.name} + + + {s.name} +