@orbat-mapper/control-measures 0.2.0-alpha.0 → 0.2.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/README.md +90 -34
  2. package/dist/index-D7uBPw7l.d.mts +1653 -0
  3. package/dist/index.d.mts +1 -1353
  4. package/dist/index.mjs +1 -4964
  5. package/dist/preview/index.d.mts +45 -0
  6. package/dist/preview/index.mjs +211 -0
  7. package/dist/renderControlMeasure-C7pY-TcL.mjs +6465 -0
  8. package/media/airborne-attack.svg +1 -0
  9. package/media/ambush.svg +1 -0
  10. package/media/antitank-ditch-completed.svg +1 -0
  11. package/media/antitank-ditch-under-construction.svg +1 -0
  12. package/media/antitank-wall.svg +1 -0
  13. package/media/attack-by-fire.svg +1 -0
  14. package/media/attack-helicopter.svg +1 -0
  15. package/media/battle-position.svg +1 -0
  16. package/media/block-arrow.svg +1 -0
  17. package/media/block-mission-task.svg +1 -0
  18. package/media/block.svg +1 -0
  19. package/media/boundary.svg +1 -0
  20. package/media/breach.svg +1 -0
  21. package/media/bypass.svg +1 -0
  22. package/media/canalize.svg +1 -0
  23. package/media/classic-arrow.svg +1 -0
  24. package/media/clear.svg +1 -0
  25. package/media/delay.svg +1 -0
  26. package/media/disrupt.svg +1 -0
  27. package/media/final-protective-fire-left.svg +1 -0
  28. package/media/final-protective-fire-right.svg +1 -0
  29. package/media/fix.svg +1 -0
  30. package/media/flot.svg +1 -0
  31. package/media/fortified-area.svg +1 -0
  32. package/media/fortified-line.svg +1 -0
  33. package/media/isolate.svg +1 -0
  34. package/media/main-attack.svg +1 -0
  35. package/media/obstacle-bypass-difficult.svg +1 -0
  36. package/media/obstacle-bypass-easy.svg +1 -0
  37. package/media/obstacle-bypass-impossible.svg +1 -0
  38. package/media/principal-direction-of-fire.svg +1 -0
  39. package/media/search-area.svg +1 -0
  40. package/media/support-by-fire.svg +1 -0
  41. package/media/supporting-attack.svg +1 -0
  42. package/media/turn.svg +1 -0
  43. package/package.json +8 -2
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Airborne Attack"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M74.60 35.40 L59.40 35.40 L40.40 12.60 L40.40 5.00 L21.40 24.00 L40.40 43.00 L40.40 35.40 L59.40 12.60 L74.60 12.60" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Ambush"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M51.17 20.83 L29.00 43.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M34.70 41.10 L29.00 43.00 L30.90 37.30" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M67.00 30.33 L65.75 29.90 L64.52 29.43 L63.33 28.94 L62.16 28.42 L61.02 27.87 L59.91 27.29 L58.82 26.69 L57.77 26.06 L56.74 25.39 L55.74 24.70 L54.77 23.98 L53.83 23.24 L52.91 22.46 L52.02 21.66 L51.17 20.83 L50.34 19.98 L49.54 19.09 L48.76 18.17 L48.02 17.23 L47.30 16.26 L46.61 15.26 L45.94 14.23 L45.31 13.18 L44.71 12.09 L44.13 10.98 L43.58 9.84 L43.06 8.67 L42.57 7.48 L42.10 6.25 L41.67 5.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M61.02 27.87 L64.82 24.07" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M55.74 24.70 L59.54 20.90" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M51.17 20.83 L54.97 17.03" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M47.30 16.26 L51.10 12.46" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M44.13 10.98 L47.93 7.18" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Ditch - Completed"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M5.00 25.93 L7.26 22.07 L9.52 25.93 L5.00 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M9.52 25.93 L11.79 22.07 L14.06 25.93 L9.52 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M14.06 25.93 L16.32 22.07 L18.58 25.93 L14.06 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M18.58 25.93 L20.84 22.07 L23.10 25.93 L18.58 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M23.10 25.93 L25.36 22.07 L27.64 25.93 L23.10 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M27.64 25.93 L29.90 22.07 L32.16 25.93 L27.64 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M32.16 25.93 L34.42 22.07 L36.68 25.93 L32.16 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M36.68 25.93 L38.94 22.07 L41.21 25.93 L36.68 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M41.21 25.93 L43.48 22.07 L45.74 25.93 L41.21 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M45.74 25.93 L48.00 22.07 L50.26 25.93 L45.74 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M50.26 25.93 L52.52 22.07 L54.79 25.93 L50.26 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M54.79 25.93 L57.06 22.07 L59.32 25.93 L54.79 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M59.32 25.93 L61.58 22.07 L63.84 25.93 L59.32 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M63.84 25.93 L66.10 22.07 L68.36 25.93 L63.84 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M68.36 25.93 L70.64 22.07 L72.90 25.93 L68.36 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M72.90 25.93 L75.16 22.07 L77.42 25.93 L72.90 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M77.42 25.93 L79.68 22.07 L81.94 25.93 L77.42 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M81.94 25.93 L84.21 22.07 L86.48 25.93 L81.94 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M86.48 25.93 L88.74 22.07 L91.00 25.93 L86.48 25.93 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Ditch - Under Construction"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M5.00 25.93 L91.00 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M5.00 25.93 L7.26 22.07 L9.52 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M9.52 25.93 L11.79 22.07 L14.06 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M14.06 25.93 L16.32 22.07 L18.58 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M18.58 25.93 L20.84 22.07 L23.10 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M23.10 25.93 L25.36 22.07 L27.64 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M27.64 25.93 L29.90 22.07 L32.16 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M32.16 25.93 L34.42 22.07 L36.68 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M36.68 25.93 L38.94 22.07 L41.21 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M41.21 25.93 L43.48 22.07 L45.74 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M45.74 25.93 L48.00 22.07 L50.26 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M50.26 25.93 L52.52 22.07 L54.79 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M54.79 25.93 L57.06 22.07 L59.32 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M59.32 25.93 L61.58 22.07 L63.84 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M63.84 25.93 L66.10 22.07 L68.36 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M68.36 25.93 L70.64 22.07 L72.90 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M72.90 25.93 L75.16 22.07 L77.42 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M77.42 25.93 L79.68 22.07 L81.94 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M81.94 25.93 L84.21 22.07 L86.48 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M86.48 25.93 L88.74 22.07 L91.00 25.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Antitank Wall"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M5.00 22.07 L7.47 22.07 L9.30 25.93 L11.13 22.07 L16.07 22.07 L17.90 25.93 L19.73 22.07 L24.67 22.07 L26.50 25.93 L28.33 22.07 L33.27 22.07 L35.10 25.93 L36.93 22.07 L41.87 22.07 L43.70 25.93 L45.53 22.07 L50.47 22.07 L52.30 25.93 L54.13 22.07 L59.07 22.07 L60.90 25.93 L62.73 22.07 L67.67 22.07 L69.50 25.93 L71.33 22.07 L76.27 22.07 L78.10 25.93 L79.93 22.07 L84.87 22.07 L86.70 25.93 L88.53 22.07 L91.00 22.07" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Attack by Fire"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M58.62 33.13 L67.00 33.13" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M38.87 13.38 L38.87 5.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M48.75 23.25 L29.00 43.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M58.62 33.13 L38.87 13.38" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M37.89 40.04 L29.00 43.00 L31.96 34.11" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Attack Helicopter"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M74.60 35.40 L59.40 35.40 L40.40 12.60 L40.40 5.00 L21.40 24.00 L40.40 43.00 L40.40 35.40 L59.40 12.60 L74.60 12.60" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M49.90 36.83 L49.90 6.90" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M49.90 41.10 L53.32 36.83 L46.48 36.83 L49.90 41.10 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M44.77 6.90 L55.03 6.90" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M49.90 24.00 L46.48 26.05 L46.48 21.95 L49.90 24.00 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M49.90 24.00 L53.32 26.05 L53.32 21.95 L49.90 24.00 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Battle Position"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M19.57 33.43 L34.59 33.43" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M61.41 33.43 L76.43 33.43 L76.43 5.00 L19.57 5.00 L19.57 33.43" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M40.34 23.85 L40.34 43.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M55.66 23.85 L55.66 43.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Block Arrow"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M5.00 15.40 L62.83 15.40 L77.66 15.40 L77.66 12.14 L91.00 24.00 L77.66 35.86 L77.66 32.60 L62.83 32.60 L5.00 32.60 L5.00 15.40 Z" fill="#1e293b" fill-opacity="0" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Block"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M76.50 5.00 L76.50 43.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M76.50 24.00 L51.80 24.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M44.20 24.00 L19.50 24.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><text x="48" y="24" fill="#1e293b" font-size="11" font-weight="600" text-anchor="middle" dominant-baseline="central" transform="rotate(0.000 48.000 24.000)">B</text></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Block"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M76.50 5.00 L76.50 43.00 L76.50 24.00 L19.50 24.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Boundary"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M5.00 24.00 L39.89 24.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M56.11 24.00 L91.00 24.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M43.37 29.79 L43.37 18.21" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M52.63 29.79 L52.63 18.21" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Breach"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M17.28 35.72 L10.00 43.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M13.64 39.36 L13.64 5.00 L41.13 5.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M54.87 5.00 L82.36 5.00 L82.36 39.36" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M78.72 35.72 L86.00 43.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><text x="48" y="5" fill="#1e293b" font-size="11" font-weight="600" text-anchor="middle" dominant-baseline="central" transform="rotate(-270.000 48.000 5.000)">B</text></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Bypass"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M14.56 33.88 L10.00 43.00 L5.44 33.88" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M10.00 43.00 L10.00 5.00 L40.40 5.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M55.60 5.00 L86.00 5.00 L86.00 43.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M90.56 33.88 L86.00 43.00 L81.44 33.88" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><text x="48" y="5" fill="#1e293b" font-size="11" font-weight="600" text-anchor="middle" dominant-baseline="central" transform="rotate(-270.000 48.000 5.000)">B</text></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Canalize"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M17.28 43.00 L10.00 35.72" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M13.64 39.36 L13.64 5.00 L41.13 5.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M54.87 5.00 L82.36 5.00 L82.36 39.36" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M78.72 43.00 L86.00 35.72" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><text x="48" y="5" fill="#1e293b" font-size="11" font-weight="600" text-anchor="middle" dominant-baseline="central" transform="rotate(-270.000 48.000 5.000)">C</text></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Classic Arrow"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M5.00 24.00 L73.80 24.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M91.00 24.00 L73.80 17.98 L73.80 30.02 L91.00 24.00 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Clear"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M10.00 43.00 L86.00 43.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M21.40 5.00 L21.40 43.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M29.00 31.60 L21.40 43.00 L13.80 31.60" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M48.00 5.00 L48.00 20.20" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M48.00 27.80 L48.00 43.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M55.60 31.60 L48.00 43.00 L40.40 31.60" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M74.60 5.00 L74.60 43.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M82.20 31.60 L74.60 43.00 L67.00 31.60" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><text x="48" y="24" fill="#1e293b" font-size="11" font-weight="600" text-anchor="middle" dominant-baseline="central" transform="rotate(-270.000 48.000 24.000)">C</text></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Delay"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M5.59 38.93 L33.41 38.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M45.62 38.93 L73.45 38.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M13.73 43.00 L5.59 38.93 L13.73 34.86" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M73.45 38.93 L75.11 38.85 L76.76 38.60 L78.37 38.20 L79.94 37.64 L81.44 36.93 L82.87 36.07 L84.21 35.08 L85.44 33.96 L86.56 32.73 L87.55 31.39 L88.41 29.96 L89.12 28.46 L89.68 26.89 L90.09 25.28 L90.33 23.63 L90.41 21.96 L90.33 20.30 L90.09 18.65 L89.68 17.04 L89.12 15.47 L88.41 13.97 L87.55 12.54 L86.56 11.20 L85.44 9.97 L84.21 8.85 L82.87 7.86 L81.44 7.00 L79.94 6.29 L78.37 5.73 L76.76 5.33 L75.11 5.08 L73.45 5.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><text x="39.51785714285714" y="38.92857142857143" fill="#1e293b" font-size="11" font-weight="600" text-anchor="middle" dominant-baseline="central" transform="rotate(0.000 39.518 38.929)">D</text></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Disrupt"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M40.33 9.38 L40.33 38.62" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M40.33 9.38 L75.40 9.38" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M40.33 24.00 L60.06 24.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M40.33 38.62 L51.29 38.62" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M11.83 24.00 L40.33 24.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M75.40 5.00 L84.17 9.38 L75.40 13.77 L75.40 5.00 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M60.06 19.62 L68.83 24.00 L60.06 28.38 L60.06 19.62 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M51.29 34.23 L60.06 38.62 L51.29 43.00 L51.29 34.23 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Final Protective Fire (Left)"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M48.00 43.00 L10.00 5.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M10.87 9.44 L10.00 5.00 L14.45 5.88" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M48.00 43.00 L86.00 5.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M81.55 5.88 L86.00 5.00 L85.13 9.44" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M44.20 39.20 L13.80 8.80 L14.94 7.66 L45.34 38.06 L44.20 39.20 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Final Protective Fire (Right)"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M48.00 43.00 L10.00 5.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M10.87 9.44 L10.00 5.00 L14.45 5.88" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M48.00 43.00 L86.00 5.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M81.55 5.88 L86.00 5.00 L85.13 9.44" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M51.80 39.20 L82.20 8.80 L81.06 7.66 L50.66 38.06 L51.80 39.20 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/></svg>
package/media/fix.svg ADDED
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Fix"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M5.00 24.00 L22.20 24.00 L32.52 31.89 L48.00 16.11 L63.48 31.89 L73.80 24.00 L91.00 24.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M91.00 24.00 L79.73 31.89" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M91.00 24.00 L79.73 16.11" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/></svg>
package/media/flot.svg ADDED
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Forward line of own troops (FLOT)"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M5.00 27.86 L5.15 26.35 L5.58 24.90 L6.31 23.56 L7.27 22.39 L8.44 21.45 L9.76 20.72 L11.23 20.28 L12.72 20.14 L14.24 20.28 L15.68 20.72 L17.02 21.45 L18.19 22.39 L19.16 23.56 L19.86 24.90 L20.31 26.35 L20.45 27.86 L20.60 26.35 L21.05 24.90 L21.75 23.56 L22.72 22.39 L23.89 21.45 L25.23 20.72 L26.67 20.28 L28.17 20.14 L29.68 20.28 L31.13 20.72 L32.47 21.45 L33.64 22.39 L34.60 23.56 L35.31 24.90 L35.75 26.35 L35.91 27.86 L36.05 26.35 L36.49 24.90 L37.20 23.56 L38.16 22.39 L39.33 21.45 L40.67 20.72 L42.12 20.28 L43.63 20.14 L45.13 20.28 L46.59 20.72 L47.91 21.45 L49.08 22.39 L50.05 23.56 L50.77 24.90 L51.20 26.35 L51.35 27.86 L51.51 26.35 L51.94 24.90 L52.66 23.56 L53.62 22.39 L54.79 21.45 L56.12 20.72 L57.56 20.28 L59.08 20.14 L60.59 20.28 L62.04 20.72 L63.38 21.45 L64.55 22.39 L65.51 23.56 L66.21 24.90 L66.66 26.35 L66.80 27.86 L66.95 26.35 L67.38 24.90 L68.11 23.56 L69.07 22.39 L70.24 21.45 L71.58 20.72 L73.03 20.28 L74.52 20.14 L76.04 20.28 L77.48 20.72 L78.82 21.45 L79.99 22.39 L80.96 23.56 L81.66 24.90 L82.11 26.35 L82.26 27.86 L82.52 26.37 L83.28 25.06 L84.45 24.08 L85.87 23.56 L87.39 23.56 L88.82 24.08 L89.99 25.06 L90.74 26.37 L91.00 27.86" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Fortified Area"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M10.00 43.00 L11.73 43.00 L11.73 39.59 L15.18 39.59 L15.18 43.00 L16.91 43.00 L18.63 43.00 L18.63 39.59 L22.09 39.59 L22.09 43.00 L23.82 43.00 L25.54 43.00 L25.54 39.59 L29.00 39.59 L29.00 43.00 L30.73 43.00 L32.46 43.00 L32.46 39.59 L35.91 39.59 L35.91 43.00 L37.63 43.00 L39.37 43.00 L39.37 39.59 L42.82 39.59 L42.82 43.00 L44.54 43.00 L46.27 43.00 L46.27 39.59 L49.73 39.59 L49.73 43.00 L51.46 43.00 L53.18 43.00 L53.18 39.59 L56.63 39.59 L56.63 43.00 L58.37 43.00 L60.09 43.00 L60.09 39.59 L63.54 39.59 L63.54 43.00 L65.27 43.00 L67.00 43.00 L67.00 39.59 L70.46 39.59 L70.46 43.00 L72.18 43.00 L73.91 43.00 L73.91 39.59 L77.37 39.59 L77.37 43.00 L79.09 43.00 L80.82 43.00 L80.82 39.59 L84.27 39.59 L84.27 43.00 L86.00 43.00 L86.00 41.42 L82.59 41.42 L82.59 38.25 L86.00 38.25 L86.00 36.67 L86.00 35.08 L82.59 35.08 L82.59 31.92 L86.00 31.92 L86.00 30.33 L86.00 28.75 L82.59 28.75 L82.59 25.58 L86.00 25.58 L86.00 24.00 L86.00 22.42 L82.59 22.42 L82.59 19.25 L86.00 19.25 L86.00 17.67 L86.00 16.08 L82.59 16.08 L82.59 12.92 L86.00 12.92 L86.00 11.33 L86.00 9.75 L82.59 9.75 L82.59 6.58 L86.00 6.58 L86.00 5.00 L84.27 5.00 L84.27 8.41 L80.82 8.41 L80.82 5.00 L79.09 5.00 L77.37 5.00 L77.37 8.41 L73.91 8.41 L73.91 5.00 L72.18 5.00 L70.46 5.00 L70.46 8.41 L67.00 8.41 L67.00 5.00 L65.27 5.00 L63.54 5.00 L63.54 8.41 L60.09 8.41 L60.09 5.00 L58.37 5.00 L56.63 5.00 L56.63 8.41 L53.18 8.41 L53.18 5.00 L51.46 5.00 L49.73 5.00 L49.73 8.41 L46.27 8.41 L46.27 5.00 L44.54 5.00 L42.82 5.00 L42.82 8.41 L39.37 8.41 L39.37 5.00 L37.63 5.00 L35.91 5.00 L35.91 8.41 L32.46 8.41 L32.46 5.00 L30.73 5.00 L29.00 5.00 L29.00 8.41 L25.54 8.41 L25.54 5.00 L23.82 5.00 L22.09 5.00 L22.09 8.41 L18.63 8.41 L18.63 5.00 L16.91 5.00 L15.18 5.00 L15.18 8.41 L11.73 8.41 L11.73 5.00 L10.00 5.00 L10.00 6.58 L13.41 6.58 L13.41 9.75 L10.00 9.75 L10.00 11.33 L10.00 12.92 L13.41 12.92 L13.41 16.08 L10.00 16.08 L10.00 17.67 L10.00 19.25 L13.41 19.25 L13.41 22.42 L10.00 22.42 L10.00 24.00 L10.00 25.58 L13.41 25.58 L13.41 28.75 L10.00 28.75 L10.00 30.33 L10.00 31.92 L13.41 31.92 L13.41 35.08 L10.00 35.08 L10.00 36.67 L10.00 38.25 L13.41 38.25 L13.41 41.42 L10.00 41.42 L10.00 43.00 Z" fill="#1e293b" fill-opacity="0" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Fortified Line"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M5.00 27.86 L8.58 27.86 L8.58 20.14 L15.75 20.14 L15.75 27.86 L19.33 27.86 L22.92 27.86 L22.92 20.14 L30.08 20.14 L30.08 27.86 L33.67 27.86 L37.25 27.86 L37.25 20.14 L44.42 20.14 L44.42 27.86 L48.00 27.86 L51.58 27.86 L51.58 20.14 L58.75 20.14 L58.75 27.86 L62.33 27.86 L65.92 27.86 L65.92 20.14 L73.08 20.14 L73.08 27.86 L76.67 27.86 L80.25 27.86 L80.25 20.14 L87.42 20.14 L87.42 27.86 L91.00 27.86" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Isolate"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M67.00 24.00 L66.91 25.85 L66.64 27.69 L66.19 29.48 L65.57 31.23 L64.78 32.91 L63.83 34.50 L62.73 36.00 L61.49 37.38 L60.12 38.63 L58.64 39.74 L57.06 40.70 L55.39 41.50 L53.65 42.14 L51.85 42.60 L50.02 42.89 L48.17 43.00 L46.31 42.93 L44.48 42.67 L42.67 42.24 L40.92 41.63 L39.24 40.86 L37.63 39.93 L36.13 38.84 L34.74 37.61 L33.48 36.26 L32.35 34.78 L31.38 33.21 L30.56 31.54 L29.91 29.81 L29.43 28.02 L29.12 26.19 L29.00 24.34 L29.06 22.48 L29.30 20.64 L29.71 18.84 L30.30 17.08 L31.06 15.39 L31.98 13.78 L33.05 12.27 L34.27 10.87 L35.61 9.59 L37.08 8.45 L38.64 7.46 L40.30 6.63 L42.03 5.96 L43.82 5.46 L45.64 5.14 L47.49 5.01 L49.35 5.05 L51.19 5.27 L53.00 5.67 L54.76 6.24 L56.46 6.99 L58.08 7.89 L59.60 8.95 L61.01 10.15 L62.30 11.49 L63.45 12.94 L64.45 14.50" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M64.22 10.68 L64.45 14.50 L61.26 12.39" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M62.94 35.74 L61.07 32.48 L64.80 32.87" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M54.13 41.98 L54.33 38.23 L57.26 40.59" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M43.35 42.42 L45.56 39.39 L46.73 42.96" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M34.06 36.92 L37.57 35.58 L36.61 39.21" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M29.28 27.24 L32.95 28.03 L30.16 30.55" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M30.53 16.52 L33.18 19.18 L29.47 19.78" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M37.42 8.22 L38.19 11.89 L34.76 10.37" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M47.72 5.00 L46.37 8.50 L44.32 5.36" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M58.11 7.91 L55.07 10.12 L55.07 6.36" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Main Attack"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M74.60 35.40 L59.40 35.40 L40.40 35.40" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M74.60 12.60 L59.40 12.60 L40.40 12.60" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M40.40 43.00 L21.40 24.00 L40.40 5.00 L40.40 12.60 L29.00 24.00 L40.40 35.40 L40.40 43.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Obstacle Bypass Difficult"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M24.25 8.17 L28.05 10.80 L24.25 13.45 L28.05 16.08 L24.25 18.72 L28.05 21.36 L24.25 24.00 L28.05 26.64 L24.25 29.28 L28.05 31.92 L24.25 34.55 L28.05 37.20 L24.25 39.83" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M24.25 8.17 L65.42 8.17" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M24.25 39.83 L65.42 39.83" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M65.42 5.00 L71.75 8.17 L65.42 11.33 L65.42 5.00 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M65.42 36.67 L71.75 39.83 L65.42 43.00 L65.42 36.67 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Obstacle Bypass Easy"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M24.25 8.17 L24.25 39.83" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M24.25 8.17 L65.42 8.17" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M24.25 39.83 L65.42 39.83" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M65.42 5.00 L71.75 8.17 L65.42 11.33 L65.42 5.00 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M65.42 36.67 L71.75 39.83 L65.42 43.00 L65.42 36.67 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Obstacle Bypass Impossible"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M25.20 8.17 L25.20 22.73" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M25.20 25.27 L25.20 39.83" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M25.20 8.17 L66.37 8.17" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M25.20 39.83 L66.37 39.83" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M27.10 22.73 L23.30 22.73" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M27.10 25.27 L23.30 25.27" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M66.37 5.00 L72.70 8.17 L66.37 11.33 L66.37 5.00 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M66.37 36.67 L72.70 39.83 L66.37 43.00 L66.37 36.67 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Principal Direction of Fire"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M48.00 43.00 L10.00 5.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M10.87 9.44 L10.00 5.00 L14.45 5.88" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M48.00 43.00 L86.00 5.00" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M81.55 5.88 L86.00 5.00 L85.13 9.44" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Search Area"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M14.67 38.33 L51.33 43.00 L44.67 33.67 L73.40 37.32" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M14.67 38.33 L30.67 17.67 L32.00 25.67 L44.54 9.47" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M81.33 38.33 L73.90 33.35 L72.89 41.29 L81.33 38.33 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/><path d="M48.00 5.00 L42.30 7.74 L46.77 11.21 L48.00 5.00 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Support By Fire"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M26.50 33.78 L17.38 42.89" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M69.50 33.78 L78.62 42.89" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M26.50 33.78 L5.00 5.11" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M69.50 33.78 L91.00 5.11" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M26.50 33.78 L69.50 33.78" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M7.15 16.93 L5.00 5.11 L15.75 10.48" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M80.25 10.48 L91.00 5.11 L88.85 16.93" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Supporting Attack"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M74.60 35.40 L59.40 35.40 L40.40 35.40 L40.40 43.00 L21.40 24.00 L40.40 5.00 L40.40 12.60 L59.40 12.60 L74.60 12.60" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/></svg>
package/media/turn.svg ADDED
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Turn"><rect width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M91.00 13.89 L90.17 14.91 L89.31 15.91 L88.44 16.89 L87.53 17.84 L86.61 18.77 L85.66 19.68 L84.69 20.57 L83.69 21.43 L82.68 22.26 L81.64 23.08 L80.59 23.86 L79.52 24.62 L78.43 25.36 L77.32 26.06 L76.20 26.74 L75.06 27.39 L73.89 28.02 L72.72 28.61 L71.54 29.18 L70.34 29.71 L69.13 30.22 L67.90 30.69 L66.67 31.14 L65.42 31.56 L64.17 31.94 L62.90 32.30 L61.62 32.62 L60.34 32.91 L59.05 33.17 L57.76 33.40 L56.46 33.60 L55.16 33.76 L53.85 33.89 L52.54 33.99 L51.23 34.06 L49.92 34.10 L48.60 34.11 L47.29 34.07 L45.97 34.01 L44.66 33.92 L43.36 33.80 L42.05 33.64 L40.75 33.45 L39.45 33.23 L38.16 32.98 L36.88 32.69 L35.61 32.38 L34.34 32.02 L33.08 31.65 L31.83 31.24 L30.59 30.80 L29.36 30.33 L28.15 29.83 L26.95 29.31 L25.76 28.75 L24.58 28.16 L23.42 27.54 L22.28 26.90 L21.15 26.23 L20.03 25.53 L18.94 24.80 L17.87 24.04 L16.81 23.27 L15.77 22.46" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M11.48 27.84 L5.00 13.89 L20.05 17.08 L11.48 27.84 Z" fill="#1e293b" fill-opacity="1" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round"/></svg>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@orbat-mapper/control-measures",
3
- "version": "0.2.0-alpha.0",
3
+ "version": "0.2.0-alpha.2",
4
4
  "description": "Library for drawing tactical graphics and control measures according to MIL-STD-2525 and APP-6 standards.",
