From 58f48fc9f3bee83b612ca3905b41ad7133bf23a9 Mon Sep 17 00:00:00 2001 From: Ellen Kraffmiller Date: Mon, 2 Mar 2026 09:53:41 -0500 Subject: [PATCH 1/7] refresh unread notifications from NotificationsSection.tsx --- dev-env/datafile-3-original | 1001 +++++++++++++++++ .../domain/hooks/useNeedsUpdate.ts | 27 +- .../domain/hooks/useNotifications.ts | 3 + .../NotificationsSection.tsx | 2 - .../header/LoggedInHeaderActions.spec.tsx | 23 + 5 files changed, 1028 insertions(+), 28 deletions(-) create mode 100644 dev-env/datafile-3-original diff --git a/dev-env/datafile-3-original b/dev-env/datafile-3-original new file mode 100644 index 000000000..19e2f76d8 --- /dev/null +++ b/dev-env/datafile-3-original @@ -0,0 +1,1001 @@ +age,sex,educ,race,income,married +59,1,9,1,0,1 +31,0,1,3,17000,0 +36,1,11,1,0,1 +54,1,11,1,9100,1 +39,0,5,3,37000,0 +34,0,9,1,0,1 +93,1,8,1,6000,1 +69,0,13,1,350000,1 +40,1,11,3,33000,1 +27,1,11,1,25000,0 +59,1,13,1,49000,1 +31,1,11,3,0,1 +73,1,13,4,35500,0 +89,1,9,1,4000,1 +39,1,10,3,15000,0 +51,1,13,4,120000,1 +32,0,9,1,13000,0 +52,0,11,2,45000,0 +24,0,7,1,0,0 +48,1,10,1,4300,1 +51,0,1,3,16000,1 +43,1,14,1,365000,1 +29,0,4,3,20000,0 +44,1,15,1,17900,1 +87,1,8,1,3600,0 +27,1,11,3,10800,0 +58,0,13,1,60900,1 +32,1,11,3,25000,1 +74,1,7,3,6520,0 +28,1,13,4,21000,0 +70,0,15,1,319000,1 +35,0,9,1,30000,0 +36,1,11,3,600,1 +63,1,9,3,35800,1 +21,1,9,3,18000,0 +29,0,1,3,21200,1 +44,0,13,1,50000,1 +35,1,11,3,0,1 +43,0,13,3,69800,1 +59,1,10,4,30000,1 +53,0,5,3,17300,1 +42,0,10,1,38000,1 +32,0,11,1,19000,1 +50,0,16,1,52650,1 +18,0,4,3,0,0 +40,1,13,1,40000,1 +42,1,11,1,7000,0 +52,0,11,1,325000,1 +56,1,14,1,52000,1 +45,1,11,1,0,1 +39,0,8,1,18000,0 +28,0,10,1,49000,1 +46,1,13,1,47000,1 +45,0,11,3,50000,1 +32,1,9,4,12000,1 +22,1,9,1,5000,1 +52,1,15,1,43000,1 +21,0,3,3,12000,1 +60,1,13,1,4000,1 +77,1,11,1,2500,1 +38,0,1,3,1800,0 +40,1,11,3,15700,1 +34,1,11,2,13700,0 +48,1,12,1,76000,1 +69,1,9,1,5010,1 +46,0,11,1,85300,1 +40,0,13,1,149000,0 +26,1,9,3,12000,1 +37,1,14,1,65000,0 +30,0,5,3,13000,1 +70,1,15,4,1800,1 +42,1,4,3,0,0 +24,1,3,3,12500,1 +31,0,9,3,28000,1 +20,0,8,3,8400,0 +33,1,11,1,18500,0 +47,0,7,1,155100,1 +19,1,10,1,0,0 +33,1,5,1,4600,0 +66,1,13,4,4600,1 +23,0,11,1,66000,0 +51,1,9,1,9600,0 +23,0,13,1,23500,0 +47,1,13,1,63000,1 +48,1,8,3,13000,1 +43,1,11,1,8000,1 +31,0,10,3,10400,0 +47,1,3,3,10200,1 +74,0,11,1,24400,0 +93,1,1,2,6000,0 +55,1,11,1,12800,0 +29,1,9,3,24000,0 +33,0,11,3,119000,1 +50,0,2,3,18000,1 +28,0,11,2,8100,1 +29,1,13,1,38000,0 +38,1,10,1,35000,1 +42,0,9,3,50900,1 +50,1,10,1,22640,0 +77,0,4,3,12400,1 +37,1,3,3,0,1 +40,0,11,1,40000,0 +30,0,6,3,40000,1 +19,1,11,1,7000,0 +50,1,9,3,60000,0 +82,1,9,3,690,0 +22,1,9,3,21000,0 +63,0,12,1,94100,1 +48,1,12,1,6800,0 +46,0,15,1,52000,1 +45,1,9,3,0,0 +37,1,10,3,10800,0 +76,0,13,4,680,0 +25,0,9,1,0,0 +40,1,10,3,33000,1 +34,0,9,3,22500,1 +56,1,13,4,2000,1 +43,1,11,3,25000,1 +42,0,14,1,115370,1 +22,1,11,1,0,1 +45,1,11,1,38580,0 +32,1,3,3,16000,1 +23,0,11,3,5600,1 +19,0,10,2,14000,0 +52,1,9,1,109000,0 +44,1,13,4,27000,1 +43,0,13,4,51800,0 +34,1,13,4,0,1 +32,1,13,1,28030,0 +38,0,10,1,11200,0 +40,1,10,1,62700,1 +82,0,14,1,20000,1 +31,1,9,2,23000,0 +42,1,9,1,3000,1 +47,0,1,2,220,0 +66,0,16,1,120000,1 +30,0,9,4,30000,0 +42,1,10,3,28000,0 +50,1,11,1,48700,1 +26,1,10,1,11000,1 +53,0,9,3,6000,0 +22,0,8,4,7000,1 +28,1,2,3,0,1 +25,0,6,3,22000,1 +30,1,11,3,20000,1 +86,1,9,1,12020,1 +33,0,12,3,33000,0 +62,1,11,2,4900,0 +23,1,12,3,0,0 +36,0,12,1,60000,1 +84,1,9,1,5600,1 +29,0,6,1,28000,0 +29,0,11,1,91000,1 +18,1,8,2,0,0 +44,1,13,3,27000,1 +61,0,9,1,15800,1 +72,1,13,1,21600,1 +59,0,13,1,30000,1 +33,0,13,4,92000,1 +51,0,13,1,181000,1 +35,1,15,1,80000,1 +47,1,13,1,75800,0 +50,0,16,4,90000,1 +30,1,11,1,0,0 +31,1,8,2,0,1 +30,0,13,4,62300,1 +77,1,10,1,0,1 +59,0,1,1,30000,1 +22,1,13,1,4800,0 +66,1,12,1,17000,0 +49,1,11,3,36000,0 +44,1,13,1,25000,1 +18,0,7,1,4000,0 +35,0,12,3,27000,0 +38,1,3,3,6200,1 +55,1,9,1,25800,0 +32,0,11,2,33500,0 +29,0,9,1,40000,1 +36,1,9,2,0,0 +21,0,11,1,16000,0 +43,1,13,3,1330,1 +81,0,9,4,21600,1 +45,1,12,1,32000,1 +37,1,8,3,24000,0 +41,1,9,1,31000,1 +46,0,9,1,0,0 +29,1,14,4,37100,1 +40,1,9,1,5800,1 +24,1,5,3,3500,0 +63,1,12,1,86000,1 +61,0,1,3,14400,1 +43,1,12,1,22600,1 +86,1,13,1,37100,0 +38,0,14,4,72000,1 +75,0,3,2,8000,0 +32,0,13,1,110300,0 +63,1,10,1,13100,0 +27,0,11,3,26000,0 +64,0,13,1,125200,1 +71,1,4,1,11900,1 +54,1,11,1,2460,1 +57,1,14,1,47500,1 +56,1,12,1,13900,1 +31,0,15,2,40220,0 +53,0,12,1,40000,1 +29,1,9,1,0,1 +18,0,7,4,5400,0 +27,1,3,3,3000,1 +67,1,1,3,9800,0 +75,0,13,1,44600,1 +27,0,8,1,40000,0 +37,0,13,3,56150,1 +77,1,10,1,14200,0 +38,1,13,1,15000,0 +51,1,12,1,30000,1 +23,1,11,3,10210,1 +34,0,1,3,6000,1 +39,1,14,3,52000,1 +53,1,6,1,0,0 +30,1,10,1,27000,1 +39,1,8,3,29700,0 +40,0,13,1,11000,0 +43,0,14,1,56000,1 +34,1,15,4,77000,0 +72,0,6,1,13800,1 +73,0,11,1,48300,1 +77,1,9,1,11000,0 +43,1,13,1,26180,1 +31,1,5,3,5200,1 +36,0,12,1,80000,0 +61,0,12,1,69000,1 +74,0,11,1,73700,1 +38,1,13,1,40000,1 +45,1,15,2,90000,1 +32,1,12,4,26800,1 +55,0,11,1,50000,1 +51,1,12,1,0,1 +47,1,13,1,0,1 +42,1,9,4,0,1 +30,0,16,1,61200,0 +36,1,13,1,55000,0 +42,1,13,1,3000,1 +65,1,9,1,5200,1 +51,0,13,1,56000,1 +70,1,3,3,18900,1 +57,1,11,1,62700,1 +48,0,2,4,10000,1 +69,1,13,1,4300,1 +76,0,9,1,10100,1 +46,0,9,1,9500,0 +35,0,9,3,1400,1 +72,0,9,1,180000,1 +18,1,9,3,4000,0 +40,1,13,1,0,1 +33,1,13,1,72000,1 +46,0,13,1,45000,1 +51,1,12,1,14030,0 +48,0,11,4,20040,1 +30,0,9,1,9000,0 +28,1,4,3,0,1 +40,1,14,1,940,1 +18,1,7,1,0,0 +37,0,11,1,68000,1 +41,0,11,1,41000,0 +93,1,9,1,19200,1 +52,1,12,1,23000,1 +43,0,3,3,13000,0 +35,1,11,1,8400,1 +34,0,9,1,45000,1 +66,0,11,3,12000,0 +86,1,9,1,23800,0 +42,1,12,2,0,0 +73,1,11,2,16000,0 +19,1,9,3,0,0 +37,0,4,3,52000,1 +85,0,11,1,119700,1 +40,1,3,3,0,1 +73,0,15,1,115000,1 +78,1,13,4,29300,1 +62,1,14,1,325000,1 +48,0,9,3,41600,0 +75,1,8,1,19000,0 +71,1,9,1,39300,0 +29,0,11,6,0,0 +30,0,12,1,36420,1 +74,1,5,4,0,0 +53,1,10,2,0,1 +19,1,7,3,2200,0 +31,0,7,1,0,1 +41,1,9,1,24620,1 +49,1,6,3,0,0 +38,0,12,3,40000,1 +35,1,11,4,71000,1 +45,0,10,1,49000,0 +42,0,14,1,42500,1 +28,0,9,1,0,0 +32,1,1,4,9530,0 +48,1,14,1,27900,0 +27,1,14,1,24020,0 +44,0,13,4,46300,1 +75,1,9,1,18800,0 +52,0,12,1,168000,1 +39,1,12,1,39000,0 +60,0,13,4,167000,1 +34,1,13,3,73000,1 +50,0,12,1,58200,0 +47,1,1,3,7530,1 +48,0,13,1,140500,1 +68,0,13,1,31800,1 +30,0,8,1,50000,1 +67,0,13,1,57200,1 +29,1,5,3,1800,1 +40,1,11,5,56000,0 +84,0,13,1,32100,1 +67,0,4,2,13500,1 +74,0,12,1,13000,0 +72,1,2,3,8200,0 +72,1,9,4,17100,1 +82,1,13,1,8400,1 +24,0,5,3,10000,0 +54,1,10,1,35000,1 +67,0,6,1,7000,1 +18,0,11,4,2200,0 +40,0,11,2,30000,1 +70,1,9,1,4800,1 +73,0,13,1,7200,1 +41,1,14,1,15400,1 +68,0,14,1,44000,1 +82,0,15,1,138300,1 +20,1,3,3,0,0 +31,1,14,1,34000,0 +27,0,9,3,44500,0 +70,1,9,1,7000,1 +49,0,15,1,54000,1 +62,1,10,3,70000,1 +53,0,9,1,16940,0 +40,0,4,3,0,1 +80,0,8,1,28900,1 +36,0,11,4,0,0 +29,0,2,3,28900,1 +38,1,11,3,0,1 +65,1,13,1,0,0 +20,1,9,3,13000,0 +40,1,8,3,10500,1 +42,0,13,1,382000,1 +36,1,5,3,20300,1 +37,0,11,1,52000,1 +25,1,9,2,0,0 +74,1,9,1,7200,1 +40,0,9,1,38000,0 +48,1,4,4,13500,0 +44,0,14,1,138100,0 +40,1,10,3,15000,1 +23,0,11,1,0,0 +66,1,5,2,0,1 +47,0,13,1,35300,0 +58,0,10,1,80000,0 +42,1,9,1,3500,1 +26,0,9,1,24000,0 +32,1,8,3,0,1 +36,0,14,3,61900,1 +22,1,11,1,10600,0 +23,1,12,4,4000,1 +46,1,12,1,8400,0 +23,0,8,3,23500,0 +71,0,15,1,42000,1 +55,1,9,4,10000,1 +34,1,3,3,0,1 +49,0,13,1,12000,0 +42,1,11,2,0,0 +71,0,1,3,9100,1 +28,1,13,3,28000,1 +23,1,12,2,14400,0 +18,1,9,3,0,0 +48,0,10,1,60000,1 +65,0,12,1,22800,0 +44,1,1,3,18000,0 +52,1,13,1,42800,0 +65,0,6,1,22300,0 +20,1,9,1,5900,0 +27,1,13,1,5450,1 +36,1,16,4,0,1 +88,1,11,1,0,1 +84,1,1,4,10500,0 +41,0,13,1,36000,1 +35,0,9,1,30000,1 +30,1,11,1,38700,1 +23,1,13,4,10700,1 +23,0,6,3,6100,0 +51,1,16,1,118000,0 +27,1,13,1,41600,0 +47,1,13,1,0,1 +71,1,9,1,8000,1 +78,1,1,3,9300,0 +44,1,12,1,4930,1 +50,1,9,4,1200,1 +38,0,2,3,16000,1 +25,0,11,1,0,0 +43,0,13,4,25000,1 +20,0,11,4,4200,0 +66,1,9,1,3200,0 +26,0,13,3,28000,0 +62,0,13,1,70000,1 +45,1,11,1,69200,0 +38,1,8,2,1000,1 +51,1,7,1,7200,0 +21,0,13,1,5000,0 +42,1,13,1,2500,0 +20,0,10,4,35400,0 +51,1,9,1,4200,0 +22,1,11,3,19400,0 +65,0,6,3,18500,0 +38,0,9,1,1e+05,1 +33,1,9,3,11000,1 +27,1,12,3,38000,0 +58,0,9,1,99000,1 +73,0,1,3,7200,0 +19,0,11,3,7000,0 +24,1,13,4,100,0 +30,1,11,1,20200,1 +37,0,13,1,55000,1 +51,0,1,3,56300,1 +45,0,9,1,36000,0 +81,1,14,1,6000,0 +61,0,13,1,95300,1 +30,1,12,4,10284,0 +58,1,9,1,37000,0 +58,0,12,2,46050,1 +46,0,4,3,23100,0 +47,1,2,3,19000,1 +23,0,10,2,1500,0 +36,0,8,3,0,1 +82,0,9,1,20700,1 +20,1,11,2,8600,0 +22,1,9,3,0,0 +67,0,14,1,90300,1 +22,0,13,3,15600,0 +79,0,6,3,54600,1 +18,0,8,4,0,0 +48,1,14,1,39000,0 +32,0,9,3,20000,0 +35,0,9,1,13000,0 +49,1,11,1,30000,1 +46,0,11,1,13500,1 +28,0,11,3,10000,0 +50,0,8,3,17900,1 +28,1,9,2,8400,0 +87,1,4,1,8000,1 +49,0,8,1,30300,1 +23,1,6,4,4000,0 +40,1,3,3,20000,1 +26,1,9,3,38600,0 +48,1,9,2,0,0 +82,1,3,2,9900,0 +78,0,5,2,0,0 +34,1,8,1,25000,1 +36,1,13,4,67000,0 +19,1,9,3,3000,0 +31,1,3,3,0,1 +34,0,9,1,14000,1 +19,0,5,3,0,0 +33,0,13,1,109000,0 +93,1,2,3,10000,0 +30,1,16,1,14600,0 +42,1,6,2,0,1 +31,0,3,3,16300,1 +23,0,13,1,28000,1 +62,1,12,1,51350,1 +59,1,2,1,0,1 +88,1,12,1,18500,1 +37,0,12,1,25900,0 +32,1,13,1,47800,0 +42,0,9,1,17700,1 +40,0,13,1,700,0 +64,0,9,1,16000,1 +31,1,14,1,35000,0 +30,0,11,4,36500,1 +69,0,10,1,23500,1 +53,0,12,3,76800,1 +51,1,9,1,52120,0 +27,0,7,3,17000,0 +29,1,12,4,38000,1 +28,1,11,4,9000,1 +42,1,12,3,13300,1 +34,0,9,3,60100,1 +37,0,14,1,95000,1 +31,1,9,3,2000,1 +36,0,9,1,64000,1 +44,1,1,3,0,1 +53,0,11,1,38000,0 +23,1,9,1,9000,0 +37,0,10,4,54300,1 +29,1,8,3,5000,1 +38,0,13,1,90580,1 +57,1,5,1,5100,1 +27,0,8,1,22000,0 +86,1,9,1,8700,0 +75,0,8,1,7400,0 +37,1,12,4,13100,1 +23,0,8,1,30000,0 +63,0,13,2,50000,1 +26,1,11,1,0,1 +51,0,13,1,325000,1 +42,0,9,1,64000,1 +43,1,13,1,0,1 +51,0,14,1,103000,1 +69,0,11,1,90300,1 +52,0,10,1,60000,0 +74,0,13,1,21100,1 +22,0,12,1,31000,1 +43,1,9,1,8610,0 +56,0,11,2,44200,0 +31,1,9,3,4600,0 +38,0,9,3,7200,0 +89,1,13,1,7000,0 +62,1,12,1,10800,1 +75,1,11,1,8200,1 +34,1,12,1,10000,1 +35,0,2,3,32000,1 +35,0,13,1,60000,0 +45,1,9,4,0,1 +19,0,6,3,19000,1 +32,0,8,1,40000,1 +47,1,11,1,65000,0 +72,1,9,1,3600,1 +49,0,14,1,132000,0 +48,0,11,4,49000,0 +32,0,14,1,66200,0 +28,0,11,3,13000,1 +20,0,11,1,1600,0 +57,0,16,1,123000,1 +18,0,10,2,2400,0 +35,0,12,3,27000,1 +45,0,13,4,80000,1 +72,0,8,1,14000,1 +54,0,12,1,125700,1 +39,1,10,3,80000,0 +40,1,9,1,0,1 +63,1,1,3,3030,0 +19,1,10,1,2100,0 +40,1,12,3,17100,0 +59,1,12,1,13000,0 +42,0,13,1,33400,1 +42,0,9,2,0,1 +38,1,16,1,60000,0 +61,0,9,1,38000,1 +55,1,11,3,12600,0 +54,1,13,3,3200,0 +80,0,14,1,41300,1 +46,0,12,4,50000,1 +79,1,13,1,31900,1 +46,0,13,6,140000,1 +28,1,9,1,12000,0 +38,1,11,1,29900,0 +34,1,13,1,31030,1 +22,0,13,4,760,0 +48,0,8,1,57000,0 +42,0,3,3,19200,1 +23,0,9,3,46000,0 +29,1,11,2,30000,0 +65,1,1,4,0,0 +54,0,13,1,42500,1 +34,0,9,2,12100,0 +61,1,9,1,25000,1 +70,1,6,1,0,0 +82,0,9,1,10100,1 +48,0,13,1,44000,1 +66,1,9,1,13800,1 +27,1,13,4,15200,1 +42,0,9,1,14000,1 +47,1,11,1,59000,1 +70,0,13,1,51100,1 +47,0,9,1,27500,1 +47,0,9,1,45000,1 +39,1,9,1,24000,1 +33,1,9,3,2200,0 +84,0,11,1,151800,1 +39,0,9,1,80000,1 +55,1,11,1,0,1 +26,0,13,4,38800,1 +65,0,7,2,40900,1 +78,1,1,4,6400,0 +57,1,9,1,30000,0 +35,0,9,1,32000,1 +28,0,13,3,40000,0 +74,1,10,2,7900,0 +54,1,11,1,4600,1 +80,0,11,1,16900,1 +32,1,3,3,0,1 +21,1,7,3,1100,0 +43,0,5,3,13400,1 +24,0,14,3,40000,1 +60,1,9,1,19000,0 +22,0,7,3,22000,1 +30,0,13,1,0,0 +30,0,2,3,4000,1 +35,1,13,1,460,1 +23,0,9,1,14300,0 +29,0,15,4,60400,1 +66,1,1,3,5000,0 +18,0,3,3,0,0 +69,1,11,3,11900,1 +40,1,11,2,18000,1 +57,1,11,1,50020,1 +51,0,11,1,6000,0 +82,1,13,1,29100,1 +57,0,9,1,35000,1 +34,1,9,1,16600,1 +20,0,7,1,25000,0 +28,0,10,1,280,0 +20,1,11,3,7200,0 +23,1,9,3,13000,0 +80,1,11,1,18500,0 +34,0,11,3,45000,0 +46,1,12,4,39300,1 +50,1,13,1,50000,0 +32,0,13,1,1e+05,1 +56,0,15,1,93700,1 +18,1,7,1,2000,0 +48,1,12,1,35500,1 +45,0,14,4,84900,1 +60,0,8,3,71600,1 +83,0,9,1,29400,0 +41,0,11,2,72000,0 +33,0,8,4,17400,1 +33,0,5,3,5200,0 +52,0,9,1,34440,1 +42,0,3,3,22900,1 +69,1,11,1,7000,1 +25,1,13,4,0,0 +68,0,9,1,343000,1 +25,0,9,4,4500,0 +55,1,7,1,0,1 +41,0,5,3,7000,1 +75,1,10,1,8320,0 +39,0,8,2,29000,0 +40,0,11,1,76000,1 +39,0,11,4,48800,1 +48,0,13,1,325000,1 +81,0,11,1,12600,1 +70,0,13,1,36100,0 +82,1,9,3,9600,0 +45,0,15,1,64000,1 +83,1,13,3,9000,0 +37,0,8,4,30200,0 +31,1,11,1,12100,0 +18,0,5,3,0,0 +29,1,1,3,0,1 +40,0,11,3,9000,1 +43,0,13,1,325000,1 +45,1,9,3,12000,1 +45,0,13,6,85000,1 +60,0,13,1,25000,0 +76,1,11,2,10100,0 +24,0,13,1,32000,0 +38,1,12,2,92000,0 +62,0,11,1,2000,1 +35,1,9,2,24000,0 +30,1,8,3,28250,0 +23,1,6,3,9600,0 +40,0,9,4,33000,0 +52,1,3,4,7500,1 +40,1,10,1,26000,1 +46,1,13,4,11700,1 +23,1,12,1,7000,1 +29,0,11,1,50000,0 +25,0,9,3,14000,0 +56,0,14,1,325000,0 +27,0,9,1,50000,0 +41,1,13,1,328700,1 +43,0,11,1,15000,0 +27,0,14,4,81000,1 +53,1,14,4,62600,1 +53,1,13,1,6200,1 +43,1,8,1,33000,1 +38,0,9,1,1e+05,0 +46,0,13,1,67500,0 +23,0,11,2,12000,0 +27,0,13,1,38000,0 +60,0,11,2,39200,1 +76,0,3,3,9600,1 +51,0,12,1,0,0 +54,1,15,1,106200,0 +26,0,13,1,0,0 +19,1,9,3,3400,0 +40,0,13,2,38500,1 +24,1,1,3,0,1 +53,1,12,1,11100,0 +19,1,11,1,11000,0 +19,1,11,4,10000,0 +55,0,16,1,63000,1 +25,0,10,3,25000,0 +53,0,9,1,69200,1 +72,0,7,1,20900,1 +66,1,14,2,54260,0 +36,1,6,1,25000,0 +35,1,10,1,21150,0 +37,1,13,1,30400,0 +34,1,13,1,30000,0 +45,1,9,3,24000,0 +73,1,13,1,26100,1 +59,0,11,1,76000,1 +21,1,11,3,21000,0 +22,1,13,1,9800,0 +38,1,13,2,31000,1 +22,1,11,1,6300,0 +21,1,12,1,9000,0 +76,1,6,1,116070,0 +46,1,3,3,3100,1 +42,0,1,4,14000,1 +82,0,13,1,29800,1 +33,1,1,3,0,1 +37,1,13,4,13000,0 +32,0,8,1,0,0 +44,1,7,1,11500,1 +35,1,13,4,26700,1 +83,0,11,1,10800,1 +39,0,12,2,36000,1 +77,0,4,2,7000,0 +60,0,13,1,96000,0 +53,0,14,1,159000,0 +33,0,11,1,75000,1 +50,0,13,4,77000,1 +63,1,13,4,10000,0 +74,0,11,2,62000,0 +37,0,7,1,50000,1 +31,1,5,1,6500,0 +39,0,13,4,30000,0 +40,0,9,2,26800,1 +83,1,9,1,8800,1 +45,1,11,1,18300,0 +53,1,11,1,35200,1 +22,1,13,1,30380,0 +78,0,16,1,46100,1 +34,0,9,4,18000,1 +37,0,15,1,152000,0 +43,0,11,1,93400,1 +35,0,13,1,65000,1 +85,0,14,1,19600,0 +58,0,4,3,12700,1 +31,0,15,1,33400,1 +22,0,9,1,13700,0 +65,0,9,1,21500,0 +79,0,9,1,22700,1 +26,1,10,1,23000,0 +40,0,11,3,36000,1 +47,0,10,1,43600,1 +19,0,10,1,14000,0 +47,1,1,3,0,1 +35,1,9,3,0,0 +22,0,11,1,2600,0 +42,1,12,4,40020,1 +28,0,13,1,61130,1 +51,1,11,1,15000,0 +40,1,3,4,17000,1 +38,0,7,1,1000,1 +52,0,11,3,0,0 +24,1,9,3,4000,0 +44,0,9,1,42000,1 +23,1,9,3,0,0 +47,0,10,1,110000,1 +44,0,7,3,40800,1 +51,1,13,1,1600,0 +79,1,9,3,14700,1 +23,0,11,1,29000,0 +68,1,9,1,25200,0 +34,1,9,1,35000,1 +52,0,13,4,0,1 +45,1,11,3,2000,1 +39,1,13,1,42500,0 +50,1,7,2,3600,1 +52,1,9,4,84000,1 +51,1,11,1,12800,0 +28,1,13,1,60000,0 +39,0,5,3,25000,1 +46,0,8,1,0,0 +25,0,12,1,20000,0 +27,1,9,3,3000,1 +70,0,10,3,16300,1 +27,1,10,6,31000,1 +41,1,9,2,10000,0 +44,0,9,4,20000,0 +29,1,8,2,325000,0 +48,0,14,1,135000,1 +19,0,9,1,6300,0 +79,1,4,1,10800,0 +33,0,11,1,5100,0 +20,0,11,3,3600,0 +42,1,12,1,7000,1 +31,0,13,4,47000,0 +46,1,14,3,14120,0 +29,0,9,1,32000,1 +57,0,12,1,58400,1 +22,0,9,3,16000,0 +53,0,2,3,18000,1 +24,0,3,3,0,1 +82,1,4,3,22800,0 +37,1,13,1,420500,0 +48,1,12,1,34000,1 +54,0,3,3,230,1 +49,0,11,1,5800,0 +19,1,7,1,3000,0 +50,1,14,4,103000,1 +37,0,12,1,56020,1 +75,0,9,3,22700,1 +43,1,6,1,28900,0 +41,0,12,4,17900,0 +62,0,6,1,0,0 +45,1,13,1,34200,0 +71,1,15,1,37800,1 +40,1,3,3,0,1 +18,0,7,1,4000,0 +60,0,7,3,28900,1 +34,1,12,1,0,1 +50,1,11,1,6000,1 +52,1,14,1,26600,0 +22,1,7,1,0,1 +43,1,10,1,13700,1 +42,1,11,1,5000,0 +85,1,11,1,26500,0 +35,1,9,3,8500,0 +61,1,9,2,20000,0 +30,1,11,1,21600,1 +20,0,9,1,1300,0 +48,1,9,3,19100,1 +44,1,14,6,44000,0 +36,1,8,3,0,1 +41,1,12,3,38000,0 +72,1,9,1,9500,1 +42,0,9,1,19400,0 +42,0,9,3,30000,1 +82,1,9,1,13800,0 +70,1,13,1,26200,1 +24,0,7,3,5540,1 +19,1,8,4,1100,0 +50,1,9,1,13700,0 +56,1,16,1,39000,1 +36,0,13,1,120000,1 +44,1,13,1,1e+05,1 +42,1,13,1,45000,1 +74,0,9,1,25200,1 +64,0,14,1,80200,1 +72,1,7,1,7200,1 +39,0,14,3,82260,1 +67,0,15,1,95000,1 +28,0,13,1,57000,0 +41,0,13,1,45000,1 +32,1,11,1,24000,0 +42,1,8,3,5000,1 +47,0,9,3,62000,1 +75,0,15,1,57370,1 +27,0,9,3,12000,0 +40,0,10,1,24000,0 +49,0,13,1,80600,0 +34,1,9,1,13000,1 +39,1,1,3,0,1 +62,1,12,1,14000,0 +70,1,14,2,40100,0 +36,0,9,3,30000,1 +45,0,1,3,9000,0 +43,0,3,3,0,1 +24,0,11,4,7200,1 +47,1,14,1,40200,0 +57,0,16,1,251000,1 +44,1,10,1,21500,1 +23,0,5,3,18000,0 +48,1,3,3,14000,0 +26,0,10,3,13000,1 +32,0,8,1,30000,1 +21,1,9,1,0,1 +54,0,13,1,56420,1 +25,1,13,1,31000,0 +47,1,13,3,34480,0 +40,0,12,1,88000,1 +45,1,11,3,5000,0 +29,0,12,1,39000,0 +69,0,12,1,8300,0 +67,0,11,1,2000,1 +69,1,11,1,12500,0 +65,1,4,4,35600,0 +27,0,12,4,7000,0 +26,1,9,3,25000,0 +46,1,9,1,27000,1 +43,0,13,1,23600,1 +72,0,14,1,15900,1 +41,1,12,1,0,1 +45,0,13,1,72000,1 +34,0,12,2,71050,1 +48,1,13,1,332200,1 +71,1,11,1,11800,1 +48,1,3,3,325000,1 +40,1,13,4,0,1 +23,0,9,1,20000,0 +21,0,10,1,1900,0 +36,1,10,1,35000,0 +20,0,11,1,22900,0 +20,1,9,3,8700,0 +39,1,13,1,0,1 +53,0,13,1,120000,0 +20,0,3,3,0,0 +40,1,9,1,62000,0 +19,1,11,1,5600,0 +52,1,6,3,8900,0 +46,0,9,1,23000,0 +48,0,10,2,12000,0 +39,0,11,1,80080,0 +29,1,11,2,1000,0 +22,0,3,3,11000,1 +39,1,11,4,58500,0 +25,0,8,3,0,0 +51,0,15,1,1e+05,1 +38,0,12,1,140000,1 +34,1,13,4,60000,1 +24,0,10,1,43120,1 +28,0,9,4,20000,0 +21,1,5,3,3600,1 +38,1,3,3,18000,0 +49,1,11,3,14500,0 +22,0,11,1,12000,0 +45,0,14,1,91100,1 +64,0,13,1,52800,1 +51,0,7,1,19000,0 +40,1,10,1,0,0 +18,0,9,3,0,0 +43,0,13,1,23000,1 +49,1,9,1,3200,0 +31,1,8,1,10000,1 +42,0,8,3,21000,1 +56,1,9,1,0,1 +73,0,1,1,3000,1 +29,0,5,3,17200,1 +18,1,7,3,1200,0 +19,1,9,4,0,1 +22,0,8,3,4000,0 +30,1,14,2,33000,0 +53,0,10,1,50000,0 +67,0,8,3,251000,1 +69,1,9,1,11600,1 +19,1,9,3,24500,1 +47,1,1,1,0,0 +18,1,9,1,1600,0 +57,0,13,2,90000,1 +47,1,11,1,0,1 +27,0,11,3,15000,0 +21,0,9,3,16500,0 +93,1,12,1,88200,0 +43,1,2,1,8800,0 +47,1,13,3,66000,1 +29,0,11,1,38300,0 +47,0,9,3,23100,0 +27,0,1,3,14800,1 +42,1,13,4,60000,1 +41,0,3,3,28000,1 +22,1,11,3,12700,0 +55,0,14,1,75000,1 +18,0,7,1,500,0 +40,0,9,1,14000,1 +64,1,11,1,0,1 +64,1,9,1,0,1 +88,1,3,4,6000,0 +24,1,9,2,10200,0 +57,0,8,4,23000,1 +76,1,10,1,0,1 +43,1,9,3,38030,0 +64,1,9,3,1700,1 +21,1,11,3,18000,0 +22,0,9,2,0,0 +40,0,13,4,70000,1 +30,1,5,1,39000,1 +29,1,10,1,13000,0 +43,0,11,3,15500,0 +50,0,14,4,1e+05,1 +63,0,11,1,1700,1 +55,1,13,1,62000,1 +25,0,13,3,26000,0 +70,1,14,1,7770,0 +33,0,11,1,275000,0 +39,0,13,2,100050,1 +30,1,11,1,36810,0 +23,0,9,3,6500,1 +65,0,9,1,26750,1 +37,1,9,1,8100,0 +37,0,14,1,61250,1 +76,1,13,1,6050,1 +57,1,10,1,15000,0 +49,1,13,1,57130,1 +84,1,8,1,10000,0 +32,0,3,3,0,1 +71,0,9,1,26550,1 +58,0,13,1,92200,1 +56,1,9,1,32000,1 +51,0,13,2,48000,1 +51,0,15,1,5400,1 +53,1,13,1,200,1 +20,0,8,2,2000,0 +73,0,3,3,24200,0 +38,1,2,3,0,0 +50,0,13,1,22000,1 +44,1,14,4,500,1 +29,1,11,1,66400,0 diff --git a/src/notifications/domain/hooks/useNeedsUpdate.ts b/src/notifications/domain/hooks/useNeedsUpdate.ts index c8f6c03e7..fa0d2451b 100644 --- a/src/notifications/domain/hooks/useNeedsUpdate.ts +++ b/src/notifications/domain/hooks/useNeedsUpdate.ts @@ -1,30 +1,5 @@ -// hooks/useNeedsUpdate.ts import { useSyncExternalStore } from 'react' -type Listener = () => void - -class NeedsUpdateStore { - private needsUpdate = false - private listeners = new Set() - - getSnapshot = () => this.needsUpdate - - subscribe = (callback: Listener) => { - this.listeners.add(callback) - return () => this.listeners.delete(callback) - } - - setNeedsUpdate(value: boolean) { - if (this.needsUpdate !== value) { - this.needsUpdate = value - this.emit() - } - } - - private emit() { - this.listeners.forEach((listener) => listener()) - } -} -const needsUpdateStore = new NeedsUpdateStore() +import { needsUpdateStore } from './needsUpdateStore' export function useNeedsUpdate() { return useSyncExternalStore(needsUpdateStore.subscribe, needsUpdateStore.getSnapshot) diff --git a/src/notifications/domain/hooks/useNotifications.ts b/src/notifications/domain/hooks/useNotifications.ts index cb9a1d1d9..7afa097d3 100644 --- a/src/notifications/domain/hooks/useNotifications.ts +++ b/src/notifications/domain/hooks/useNotifications.ts @@ -4,6 +4,7 @@ import { Notification } from '@/notifications/domain/models/Notification' import { NotificationRepository } from '@/notifications/domain/repositories/NotificationRepository' import { NotificationsPaginationInfo } from '@/notifications/domain/models/NotificationsPaginationInfo' import { getAllNotificationsByUser } from '@/notifications/domain/useCases/getAllNotificationsByUser' +import { needsUpdateStore } from './needsUpdateStore' const POLLING_NOTIFICATIONS_INTERVAL_TIME = 30_000 @@ -67,6 +68,7 @@ export function useNotifications( try { await Promise.all(ids.map((id) => repository.markNotificationAsRead(id))) setError(null) + needsUpdateStore.setNeedsUpdate(true) } catch (err) { const message = err instanceof Error ? err.message : 'Failed to mark as read' setError(message) @@ -78,6 +80,7 @@ export function useNotifications( try { await Promise.all(ids.map((id) => repository.deleteNotification(id))) setError(null) + needsUpdateStore.setNeedsUpdate(true) } catch (err) { const message = err instanceof Error ? err.message : 'Failed to delete notifications' setError(message) diff --git a/src/sections/account/notifications-section/NotificationsSection.tsx b/src/sections/account/notifications-section/NotificationsSection.tsx index c64429db7..5cd41a875 100644 --- a/src/sections/account/notifications-section/NotificationsSection.tsx +++ b/src/sections/account/notifications-section/NotificationsSection.tsx @@ -2,7 +2,6 @@ import { useState, useEffect } from 'react' import { useTranslation } from 'react-i18next' import { Alert, Button, CloseButton, Stack } from '@iqss/dataverse-design-system' import { getTranslatedNotification } from '@/sections/account/notifications-section/NotificationsHelper' -import { needsUpdateStore } from '@/notifications/domain/hooks/needsUpdateStore' import { useNotifications } from '@/notifications/domain/hooks/useNotifications' import { NotificationRepository } from '@/notifications/domain/repositories/NotificationRepository' import { NotificationsPaginationInfo } from '@/notifications/domain/models/NotificationsPaginationInfo' @@ -39,7 +38,6 @@ export const NotificationsSection = ({ notificationRepository }: NotificationsSe await markAsRead(unreadIds) setReadIds((prev) => [...prev, ...unreadIds]) await refetch() - needsUpdateStore.setNeedsUpdate(true) })() }, 2000) return () => clearTimeout(timer) diff --git a/tests/component/sections/layout/header/LoggedInHeaderActions.spec.tsx b/tests/component/sections/layout/header/LoggedInHeaderActions.spec.tsx index 899bccc2f..e2d46d27e 100644 --- a/tests/component/sections/layout/header/LoggedInHeaderActions.spec.tsx +++ b/tests/component/sections/layout/header/LoggedInHeaderActions.spec.tsx @@ -4,6 +4,7 @@ import { CollectionRepository } from '../../../../../src/collection/domain/repos import { CollectionMother } from '../../../collection/domain/models/CollectionMother' import { AuthContext } from 'react-oauth2-code-pkce' import { NotificationRepository } from '@/notifications/domain/repositories/NotificationRepository' +import { needsUpdateStore } from '@/notifications/domain/hooks/needsUpdateStore' const testUser = UserMother.create() const collectionRepository: CollectionRepository = {} as CollectionRepository @@ -140,6 +141,28 @@ describe('LoggedInHeaderActions', () => { cy.get('[data-testid="unread-notifications-badge"]').should('have.length', 2) }) + it('refreshes unread notification badge when notifications update', () => { + const unreadCountStub = cy.stub() + unreadCountStub.onFirstCall().resolves(3) + unreadCountStub.onSecondCall().resolves(0) + notificationRepository.getUnreadNotificationsCount = unreadCountStub + + cy.mountAuthenticated( + + ) + + cy.get('[data-testid="unread-notifications-badge"]').should('exist').and('contain', '3') + cy.then(() => { + needsUpdateStore.setNeedsUpdate(true) + }) + cy.wrap(unreadCountStub).should('have.been.calledTwice') + cy.get('[data-testid="unread-notifications-badge"]').should('not.exist') + }) + it('calls the logout function when clicking the logout button', () => { collectionRepository.getUserPermissions = cy.stub().resolves(userPermissionsMock) collectionRepository.getById = cy.stub().resolves(CollectionMother.create()) From de369dac0d816bccec2abc84de8cbe1b3fed0ab4 Mon Sep 17 00:00:00 2001 From: Ellen Kraffmiller Date: Mon, 2 Mar 2026 10:07:40 -0500 Subject: [PATCH 2/7] refresh unread notifications after publishing a dataset --- .../publish-dataset/usePublishDataset.tsx | 2 ++ .../PublishDatasetModal.spec.tsx | 28 +++++++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/src/sections/dataset/publish-dataset/usePublishDataset.tsx b/src/sections/dataset/publish-dataset/usePublishDataset.tsx index 6a46df4fc..020848efc 100644 --- a/src/sections/dataset/publish-dataset/usePublishDataset.tsx +++ b/src/sections/dataset/publish-dataset/usePublishDataset.tsx @@ -7,6 +7,7 @@ import { SubmissionStatus } from '../../shared/form/DatasetMetadataForm/useSubmi import { CollectionRepository } from '../../../collection/domain/repositories/CollectionRepository' import { UpwardHierarchyNode } from '../../../shared/hierarchy/domain/models/UpwardHierarchyNode' import { publishCollection } from '../../../collection/domain/useCases/publishCollection' +import { needsUpdateStore } from '@/notifications/domain/hooks/needsUpdateStore' type UsePublishDatasetReturnType = | { @@ -43,6 +44,7 @@ export function usePublishDataset( .then(() => { setPublishError(null) setSubmissionStatus(SubmissionStatus.SubmitComplete) + needsUpdateStore.setNeedsUpdate(true) onPublishSucceed() }) .catch((err) => { diff --git a/tests/component/sections/dataset/dataset-publish/PublishDatasetModal.spec.tsx b/tests/component/sections/dataset/dataset-publish/PublishDatasetModal.spec.tsx index 6b0a9c59b..582972709 100644 --- a/tests/component/sections/dataset/dataset-publish/PublishDatasetModal.spec.tsx +++ b/tests/component/sections/dataset/dataset-publish/PublishDatasetModal.spec.tsx @@ -5,6 +5,7 @@ import { CollectionRepository } from '../../../../../src/collection/domain/repos import { UpwardHierarchyNodeMother } from '../../../shared/hierarchy/domain/models/UpwardHierarchyNodeMother' import { CustomTermsMother } from '@tests/component/dataset/domain/models/TermsOfUseMother' import { LicenseMother } from '@tests/component/dataset/domain/models/LicenseMother' +import { needsUpdateStore } from '@/notifications/domain/hooks/needsUpdateStore' describe('PublishDatasetModal', () => { it('display modal for never released dataset', () => { @@ -42,6 +43,33 @@ describe('PublishDatasetModal', () => { ) }) + it('refreshes unread notification count after successful publish', () => { + const handleClose = cy.stub() + const repository = {} as DatasetRepository + repository.publish = cy.stub().as('repositoryPublish').resolves() + const collectionRepository = {} as CollectionRepository + collectionRepository.publish = cy.stub().as('collectionRepositoryPublish').resolves() + const parentCollection = UpwardHierarchyNodeMother.createCollection() + cy.spy(needsUpdateStore, 'setNeedsUpdate').as('setNeedsUpdate') + + cy.mountAuthenticated( + + ) + + cy.findByText('Continue').click() + cy.get('@repositoryPublish').should('have.been.calledOnce') + cy.get('@setNeedsUpdate').should('have.been.calledWith', true) + }) + it('displays an error message when publishDataset fails', () => { const handleClose = cy.stub() const repository = {} as DatasetRepository // Mock the repository as needed From 6796999e268aa87e5afef83b9f4aca997ec864be Mon Sep 17 00:00:00 2001 From: Ellen Kraffmiller Date: Mon, 2 Mar 2026 16:39:18 -0500 Subject: [PATCH 3/7] refresh unread notifications after creating a dataset and a collection --- .../shared/form/DatasetMetadataForm/useSubmitDataset.ts | 2 ++ .../collection-form/useSubmitCollection.ts | 2 ++ .../shared/dataset-metadata-form/DatasetMetadataForm.spec.tsx | 3 +++ .../EditCreateCollectionForm.spec.tsx | 3 +++ 4 files changed, 10 insertions(+) diff --git a/src/sections/shared/form/DatasetMetadataForm/useSubmitDataset.ts b/src/sections/shared/form/DatasetMetadataForm/useSubmitDataset.ts index d0eceeff6..b002afd85 100644 --- a/src/sections/shared/form/DatasetMetadataForm/useSubmitDataset.ts +++ b/src/sections/shared/form/DatasetMetadataForm/useSubmitDataset.ts @@ -9,6 +9,7 @@ import { MetadataFieldsHelper, type DatasetMetadataFormValues } from './Metadata import { type DatasetMetadataFormMode } from '.' import { QueryParamKey, Route } from '../../../Route.enum' import { DatasetNonNumericVersionSearchParam } from '../../../../dataset/domain/models/Dataset' +import { needsUpdateStore } from '@/notifications/domain/hooks/needsUpdateStore' export enum SubmissionStatus { NotSubmitted = 'NotSubmitted', @@ -64,6 +65,7 @@ export function useSubmitDataset( .then(({ persistentId }) => { setSubmitError(null) setSubmissionStatus(SubmissionStatus.SubmitComplete) + needsUpdateStore.setNeedsUpdate(true) toast.success(tDataset('alerts.datasetCreated.alertText')) navigate( `${Route.DATASETS}?${QueryParamKey.PERSISTENT_ID}=${persistentId}&${QueryParamKey.VERSION}=${DatasetNonNumericVersionSearchParam.DRAFT}` diff --git a/src/sections/shared/form/EditCreateCollectionForm/collection-form/useSubmitCollection.ts b/src/sections/shared/form/EditCreateCollectionForm/collection-form/useSubmitCollection.ts index ccd62674c..6adb44af9 100644 --- a/src/sections/shared/form/EditCreateCollectionForm/collection-form/useSubmitCollection.ts +++ b/src/sections/shared/form/EditCreateCollectionForm/collection-form/useSubmitCollection.ts @@ -22,6 +22,7 @@ import { editCollection } from '@/collection/domain/useCases/editCollection' import { RouteWithParams } from '@/sections/Route.enum' import { JSDataverseWriteErrorHandler } from '@/shared/helpers/JSDataverseWriteErrorHandler' import { CollectionFormHelper } from '../CollectionFormHelper' +import { needsUpdateStore } from '@/notifications/domain/hooks/needsUpdateStore' export enum SubmissionStatus { NotSubmitted = 'NotSubmitted', @@ -109,6 +110,7 @@ export function useSubmitCollection( .then(() => { setSubmitError(null) setSubmissionStatus(SubmissionStatus.SubmitComplete) + needsUpdateStore.setNeedsUpdate(true) navigate(RouteWithParams.COLLECTIONS(newOrUpdatedCollection.alias), { state: { created: true } diff --git a/tests/component/sections/shared/dataset-metadata-form/DatasetMetadataForm.spec.tsx b/tests/component/sections/shared/dataset-metadata-form/DatasetMetadataForm.spec.tsx index 16e99206a..9f99b0f28 100644 --- a/tests/component/sections/shared/dataset-metadata-form/DatasetMetadataForm.spec.tsx +++ b/tests/component/sections/shared/dataset-metadata-form/DatasetMetadataForm.spec.tsx @@ -9,6 +9,7 @@ import { DatasetMother } from '../../../dataset/domain/models/DatasetMother' import { MetadataBlockInfoMother } from '../../../metadata-block-info/domain/models/MetadataBlockInfoMother' import { UserMother } from '../../../users/domain/models/UserMother' import { DatasetTemplateMother } from '@tests/component/dataset/domain/models/DatasetTemplateMother' +import { needsUpdateStore } from '@/notifications/domain/hooks/needsUpdateStore' const datasetRepository: DatasetRepository = {} as DatasetRepository const metadataBlockInfoRepository: MetadataBlockInfoRepository = {} as MetadataBlockInfoRepository @@ -1276,6 +1277,7 @@ describe('DatasetMetadataForm', () => { }) describe('should not display required errors when submitting the form with required fields filled', () => { it('on create mode', () => { + cy.spy(needsUpdateStore, 'setNeedsUpdate').as('setNeedsUpdate') cy.customMount( { cy.findByText('Error').should('not.exist') cy.findByText('Success!').should('exist') + cy.get('@setNeedsUpdate').should('have.been.calledWith', true) }) it('on edit mode', () => { diff --git a/tests/component/sections/shared/edit-create-collection-form/EditCreateCollectionForm.spec.tsx b/tests/component/sections/shared/edit-create-collection-form/EditCreateCollectionForm.spec.tsx index 94cec643f..03ab7ccc8 100644 --- a/tests/component/sections/shared/edit-create-collection-form/EditCreateCollectionForm.spec.tsx +++ b/tests/component/sections/shared/edit-create-collection-form/EditCreateCollectionForm.spec.tsx @@ -10,6 +10,7 @@ import { CollectionMother } from '@tests/component/collection/domain/models/Coll import { MetadataBlockInfoMother } from '@tests/component/metadata-block-info/domain/models/MetadataBlockInfoMother' import { UpwardHierarchyNodeMother } from '@tests/component/shared/hierarchy/domain/models/UpwardHierarchyNodeMother' import { UserMother } from '@tests/component/users/domain/models/UserMother' +import { needsUpdateStore } from '@/notifications/domain/hooks/needsUpdateStore' const collectionRepository: CollectionRepository = {} as CollectionRepository const metadataBlockInfoRepository = {} as MetadataBlockInfoRepository @@ -251,6 +252,7 @@ describe('EditCreateCollectionForm', () => { }) it('submits a valid form and succeed', () => { + cy.spy(needsUpdateStore, 'setNeedsUpdate').as('setNeedsUpdate') cy.customMount( { cy.findByText('Error').should('not.exist') cy.findByText('Success!').should('exist') + cy.get('@setNeedsUpdate').should('have.been.calledWith', true) }) it('submits a valid form and fails', () => { From 13b62432e0c72d9fb623aebc3dcd49016fe71acf Mon Sep 17 00:00:00 2001 From: Ellen Kraffmiller Date: Mon, 2 Mar 2026 16:55:29 -0500 Subject: [PATCH 4/7] remove unneeded file --- dev-env/datafile-3-original | 1001 ----------------------------------- 1 file changed, 1001 deletions(-) delete mode 100644 dev-env/datafile-3-original diff --git a/dev-env/datafile-3-original b/dev-env/datafile-3-original deleted file mode 100644 index 19e2f76d8..000000000 --- a/dev-env/datafile-3-original +++ /dev/null @@ -1,1001 +0,0 @@ -age,sex,educ,race,income,married -59,1,9,1,0,1 -31,0,1,3,17000,0 -36,1,11,1,0,1 -54,1,11,1,9100,1 -39,0,5,3,37000,0 -34,0,9,1,0,1 -93,1,8,1,6000,1 -69,0,13,1,350000,1 -40,1,11,3,33000,1 -27,1,11,1,25000,0 -59,1,13,1,49000,1 -31,1,11,3,0,1 -73,1,13,4,35500,0 -89,1,9,1,4000,1 -39,1,10,3,15000,0 -51,1,13,4,120000,1 -32,0,9,1,13000,0 -52,0,11,2,45000,0 -24,0,7,1,0,0 -48,1,10,1,4300,1 -51,0,1,3,16000,1 -43,1,14,1,365000,1 -29,0,4,3,20000,0 -44,1,15,1,17900,1 -87,1,8,1,3600,0 -27,1,11,3,10800,0 -58,0,13,1,60900,1 -32,1,11,3,25000,1 -74,1,7,3,6520,0 -28,1,13,4,21000,0 -70,0,15,1,319000,1 -35,0,9,1,30000,0 -36,1,11,3,600,1 -63,1,9,3,35800,1 -21,1,9,3,18000,0 -29,0,1,3,21200,1 -44,0,13,1,50000,1 -35,1,11,3,0,1 -43,0,13,3,69800,1 -59,1,10,4,30000,1 -53,0,5,3,17300,1 -42,0,10,1,38000,1 -32,0,11,1,19000,1 -50,0,16,1,52650,1 -18,0,4,3,0,0 -40,1,13,1,40000,1 -42,1,11,1,7000,0 -52,0,11,1,325000,1 -56,1,14,1,52000,1 -45,1,11,1,0,1 -39,0,8,1,18000,0 -28,0,10,1,49000,1 -46,1,13,1,47000,1 -45,0,11,3,50000,1 -32,1,9,4,12000,1 -22,1,9,1,5000,1 -52,1,15,1,43000,1 -21,0,3,3,12000,1 -60,1,13,1,4000,1 -77,1,11,1,2500,1 -38,0,1,3,1800,0 -40,1,11,3,15700,1 -34,1,11,2,13700,0 -48,1,12,1,76000,1 -69,1,9,1,5010,1 -46,0,11,1,85300,1 -40,0,13,1,149000,0 -26,1,9,3,12000,1 -37,1,14,1,65000,0 -30,0,5,3,13000,1 -70,1,15,4,1800,1 -42,1,4,3,0,0 -24,1,3,3,12500,1 -31,0,9,3,28000,1 -20,0,8,3,8400,0 -33,1,11,1,18500,0 -47,0,7,1,155100,1 -19,1,10,1,0,0 -33,1,5,1,4600,0 -66,1,13,4,4600,1 -23,0,11,1,66000,0 -51,1,9,1,9600,0 -23,0,13,1,23500,0 -47,1,13,1,63000,1 -48,1,8,3,13000,1 -43,1,11,1,8000,1 -31,0,10,3,10400,0 -47,1,3,3,10200,1 -74,0,11,1,24400,0 -93,1,1,2,6000,0 -55,1,11,1,12800,0 -29,1,9,3,24000,0 -33,0,11,3,119000,1 -50,0,2,3,18000,1 -28,0,11,2,8100,1 -29,1,13,1,38000,0 -38,1,10,1,35000,1 -42,0,9,3,50900,1 -50,1,10,1,22640,0 -77,0,4,3,12400,1 -37,1,3,3,0,1 -40,0,11,1,40000,0 -30,0,6,3,40000,1 -19,1,11,1,7000,0 -50,1,9,3,60000,0 -82,1,9,3,690,0 -22,1,9,3,21000,0 -63,0,12,1,94100,1 -48,1,12,1,6800,0 -46,0,15,1,52000,1 -45,1,9,3,0,0 -37,1,10,3,10800,0 -76,0,13,4,680,0 -25,0,9,1,0,0 -40,1,10,3,33000,1 -34,0,9,3,22500,1 -56,1,13,4,2000,1 -43,1,11,3,25000,1 -42,0,14,1,115370,1 -22,1,11,1,0,1 -45,1,11,1,38580,0 -32,1,3,3,16000,1 -23,0,11,3,5600,1 -19,0,10,2,14000,0 -52,1,9,1,109000,0 -44,1,13,4,27000,1 -43,0,13,4,51800,0 -34,1,13,4,0,1 -32,1,13,1,28030,0 -38,0,10,1,11200,0 -40,1,10,1,62700,1 -82,0,14,1,20000,1 -31,1,9,2,23000,0 -42,1,9,1,3000,1 -47,0,1,2,220,0 -66,0,16,1,120000,1 -30,0,9,4,30000,0 -42,1,10,3,28000,0 -50,1,11,1,48700,1 -26,1,10,1,11000,1 -53,0,9,3,6000,0 -22,0,8,4,7000,1 -28,1,2,3,0,1 -25,0,6,3,22000,1 -30,1,11,3,20000,1 -86,1,9,1,12020,1 -33,0,12,3,33000,0 -62,1,11,2,4900,0 -23,1,12,3,0,0 -36,0,12,1,60000,1 -84,1,9,1,5600,1 -29,0,6,1,28000,0 -29,0,11,1,91000,1 -18,1,8,2,0,0 -44,1,13,3,27000,1 -61,0,9,1,15800,1 -72,1,13,1,21600,1 -59,0,13,1,30000,1 -33,0,13,4,92000,1 -51,0,13,1,181000,1 -35,1,15,1,80000,1 -47,1,13,1,75800,0 -50,0,16,4,90000,1 -30,1,11,1,0,0 -31,1,8,2,0,1 -30,0,13,4,62300,1 -77,1,10,1,0,1 -59,0,1,1,30000,1 -22,1,13,1,4800,0 -66,1,12,1,17000,0 -49,1,11,3,36000,0 -44,1,13,1,25000,1 -18,0,7,1,4000,0 -35,0,12,3,27000,0 -38,1,3,3,6200,1 -55,1,9,1,25800,0 -32,0,11,2,33500,0 -29,0,9,1,40000,1 -36,1,9,2,0,0 -21,0,11,1,16000,0 -43,1,13,3,1330,1 -81,0,9,4,21600,1 -45,1,12,1,32000,1 -37,1,8,3,24000,0 -41,1,9,1,31000,1 -46,0,9,1,0,0 -29,1,14,4,37100,1 -40,1,9,1,5800,1 -24,1,5,3,3500,0 -63,1,12,1,86000,1 -61,0,1,3,14400,1 -43,1,12,1,22600,1 -86,1,13,1,37100,0 -38,0,14,4,72000,1 -75,0,3,2,8000,0 -32,0,13,1,110300,0 -63,1,10,1,13100,0 -27,0,11,3,26000,0 -64,0,13,1,125200,1 -71,1,4,1,11900,1 -54,1,11,1,2460,1 -57,1,14,1,47500,1 -56,1,12,1,13900,1 -31,0,15,2,40220,0 -53,0,12,1,40000,1 -29,1,9,1,0,1 -18,0,7,4,5400,0 -27,1,3,3,3000,1 -67,1,1,3,9800,0 -75,0,13,1,44600,1 -27,0,8,1,40000,0 -37,0,13,3,56150,1 -77,1,10,1,14200,0 -38,1,13,1,15000,0 -51,1,12,1,30000,1 -23,1,11,3,10210,1 -34,0,1,3,6000,1 -39,1,14,3,52000,1 -53,1,6,1,0,0 -30,1,10,1,27000,1 -39,1,8,3,29700,0 -40,0,13,1,11000,0 -43,0,14,1,56000,1 -34,1,15,4,77000,0 -72,0,6,1,13800,1 -73,0,11,1,48300,1 -77,1,9,1,11000,0 -43,1,13,1,26180,1 -31,1,5,3,5200,1 -36,0,12,1,80000,0 -61,0,12,1,69000,1 -74,0,11,1,73700,1 -38,1,13,1,40000,1 -45,1,15,2,90000,1 -32,1,12,4,26800,1 -55,0,11,1,50000,1 -51,1,12,1,0,1 -47,1,13,1,0,1 -42,1,9,4,0,1 -30,0,16,1,61200,0 -36,1,13,1,55000,0 -42,1,13,1,3000,1 -65,1,9,1,5200,1 -51,0,13,1,56000,1 -70,1,3,3,18900,1 -57,1,11,1,62700,1 -48,0,2,4,10000,1 -69,1,13,1,4300,1 -76,0,9,1,10100,1 -46,0,9,1,9500,0 -35,0,9,3,1400,1 -72,0,9,1,180000,1 -18,1,9,3,4000,0 -40,1,13,1,0,1 -33,1,13,1,72000,1 -46,0,13,1,45000,1 -51,1,12,1,14030,0 -48,0,11,4,20040,1 -30,0,9,1,9000,0 -28,1,4,3,0,1 -40,1,14,1,940,1 -18,1,7,1,0,0 -37,0,11,1,68000,1 -41,0,11,1,41000,0 -93,1,9,1,19200,1 -52,1,12,1,23000,1 -43,0,3,3,13000,0 -35,1,11,1,8400,1 -34,0,9,1,45000,1 -66,0,11,3,12000,0 -86,1,9,1,23800,0 -42,1,12,2,0,0 -73,1,11,2,16000,0 -19,1,9,3,0,0 -37,0,4,3,52000,1 -85,0,11,1,119700,1 -40,1,3,3,0,1 -73,0,15,1,115000,1 -78,1,13,4,29300,1 -62,1,14,1,325000,1 -48,0,9,3,41600,0 -75,1,8,1,19000,0 -71,1,9,1,39300,0 -29,0,11,6,0,0 -30,0,12,1,36420,1 -74,1,5,4,0,0 -53,1,10,2,0,1 -19,1,7,3,2200,0 -31,0,7,1,0,1 -41,1,9,1,24620,1 -49,1,6,3,0,0 -38,0,12,3,40000,1 -35,1,11,4,71000,1 -45,0,10,1,49000,0 -42,0,14,1,42500,1 -28,0,9,1,0,0 -32,1,1,4,9530,0 -48,1,14,1,27900,0 -27,1,14,1,24020,0 -44,0,13,4,46300,1 -75,1,9,1,18800,0 -52,0,12,1,168000,1 -39,1,12,1,39000,0 -60,0,13,4,167000,1 -34,1,13,3,73000,1 -50,0,12,1,58200,0 -47,1,1,3,7530,1 -48,0,13,1,140500,1 -68,0,13,1,31800,1 -30,0,8,1,50000,1 -67,0,13,1,57200,1 -29,1,5,3,1800,1 -40,1,11,5,56000,0 -84,0,13,1,32100,1 -67,0,4,2,13500,1 -74,0,12,1,13000,0 -72,1,2,3,8200,0 -72,1,9,4,17100,1 -82,1,13,1,8400,1 -24,0,5,3,10000,0 -54,1,10,1,35000,1 -67,0,6,1,7000,1 -18,0,11,4,2200,0 -40,0,11,2,30000,1 -70,1,9,1,4800,1 -73,0,13,1,7200,1 -41,1,14,1,15400,1 -68,0,14,1,44000,1 -82,0,15,1,138300,1 -20,1,3,3,0,0 -31,1,14,1,34000,0 -27,0,9,3,44500,0 -70,1,9,1,7000,1 -49,0,15,1,54000,1 -62,1,10,3,70000,1 -53,0,9,1,16940,0 -40,0,4,3,0,1 -80,0,8,1,28900,1 -36,0,11,4,0,0 -29,0,2,3,28900,1 -38,1,11,3,0,1 -65,1,13,1,0,0 -20,1,9,3,13000,0 -40,1,8,3,10500,1 -42,0,13,1,382000,1 -36,1,5,3,20300,1 -37,0,11,1,52000,1 -25,1,9,2,0,0 -74,1,9,1,7200,1 -40,0,9,1,38000,0 -48,1,4,4,13500,0 -44,0,14,1,138100,0 -40,1,10,3,15000,1 -23,0,11,1,0,0 -66,1,5,2,0,1 -47,0,13,1,35300,0 -58,0,10,1,80000,0 -42,1,9,1,3500,1 -26,0,9,1,24000,0 -32,1,8,3,0,1 -36,0,14,3,61900,1 -22,1,11,1,10600,0 -23,1,12,4,4000,1 -46,1,12,1,8400,0 -23,0,8,3,23500,0 -71,0,15,1,42000,1 -55,1,9,4,10000,1 -34,1,3,3,0,1 -49,0,13,1,12000,0 -42,1,11,2,0,0 -71,0,1,3,9100,1 -28,1,13,3,28000,1 -23,1,12,2,14400,0 -18,1,9,3,0,0 -48,0,10,1,60000,1 -65,0,12,1,22800,0 -44,1,1,3,18000,0 -52,1,13,1,42800,0 -65,0,6,1,22300,0 -20,1,9,1,5900,0 -27,1,13,1,5450,1 -36,1,16,4,0,1 -88,1,11,1,0,1 -84,1,1,4,10500,0 -41,0,13,1,36000,1 -35,0,9,1,30000,1 -30,1,11,1,38700,1 -23,1,13,4,10700,1 -23,0,6,3,6100,0 -51,1,16,1,118000,0 -27,1,13,1,41600,0 -47,1,13,1,0,1 -71,1,9,1,8000,1 -78,1,1,3,9300,0 -44,1,12,1,4930,1 -50,1,9,4,1200,1 -38,0,2,3,16000,1 -25,0,11,1,0,0 -43,0,13,4,25000,1 -20,0,11,4,4200,0 -66,1,9,1,3200,0 -26,0,13,3,28000,0 -62,0,13,1,70000,1 -45,1,11,1,69200,0 -38,1,8,2,1000,1 -51,1,7,1,7200,0 -21,0,13,1,5000,0 -42,1,13,1,2500,0 -20,0,10,4,35400,0 -51,1,9,1,4200,0 -22,1,11,3,19400,0 -65,0,6,3,18500,0 -38,0,9,1,1e+05,1 -33,1,9,3,11000,1 -27,1,12,3,38000,0 -58,0,9,1,99000,1 -73,0,1,3,7200,0 -19,0,11,3,7000,0 -24,1,13,4,100,0 -30,1,11,1,20200,1 -37,0,13,1,55000,1 -51,0,1,3,56300,1 -45,0,9,1,36000,0 -81,1,14,1,6000,0 -61,0,13,1,95300,1 -30,1,12,4,10284,0 -58,1,9,1,37000,0 -58,0,12,2,46050,1 -46,0,4,3,23100,0 -47,1,2,3,19000,1 -23,0,10,2,1500,0 -36,0,8,3,0,1 -82,0,9,1,20700,1 -20,1,11,2,8600,0 -22,1,9,3,0,0 -67,0,14,1,90300,1 -22,0,13,3,15600,0 -79,0,6,3,54600,1 -18,0,8,4,0,0 -48,1,14,1,39000,0 -32,0,9,3,20000,0 -35,0,9,1,13000,0 -49,1,11,1,30000,1 -46,0,11,1,13500,1 -28,0,11,3,10000,0 -50,0,8,3,17900,1 -28,1,9,2,8400,0 -87,1,4,1,8000,1 -49,0,8,1,30300,1 -23,1,6,4,4000,0 -40,1,3,3,20000,1 -26,1,9,3,38600,0 -48,1,9,2,0,0 -82,1,3,2,9900,0 -78,0,5,2,0,0 -34,1,8,1,25000,1 -36,1,13,4,67000,0 -19,1,9,3,3000,0 -31,1,3,3,0,1 -34,0,9,1,14000,1 -19,0,5,3,0,0 -33,0,13,1,109000,0 -93,1,2,3,10000,0 -30,1,16,1,14600,0 -42,1,6,2,0,1 -31,0,3,3,16300,1 -23,0,13,1,28000,1 -62,1,12,1,51350,1 -59,1,2,1,0,1 -88,1,12,1,18500,1 -37,0,12,1,25900,0 -32,1,13,1,47800,0 -42,0,9,1,17700,1 -40,0,13,1,700,0 -64,0,9,1,16000,1 -31,1,14,1,35000,0 -30,0,11,4,36500,1 -69,0,10,1,23500,1 -53,0,12,3,76800,1 -51,1,9,1,52120,0 -27,0,7,3,17000,0 -29,1,12,4,38000,1 -28,1,11,4,9000,1 -42,1,12,3,13300,1 -34,0,9,3,60100,1 -37,0,14,1,95000,1 -31,1,9,3,2000,1 -36,0,9,1,64000,1 -44,1,1,3,0,1 -53,0,11,1,38000,0 -23,1,9,1,9000,0 -37,0,10,4,54300,1 -29,1,8,3,5000,1 -38,0,13,1,90580,1 -57,1,5,1,5100,1 -27,0,8,1,22000,0 -86,1,9,1,8700,0 -75,0,8,1,7400,0 -37,1,12,4,13100,1 -23,0,8,1,30000,0 -63,0,13,2,50000,1 -26,1,11,1,0,1 -51,0,13,1,325000,1 -42,0,9,1,64000,1 -43,1,13,1,0,1 -51,0,14,1,103000,1 -69,0,11,1,90300,1 -52,0,10,1,60000,0 -74,0,13,1,21100,1 -22,0,12,1,31000,1 -43,1,9,1,8610,0 -56,0,11,2,44200,0 -31,1,9,3,4600,0 -38,0,9,3,7200,0 -89,1,13,1,7000,0 -62,1,12,1,10800,1 -75,1,11,1,8200,1 -34,1,12,1,10000,1 -35,0,2,3,32000,1 -35,0,13,1,60000,0 -45,1,9,4,0,1 -19,0,6,3,19000,1 -32,0,8,1,40000,1 -47,1,11,1,65000,0 -72,1,9,1,3600,1 -49,0,14,1,132000,0 -48,0,11,4,49000,0 -32,0,14,1,66200,0 -28,0,11,3,13000,1 -20,0,11,1,1600,0 -57,0,16,1,123000,1 -18,0,10,2,2400,0 -35,0,12,3,27000,1 -45,0,13,4,80000,1 -72,0,8,1,14000,1 -54,0,12,1,125700,1 -39,1,10,3,80000,0 -40,1,9,1,0,1 -63,1,1,3,3030,0 -19,1,10,1,2100,0 -40,1,12,3,17100,0 -59,1,12,1,13000,0 -42,0,13,1,33400,1 -42,0,9,2,0,1 -38,1,16,1,60000,0 -61,0,9,1,38000,1 -55,1,11,3,12600,0 -54,1,13,3,3200,0 -80,0,14,1,41300,1 -46,0,12,4,50000,1 -79,1,13,1,31900,1 -46,0,13,6,140000,1 -28,1,9,1,12000,0 -38,1,11,1,29900,0 -34,1,13,1,31030,1 -22,0,13,4,760,0 -48,0,8,1,57000,0 -42,0,3,3,19200,1 -23,0,9,3,46000,0 -29,1,11,2,30000,0 -65,1,1,4,0,0 -54,0,13,1,42500,1 -34,0,9,2,12100,0 -61,1,9,1,25000,1 -70,1,6,1,0,0 -82,0,9,1,10100,1 -48,0,13,1,44000,1 -66,1,9,1,13800,1 -27,1,13,4,15200,1 -42,0,9,1,14000,1 -47,1,11,1,59000,1 -70,0,13,1,51100,1 -47,0,9,1,27500,1 -47,0,9,1,45000,1 -39,1,9,1,24000,1 -33,1,9,3,2200,0 -84,0,11,1,151800,1 -39,0,9,1,80000,1 -55,1,11,1,0,1 -26,0,13,4,38800,1 -65,0,7,2,40900,1 -78,1,1,4,6400,0 -57,1,9,1,30000,0 -35,0,9,1,32000,1 -28,0,13,3,40000,0 -74,1,10,2,7900,0 -54,1,11,1,4600,1 -80,0,11,1,16900,1 -32,1,3,3,0,1 -21,1,7,3,1100,0 -43,0,5,3,13400,1 -24,0,14,3,40000,1 -60,1,9,1,19000,0 -22,0,7,3,22000,1 -30,0,13,1,0,0 -30,0,2,3,4000,1 -35,1,13,1,460,1 -23,0,9,1,14300,0 -29,0,15,4,60400,1 -66,1,1,3,5000,0 -18,0,3,3,0,0 -69,1,11,3,11900,1 -40,1,11,2,18000,1 -57,1,11,1,50020,1 -51,0,11,1,6000,0 -82,1,13,1,29100,1 -57,0,9,1,35000,1 -34,1,9,1,16600,1 -20,0,7,1,25000,0 -28,0,10,1,280,0 -20,1,11,3,7200,0 -23,1,9,3,13000,0 -80,1,11,1,18500,0 -34,0,11,3,45000,0 -46,1,12,4,39300,1 -50,1,13,1,50000,0 -32,0,13,1,1e+05,1 -56,0,15,1,93700,1 -18,1,7,1,2000,0 -48,1,12,1,35500,1 -45,0,14,4,84900,1 -60,0,8,3,71600,1 -83,0,9,1,29400,0 -41,0,11,2,72000,0 -33,0,8,4,17400,1 -33,0,5,3,5200,0 -52,0,9,1,34440,1 -42,0,3,3,22900,1 -69,1,11,1,7000,1 -25,1,13,4,0,0 -68,0,9,1,343000,1 -25,0,9,4,4500,0 -55,1,7,1,0,1 -41,0,5,3,7000,1 -75,1,10,1,8320,0 -39,0,8,2,29000,0 -40,0,11,1,76000,1 -39,0,11,4,48800,1 -48,0,13,1,325000,1 -81,0,11,1,12600,1 -70,0,13,1,36100,0 -82,1,9,3,9600,0 -45,0,15,1,64000,1 -83,1,13,3,9000,0 -37,0,8,4,30200,0 -31,1,11,1,12100,0 -18,0,5,3,0,0 -29,1,1,3,0,1 -40,0,11,3,9000,1 -43,0,13,1,325000,1 -45,1,9,3,12000,1 -45,0,13,6,85000,1 -60,0,13,1,25000,0 -76,1,11,2,10100,0 -24,0,13,1,32000,0 -38,1,12,2,92000,0 -62,0,11,1,2000,1 -35,1,9,2,24000,0 -30,1,8,3,28250,0 -23,1,6,3,9600,0 -40,0,9,4,33000,0 -52,1,3,4,7500,1 -40,1,10,1,26000,1 -46,1,13,4,11700,1 -23,1,12,1,7000,1 -29,0,11,1,50000,0 -25,0,9,3,14000,0 -56,0,14,1,325000,0 -27,0,9,1,50000,0 -41,1,13,1,328700,1 -43,0,11,1,15000,0 -27,0,14,4,81000,1 -53,1,14,4,62600,1 -53,1,13,1,6200,1 -43,1,8,1,33000,1 -38,0,9,1,1e+05,0 -46,0,13,1,67500,0 -23,0,11,2,12000,0 -27,0,13,1,38000,0 -60,0,11,2,39200,1 -76,0,3,3,9600,1 -51,0,12,1,0,0 -54,1,15,1,106200,0 -26,0,13,1,0,0 -19,1,9,3,3400,0 -40,0,13,2,38500,1 -24,1,1,3,0,1 -53,1,12,1,11100,0 -19,1,11,1,11000,0 -19,1,11,4,10000,0 -55,0,16,1,63000,1 -25,0,10,3,25000,0 -53,0,9,1,69200,1 -72,0,7,1,20900,1 -66,1,14,2,54260,0 -36,1,6,1,25000,0 -35,1,10,1,21150,0 -37,1,13,1,30400,0 -34,1,13,1,30000,0 -45,1,9,3,24000,0 -73,1,13,1,26100,1 -59,0,11,1,76000,1 -21,1,11,3,21000,0 -22,1,13,1,9800,0 -38,1,13,2,31000,1 -22,1,11,1,6300,0 -21,1,12,1,9000,0 -76,1,6,1,116070,0 -46,1,3,3,3100,1 -42,0,1,4,14000,1 -82,0,13,1,29800,1 -33,1,1,3,0,1 -37,1,13,4,13000,0 -32,0,8,1,0,0 -44,1,7,1,11500,1 -35,1,13,4,26700,1 -83,0,11,1,10800,1 -39,0,12,2,36000,1 -77,0,4,2,7000,0 -60,0,13,1,96000,0 -53,0,14,1,159000,0 -33,0,11,1,75000,1 -50,0,13,4,77000,1 -63,1,13,4,10000,0 -74,0,11,2,62000,0 -37,0,7,1,50000,1 -31,1,5,1,6500,0 -39,0,13,4,30000,0 -40,0,9,2,26800,1 -83,1,9,1,8800,1 -45,1,11,1,18300,0 -53,1,11,1,35200,1 -22,1,13,1,30380,0 -78,0,16,1,46100,1 -34,0,9,4,18000,1 -37,0,15,1,152000,0 -43,0,11,1,93400,1 -35,0,13,1,65000,1 -85,0,14,1,19600,0 -58,0,4,3,12700,1 -31,0,15,1,33400,1 -22,0,9,1,13700,0 -65,0,9,1,21500,0 -79,0,9,1,22700,1 -26,1,10,1,23000,0 -40,0,11,3,36000,1 -47,0,10,1,43600,1 -19,0,10,1,14000,0 -47,1,1,3,0,1 -35,1,9,3,0,0 -22,0,11,1,2600,0 -42,1,12,4,40020,1 -28,0,13,1,61130,1 -51,1,11,1,15000,0 -40,1,3,4,17000,1 -38,0,7,1,1000,1 -52,0,11,3,0,0 -24,1,9,3,4000,0 -44,0,9,1,42000,1 -23,1,9,3,0,0 -47,0,10,1,110000,1 -44,0,7,3,40800,1 -51,1,13,1,1600,0 -79,1,9,3,14700,1 -23,0,11,1,29000,0 -68,1,9,1,25200,0 -34,1,9,1,35000,1 -52,0,13,4,0,1 -45,1,11,3,2000,1 -39,1,13,1,42500,0 -50,1,7,2,3600,1 -52,1,9,4,84000,1 -51,1,11,1,12800,0 -28,1,13,1,60000,0 -39,0,5,3,25000,1 -46,0,8,1,0,0 -25,0,12,1,20000,0 -27,1,9,3,3000,1 -70,0,10,3,16300,1 -27,1,10,6,31000,1 -41,1,9,2,10000,0 -44,0,9,4,20000,0 -29,1,8,2,325000,0 -48,0,14,1,135000,1 -19,0,9,1,6300,0 -79,1,4,1,10800,0 -33,0,11,1,5100,0 -20,0,11,3,3600,0 -42,1,12,1,7000,1 -31,0,13,4,47000,0 -46,1,14,3,14120,0 -29,0,9,1,32000,1 -57,0,12,1,58400,1 -22,0,9,3,16000,0 -53,0,2,3,18000,1 -24,0,3,3,0,1 -82,1,4,3,22800,0 -37,1,13,1,420500,0 -48,1,12,1,34000,1 -54,0,3,3,230,1 -49,0,11,1,5800,0 -19,1,7,1,3000,0 -50,1,14,4,103000,1 -37,0,12,1,56020,1 -75,0,9,3,22700,1 -43,1,6,1,28900,0 -41,0,12,4,17900,0 -62,0,6,1,0,0 -45,1,13,1,34200,0 -71,1,15,1,37800,1 -40,1,3,3,0,1 -18,0,7,1,4000,0 -60,0,7,3,28900,1 -34,1,12,1,0,1 -50,1,11,1,6000,1 -52,1,14,1,26600,0 -22,1,7,1,0,1 -43,1,10,1,13700,1 -42,1,11,1,5000,0 -85,1,11,1,26500,0 -35,1,9,3,8500,0 -61,1,9,2,20000,0 -30,1,11,1,21600,1 -20,0,9,1,1300,0 -48,1,9,3,19100,1 -44,1,14,6,44000,0 -36,1,8,3,0,1 -41,1,12,3,38000,0 -72,1,9,1,9500,1 -42,0,9,1,19400,0 -42,0,9,3,30000,1 -82,1,9,1,13800,0 -70,1,13,1,26200,1 -24,0,7,3,5540,1 -19,1,8,4,1100,0 -50,1,9,1,13700,0 -56,1,16,1,39000,1 -36,0,13,1,120000,1 -44,1,13,1,1e+05,1 -42,1,13,1,45000,1 -74,0,9,1,25200,1 -64,0,14,1,80200,1 -72,1,7,1,7200,1 -39,0,14,3,82260,1 -67,0,15,1,95000,1 -28,0,13,1,57000,0 -41,0,13,1,45000,1 -32,1,11,1,24000,0 -42,1,8,3,5000,1 -47,0,9,3,62000,1 -75,0,15,1,57370,1 -27,0,9,3,12000,0 -40,0,10,1,24000,0 -49,0,13,1,80600,0 -34,1,9,1,13000,1 -39,1,1,3,0,1 -62,1,12,1,14000,0 -70,1,14,2,40100,0 -36,0,9,3,30000,1 -45,0,1,3,9000,0 -43,0,3,3,0,1 -24,0,11,4,7200,1 -47,1,14,1,40200,0 -57,0,16,1,251000,1 -44,1,10,1,21500,1 -23,0,5,3,18000,0 -48,1,3,3,14000,0 -26,0,10,3,13000,1 -32,0,8,1,30000,1 -21,1,9,1,0,1 -54,0,13,1,56420,1 -25,1,13,1,31000,0 -47,1,13,3,34480,0 -40,0,12,1,88000,1 -45,1,11,3,5000,0 -29,0,12,1,39000,0 -69,0,12,1,8300,0 -67,0,11,1,2000,1 -69,1,11,1,12500,0 -65,1,4,4,35600,0 -27,0,12,4,7000,0 -26,1,9,3,25000,0 -46,1,9,1,27000,1 -43,0,13,1,23600,1 -72,0,14,1,15900,1 -41,1,12,1,0,1 -45,0,13,1,72000,1 -34,0,12,2,71050,1 -48,1,13,1,332200,1 -71,1,11,1,11800,1 -48,1,3,3,325000,1 -40,1,13,4,0,1 -23,0,9,1,20000,0 -21,0,10,1,1900,0 -36,1,10,1,35000,0 -20,0,11,1,22900,0 -20,1,9,3,8700,0 -39,1,13,1,0,1 -53,0,13,1,120000,0 -20,0,3,3,0,0 -40,1,9,1,62000,0 -19,1,11,1,5600,0 -52,1,6,3,8900,0 -46,0,9,1,23000,0 -48,0,10,2,12000,0 -39,0,11,1,80080,0 -29,1,11,2,1000,0 -22,0,3,3,11000,1 -39,1,11,4,58500,0 -25,0,8,3,0,0 -51,0,15,1,1e+05,1 -38,0,12,1,140000,1 -34,1,13,4,60000,1 -24,0,10,1,43120,1 -28,0,9,4,20000,0 -21,1,5,3,3600,1 -38,1,3,3,18000,0 -49,1,11,3,14500,0 -22,0,11,1,12000,0 -45,0,14,1,91100,1 -64,0,13,1,52800,1 -51,0,7,1,19000,0 -40,1,10,1,0,0 -18,0,9,3,0,0 -43,0,13,1,23000,1 -49,1,9,1,3200,0 -31,1,8,1,10000,1 -42,0,8,3,21000,1 -56,1,9,1,0,1 -73,0,1,1,3000,1 -29,0,5,3,17200,1 -18,1,7,3,1200,0 -19,1,9,4,0,1 -22,0,8,3,4000,0 -30,1,14,2,33000,0 -53,0,10,1,50000,0 -67,0,8,3,251000,1 -69,1,9,1,11600,1 -19,1,9,3,24500,1 -47,1,1,1,0,0 -18,1,9,1,1600,0 -57,0,13,2,90000,1 -47,1,11,1,0,1 -27,0,11,3,15000,0 -21,0,9,3,16500,0 -93,1,12,1,88200,0 -43,1,2,1,8800,0 -47,1,13,3,66000,1 -29,0,11,1,38300,0 -47,0,9,3,23100,0 -27,0,1,3,14800,1 -42,1,13,4,60000,1 -41,0,3,3,28000,1 -22,1,11,3,12700,0 -55,0,14,1,75000,1 -18,0,7,1,500,0 -40,0,9,1,14000,1 -64,1,11,1,0,1 -64,1,9,1,0,1 -88,1,3,4,6000,0 -24,1,9,2,10200,0 -57,0,8,4,23000,1 -76,1,10,1,0,1 -43,1,9,3,38030,0 -64,1,9,3,1700,1 -21,1,11,3,18000,0 -22,0,9,2,0,0 -40,0,13,4,70000,1 -30,1,5,1,39000,1 -29,1,10,1,13000,0 -43,0,11,3,15500,0 -50,0,14,4,1e+05,1 -63,0,11,1,1700,1 -55,1,13,1,62000,1 -25,0,13,3,26000,0 -70,1,14,1,7770,0 -33,0,11,1,275000,0 -39,0,13,2,100050,1 -30,1,11,1,36810,0 -23,0,9,3,6500,1 -65,0,9,1,26750,1 -37,1,9,1,8100,0 -37,0,14,1,61250,1 -76,1,13,1,6050,1 -57,1,10,1,15000,0 -49,1,13,1,57130,1 -84,1,8,1,10000,0 -32,0,3,3,0,1 -71,0,9,1,26550,1 -58,0,13,1,92200,1 -56,1,9,1,32000,1 -51,0,13,2,48000,1 -51,0,15,1,5400,1 -53,1,13,1,200,1 -20,0,8,2,2000,0 -73,0,3,3,24200,0 -38,1,2,3,0,0 -50,0,13,1,22000,1 -44,1,14,4,500,1 -29,1,11,1,66400,0 From bf131759ce9fc2e775deb174b9aa223de8066f55 Mon Sep 17 00:00:00 2001 From: Ellen Kraffmiller Date: Mon, 2 Mar 2026 17:22:54 -0500 Subject: [PATCH 5/7] updated CHANGELOG.md --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 104822a33..e7ab33051 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -32,6 +32,7 @@ This changelog follows the principles of [Keep a Changelog](https://keepachangel - Show toast notification when API token is copied to clipboard. - Dataset versions: (1) file changes should be `Access: Restricted` instead of `isResticted: true/false`; (2) logic of View Detail button. (#879) - File versions: (1) logic of linking to a file version; (2)If file not included, show text information "File not included in this version.". (#879) +- Notifications unread count now refreshes immediately (without waiting for polling) after notifications are read and after dataset/collection create or dataset publish actions that generate notifications. ### Removed From a6d337f0a6c8f7514f14e66f9aa4923f327d40da Mon Sep 17 00:00:00 2001 From: Ellen Kraffmiller Date: Thu, 5 Mar 2026 09:40:37 -0500 Subject: [PATCH 6/7] fix: only show "Displaying" messge if Notifications > 0 --- .../NotificationsSection.tsx | 4 +++- .../account/NotificationsSection.spec.tsx | 20 +++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/src/sections/account/notifications-section/NotificationsSection.tsx b/src/sections/account/notifications-section/NotificationsSection.tsx index 5cd41a875..7b43fc01d 100644 --- a/src/sections/account/notifications-section/NotificationsSection.tsx +++ b/src/sections/account/notifications-section/NotificationsSection.tsx @@ -84,7 +84,9 @@ export const NotificationsSection = ({ notificationRepository }: NotificationsSe direction="horizontal" gap={2} style={{ width: '100%', justifyContent: 'space-between', alignItems: 'center' }}> -
{t('notifications.displayingNotifications', { start, end, total })}
+ {notifications.length > 0 && ( +
{t('notifications.displayingNotifications', { start, end, total })}
+ )} {notifications.length > 0 && (