@@ -50,8 +50,8 @@ interface ReportsWithStylesProps extends ReportsProps {
5050interface ReportsType {
5151 error : boolean
5252 errorMessage : string
53- errorCode : number
54- orgId : number
53+ errorCode : number | null
54+ orgId : number | null
5555 projectId : string | number | undefined
5656 isDeleting : boolean
5757 isProcessing : boolean
@@ -83,8 +83,38 @@ interface ReportsState {
8383}
8484
8585class 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+
86116 onSelectRow ( event : React . ChangeEvent < HTMLInputElement > , rowId : number ) {
87- let selectedRows = this . state . selectedRows
117+ let selectedRows : ReportsState [ 'selectedRows' ] = this . state . selectedRows
88118
89119 if ( selectedRows [ rowId ] && ! event . target . checked ) {
90120 delete selectedRows [ rowId ]
@@ -312,7 +342,7 @@ class Reports extends Component<ReportsWithStylesProps, ReportsState> {
312342 >
313343 < MenuItem value = { 0 } > All</ MenuItem >
314344
315- { projects . data . map ( ( p ) => {
345+ { projects . data . map ( ( p : { id : number ; name : string } ) => {
316346 return (
317347 < MenuItem value = { p . id } key = { p . id } >
318348 { p . name }
@@ -459,43 +489,62 @@ class Reports extends Component<ReportsWithStylesProps, ReportsState> {
459489 </ TableRow >
460490 </ TableHead >
461491 < 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 }
480543 </ 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+ ) }
499548 </ TableBody >
500549 </ Table >
501550 </ HorizontalScrollContainer >
0 commit comments