5
5
  "license": "MIT",
6
6
  "author": "Orbat Mapper",
@@ -24,10 +24,12 @@
24
24
  "type": "module",
25
25
  "exports": {
26
26
  ".": "./dist/index.mjs",
27
+ "./preview": "./dist/preview/index.mjs",
27
28
  "./package.json": "./package.json"
28
29
  },
29
30
  "files": [
30
31
  "dist",
32
+ "media",
31
33
  "README.md",
32
34
  "LICENSE"
33
35
  ],
@@ -39,6 +41,7 @@
39
41
  "@types/geojson": "^7946.0.16",
40
42
  "publint": "^0.3.21",
41
43
  "tsdown": "^0.22.2",
44
+ "tsx": "^4.22.4",
42
45
  "typescript": "~5.9.3",
43
46
  "vite": "^8.0.16",
44
47
  "vitest": "^4.1.8"
@@ -46,6 +49,9 @@
46
49
  "scripts": {
47
50
  "build": "tsdown",
48
51
  "test": "vitest run",
49
- "lint": "eslint . --fix"
52
+ "lint": "eslint . --fix",
53
+ "generate-previews": "tsx scripts/generate-previews.ts",
54
+ "generate-readme-table": "tsx scripts/generate-readme-table.ts",
55
+ "generate-docs": "pnpm generate-previews && pnpm generate-readme-table"
50
56
  }
51
57
  }