From 8a52449dfe141d53ff09fb30a3dcb185418d17e3 Mon Sep 17 00:00:00 2001 From: igurielidze Date: Tue, 31 Mar 2026 16:28:09 +0400 Subject: [PATCH] Render all non-conveyance devices on top in SVG/JSON export All small/overlay devices (PE, FIO, BCN, SOL, JR, S, SS, EPC, DPM, PDP, MCM, PS, diverter, camera) render LAST so they're on top of conveyors and clickable in SCADA. Co-Authored-By: Claude Opus 4.6 (1M context) --- svelte-app/src/lib/export.ts | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/svelte-app/src/lib/export.ts b/svelte-app/src/lib/export.ts index 37bb01b..1ea53bf 100644 --- a/svelte-app/src/lib/export.ts +++ b/svelte-app/src/lib/export.ts @@ -178,13 +178,24 @@ async function buildSvgString(): Promise { ` `, ]; - // Overlay types render on top of base conveyance + // Overlay types render LAST (on top) so they're clickable in SCADA const OVERLAY_IDS = new Set([ 'photoeye', 'photoeye_v', 'fio_sio_fioh', 'fio_sio_fioh_v', 'dpm', 'dpm_v', 'pdp', 'pdp_v', 'mcm', 'mcm_v', + 'beacon', 'beacon_v', + 'solenoid', 'solenoid_v', + 'jam_reset', 'jam_reset_v', + 'start', 'start_v', + 'start_stop', 'start_stop_v', + 'chute_enable', 'chute_enable_v', + 'package_release', 'package_release_v', + 'pressure_sensor', 'pressure_sensor_v', + 'ip_camera', 'ip_camera_v', + 'diverter', 'diverter_v', + 'epc', 'epc_v', ]); const visible = layout.symbols.filter(s => !s.hidden && !layout.hiddenGroups.has(getSymbolGroup(s.symbolId)));