@@ -470,6 +470,13 @@ export const DownloadStructureDialog = memo(({}) => {
470
470
}
471
471
} ;
472
472
473
+ const resetDownloadOnChange = ( ) => {
474
+ setSelectedDownload ( newDownload ) ;
475
+ setDownloadTagUrl ( null ) ;
476
+ setFileSize ( null ) ;
477
+ setDownloadUrl ( null ) ;
478
+ } ;
479
+
473
480
const copyPOSTJson = ( ) => {
474
481
const requestObject = prepareRequestObject ( ) ;
475
482
const jsonString = JSON . stringify ( requestObject ) ;
@@ -563,7 +570,14 @@ export const DownloadStructureDialog = memo(({}) => {
563
570
< FormControlLabel
564
571
key = { flag }
565
572
value = { flag }
566
- control = { < Radio disabled = { zipPreparing } /> }
573
+ control = {
574
+ < Radio
575
+ disabled = { zipPreparing }
576
+ onChange = { ( ) => {
577
+ resetDownloadOnChange ( ) ;
578
+ } }
579
+ />
580
+ }
567
581
label = { text }
568
582
/>
569
583
) ;
@@ -578,11 +592,12 @@ export const DownloadStructureDialog = memo(({}) => {
578
592
control = {
579
593
< Checkbox
580
594
checked = { mapFiles [ flag ] }
581
- onChange = { ( ) =>
595
+ onChange = { ( ) => {
582
596
setMapFiles ( prevState => {
583
597
return { ...prevState , [ flag ] : ! prevState [ flag ] } ;
584
- } )
585
- }
598
+ } ) ;
599
+ resetDownloadOnChange ( ) ;
600
+ } }
586
601
disabled = { zipPreparing }
587
602
/>
588
603
}
@@ -599,11 +614,12 @@ export const DownloadStructureDialog = memo(({}) => {
599
614
control = {
600
615
< Checkbox
601
616
checked = { crystallographicFiles [ flag ] }
602
- onChange = { ( ) =>
617
+ onChange = { ( ) => {
603
618
setCrystallographicFiles ( prevState => {
604
619
return { ...prevState , [ flag ] : ! prevState [ flag ] } ;
605
- } )
606
- }
620
+ } ) ;
621
+ resetDownloadOnChange ( ) ;
622
+ } }
607
623
disabled = { zipPreparing || disabled }
608
624
/>
609
625
}
@@ -626,14 +642,22 @@ export const DownloadStructureDialog = memo(({}) => {
626
642
name = "radio-group-download-type"
627
643
onChange = { event => {
628
644
setLinkType ( event . currentTarget . value ) ;
645
+ resetDownloadOnChange ( ) ;
629
646
} }
630
647
>
631
648
{ PERMALINK_OPTIONS . map ( ( { flag, text } ) => {
632
649
return (
633
650
< FormControlLabel
634
651
key = { flag }
635
652
value = { flag }
636
- control = { < Radio disabled = { zipPreparing } /> }
653
+ control = {
654
+ < Radio
655
+ disabled = { zipPreparing }
656
+ onChange = { ( ) => {
657
+ resetDownloadOnChange ( ) ;
658
+ } }
659
+ />
660
+ }
637
661
label = { text }
638
662
/>
639
663
) ;
@@ -648,11 +672,12 @@ export const DownloadStructureDialog = memo(({}) => {
648
672
control = {
649
673
< Checkbox
650
674
checked = { other [ flag ] }
651
- onChange = { ( ) =>
675
+ onChange = { ( ) => {
652
676
setOthers ( prevState => {
653
677
return { ...prevState , [ flag ] : ! prevState [ flag ] } ;
654
- } )
655
- }
678
+ } ) ;
679
+ resetDownloadOnChange ( ) ;
680
+ } }
656
681
disabled = { zipPreparing }
657
682
/>
658
683
}
0 commit comments