diff --git a/mechanic-pwa/frontend/public/scheme/exterior.svg b/mechanic-pwa/frontend/public/scheme/exterior.svg
new file mode 100644
index 0000000..6719c91
--- /dev/null
+++ b/mechanic-pwa/frontend/public/scheme/exterior.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/mechanic-pwa/frontend/public/scheme/salon.svg b/mechanic-pwa/frontend/public/scheme/salon.svg
new file mode 100644
index 0000000..d4e85d5
--- /dev/null
+++ b/mechanic-pwa/frontend/public/scheme/salon.svg
@@ -0,0 +1,58 @@
+
\ No newline at end of file
diff --git a/mechanic-pwa/frontend/src/components/inspection/AddMarkerDialog.tsx b/mechanic-pwa/frontend/src/components/inspection/AddMarkerDialog.tsx
index cfa218e..95d734e 100644
--- a/mechanic-pwa/frontend/src/components/inspection/AddMarkerDialog.tsx
+++ b/mechanic-pwa/frontend/src/components/inspection/AddMarkerDialog.tsx
@@ -39,12 +39,20 @@ const SEVERITIES: { value: string; label: string }[] = [
{ value: "severe", label: "Тяжёлое" },
];
+function humanizeSide(side: string): string {
+ if (side === "tires") return "Резина";
+ const m = /^zone-(\d+)$/.exec(side);
+ if (m) return `Зона ${m[1]}`;
+ // Legacy named sides
+ return side;
+}
+
interface Props {
open: boolean;
inspectionId: number;
- view: string;
- x: number;
- y: number;
+ side: string; // already-formatted side string ("zone-23", "tires", etc.)
+ x?: number | null; // optional — zone-only markers leave this null
+ y?: number | null;
onClose: () => void;
onCreated: (marker: MarkerSummary) => void;
}
@@ -52,7 +60,7 @@ interface Props {
export function AddMarkerDialog({
open,
inspectionId,
- view,
+ side,
x,
y,
onClose,
@@ -114,7 +122,8 @@ export function AddMarkerDialog({
Новая метка
- {view} · {(x * 100).toFixed(1)}%, {(y * 100).toFixed(1)}%
+ {humanizeSide(side)}
+ {x != null && y != null && ` · ${(x * 100).toFixed(1)}%, ${(y * 100).toFixed(1)}%`}