From ea6a6471e4b0ac782fddf2286e739d749c49a3f2 Mon Sep 17 00:00:00 2001 From: PotapovaA Date: Wed, 29 Jul 2026 16:47:07 +0300 Subject: [PATCH] =?UTF-8?q?=D0=BF=D1=80=D0=B0=D0=B2=D0=BA=D0=B0=20=D0=B4?= =?UTF-8?q?=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8=D1=8F=20=D1=81?= =?UTF-8?q?=D1=82=D1=80=D0=BE=D0=BA=D0=B8=20=D0=B2=204=20=D1=84=D0=BE?= =?UTF-8?q?=D1=80=D0=BC=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../RealtimeTable/hooks/useRealtimeData.js | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/web/src/components/RealtimeTable/hooks/useRealtimeData.js b/web/src/components/RealtimeTable/hooks/useRealtimeData.js index 31c2dc9..330c2c8 100644 --- a/web/src/components/RealtimeTable/hooks/useRealtimeData.js +++ b/web/src/components/RealtimeTable/hooks/useRealtimeData.js @@ -238,9 +238,13 @@ const useRealtimeData = (formId, sheetName, direction, formType, year) => { }); }); - const unsubscribeProgramAdds = subscribeToProgramAdds((data) => { - const newRow = data.result[1][0]; + const unsubscribeProgramAdds = subscribeToProgramAdds((msg) => { + let newRow = msg.result[1][0]; setData((prevData) => { + const hasRoot = prevData.length > 0 && prevData[0].row_type === "ROOT"; + if (hasRoot) { + newRow = msg.result[1][1]; + } const updateData = structuredClone(prevData); const [row_type, depth, sort_order, dataRow] = newRow; const newRowObject = { @@ -250,8 +254,11 @@ const useRealtimeData = (formId, sheetName, direction, formType, year) => { subRows: [], data: dataRow, }; - const newData = [...updateData, newRowObject]; - return newData; + if (hasRoot) { + updateData[0].subRows.push(newRowObject); + return updateData; + } + return [...updateData, newRowObject]; }); }); -- 2.47.2