@@ -50,8 +50,8 @@ interface ReportsWithStylesProps extends ReportsProps {
50
50
interface ReportsType {
51
51
error : boolean
52
52
errorMessage : string
53
- errorCode : number
54
- orgId : number
53
+ errorCode : number | null
54
+ orgId : number | null
55
55
projectId : string | number | undefined
56
56
isDeleting : boolean
57
57
isProcessing : boolean
@@ -83,8 +83,38 @@ interface ReportsState {
83
83
}
84
84
85
85
class Reports extends Component < ReportsWithStylesProps , ReportsState > {
86
+ state = {
87
+ data : {
88
+ auth : {
89
+ token : '' ,
90
+ } ,
91
+ userProfile : {
92
+ data : {
93
+ orgs : { } ,
94
+ } ,
95
+ } ,
96
+ reports : {
97
+ error : false ,
98
+ errorMessage : '' ,
99
+ errorCode : null ,
100
+ orgId : null ,
101
+ projectId : undefined ,
102
+ isDeleting : false ,
103
+ isProcessing : false ,
104
+ data : [ ] ,
105
+ } ,
106
+ projects : {
107
+ error : false ,
108
+ isProcessing : false ,
109
+ isProcessed : false ,
110
+ data : [ ] ,
111
+ } ,
112
+ } ,
113
+ selectedRows : { } ,
114
+ }
115
+
86
116
onSelectRow ( event : React . ChangeEvent < HTMLInputElement > , rowId : number ) {
87
- let selectedRows = this . state . selectedRows
117
+ let selectedRows : ReportsState [ 'selectedRows' ] = this . state . selectedRows
88
118
89
119
if ( selectedRows [ rowId ] && ! event . target . checked ) {
90
120
delete selectedRows [ rowId ]
@@ -312,7 +342,7 @@ class Reports extends Component<ReportsWithStylesProps, ReportsState> {
312
342
>
313
343
< MenuItem value = { 0 } > All</ MenuItem >
314
344
315
- { projects . data . map ( ( p ) => {
345
+ { projects . data . map ( ( p : { id : number ; name : string } ) => {
316
346
return (
317
347
< MenuItem value = { p . id } key = { p . id } >
318
348
{ p . name }
@@ -459,43 +489,62 @@ class Reports extends Component<ReportsWithStylesProps, ReportsState> {
459
489
</ TableRow >
460
490
</ TableHead >
461
491
< TableBody >
462
- { data . data . map ( ( r ) => {
463
- return (
464
- < TableRow
465
- hover
466
- className = { classes . row }
467
- key = { r . id }
468
- onClick = { ( event ) =>
469
- this . handleClick ( event , r . id , r . project_id )
470
- }
471
- style = { { cursor : 'pointer' } }
472
- >
473
- { this . props . orgPermissions ?. checkupReportDelete ? (
474
- < TableCell className = { classes . checkboxTableCell } >
475
- < Checkbox
476
- checked = { ! ! this . state . selectedRows [ r . id ] }
477
- onChange = { ( event ) => this . onSelectRow ( event , r . id ) }
478
- onClick = { ( event ) => this . onCheckBoxClick ( event ) }
479
- />
492
+ { data . data . map (
493
+ ( r : {
494
+ id : number
495
+ project_id : string
496
+ created_formatted : string
497
+ project_name : string
498
+ epoch : string
499
+ } ) => {
500
+ return (
501
+ < TableRow
502
+ hover
503
+ className = { classes . row }
504
+ key = { r . id }
505
+ onClick = { ( event ) =>
506
+ this . handleClick ( event , r . id , r . project_id )
507
+ }
508
+ style = { { cursor : 'pointer' } }
509
+ >
510
+ { this . props . orgPermissions ?. checkupReportDelete ? (
511
+ < TableCell className = { classes . checkboxTableCell } >
512
+ < Checkbox
513
+ checked = {
514
+ ! ! (
515
+ this . state
516
+ . selectedRows as ReportsState [ 'selectedRows' ]
517
+ ) [ r . id ]
518
+ }
519
+ onChange = { ( event ) =>
520
+ this . onSelectRow ( event , r . id )
521
+ }
522
+ onClick = { ( event ) => this . onCheckBoxClick ( event ) }
523
+ />
524
+ </ TableCell >
525
+ ) : null }
526
+ < TableCell className = { classes . cell } >
527
+ < NavLink
528
+ to = {
529
+ this . getReportLink ( r . id , r . project_id ) as string
530
+ }
531
+ >
532
+ { r . id }
533
+ </ NavLink >
534
+ </ TableCell >
535
+ < TableCell className = { classes . cell } >
536
+ { r . project_name }
537
+ </ TableCell >
538
+ < TableCell className = { classes . cell } >
539
+ { r . created_formatted }
540
+ </ TableCell >
541
+ < TableCell className = { classes . cell } >
542
+ { r . epoch }
480
543
</ TableCell >
481
- ) : null }
482
- < TableCell className = { classes . cell } >
483
- < NavLink
484
- to = { this . getReportLink ( r . id , r . project_id ) as string }
485
- >
486
- { r . id }
487
- </ NavLink >
488
- </ TableCell >
489
- < TableCell className = { classes . cell } >
490
- { r . project_name }
491
- </ TableCell >
492
- < TableCell className = { classes . cell } >
493
- { r . created_formatted }
494
- </ TableCell >
495
- < TableCell className = { classes . cell } > { r . epoch } </ TableCell >
496
- </ TableRow >
497
- )
498
- } ) }
544
+ </ TableRow >
545
+ )
546
+ } ,
547
+ ) }
499
548
</ TableBody >
500
549
</ Table >
501
550
</ HorizontalScrollContainer >
0 commit comments