11import React , { Component , Fragment , ReactElement } from 'react' ;
2- import { withRouter } from 'react-router-dom' ;
2+ import { withRouter , RouteProps } from 'react-router-dom' ;
33import CardContent from '@material-ui/core/CardContent' ;
44
55import { DetailContextConsumer , VersionPageConsumerProps } from '../../pages/version/Version' ;
66
77import { CardWrap , Heading , Tags , Tag } from './styles' ;
88import NoItems from '../NoItems' ;
99
10- class DepDetail extends Component < any , any > {
11- constructor ( props : any ) {
10+ interface DepDetailProps {
11+ name : string ;
12+ version : string ;
13+ onLoading : ( ) => void ;
14+ history : string [ ] ;
15+ }
16+ interface DepDetailState {
17+ name : string ;
18+ version : string ;
19+ }
20+
21+ class DepDetail extends Component < DepDetailProps & RouteProps , DepDetailState > {
22+ constructor ( props : DepDetailProps ) {
1223 super ( props ) ;
1324 const { name, version } = this . props ;
1425
@@ -33,16 +44,16 @@ class DepDetail extends Component<any, any> {
3344 } ;
3445}
3546
36- const WrapperDependencyDetail = withRouter ( DepDetail ) ;
47+ const WrapperDependencyDetail = withRouter < any > ( DepDetail ) ;
3748
38- class DependencyBlock extends Component < any , any > {
49+ class DependencyBlock extends Component < { title : string ; dependencies : [ ] } > {
3950 public render ( ) : ReactElement < HTMLElement > {
4051 const { dependencies, title } = this . props ;
41- const deps = Object . entries ( dependencies ) ;
52+ const deps = Object . entries ( dependencies ) as [ ] ;
4253
4354 return (
4455 < DetailContextConsumer >
45- { ( { enableLoading } : any ) => {
56+ { ( { enableLoading } ) => {
4657 return (
4758 < CardWrap >
4859 < CardContent >
@@ -56,15 +67,15 @@ class DependencyBlock extends Component<any, any> {
5667 ) ;
5768 }
5869
59- private renderTags = ( deps : any , enableLoading : any ) =>
70+ private renderTags = ( deps : [ ] , enableLoading ?: ( ) => void ) =>
6071 deps . map ( dep => {
61- const [ name , version ] = dep ;
72+ const [ name , version ] = dep as [ string , string ] ;
6273
6374 return < WrapperDependencyDetail key = { name } name = { name } onLoading = { enableLoading } version = { version } /> ;
6475 } ) ;
6576}
6677
67- class Dependencies extends Component < any , any > {
78+ class Dependencies extends Component {
6879 public state = {
6980 tabPosition : 0 ,
7081 } ;
@@ -79,7 +90,7 @@ class Dependencies extends Component<any, any> {
7990 ) ;
8091 }
8192
82- private checkDependencyLength ( dependency : Record < string , any > = { } ) : boolean {
93+ private checkDependencyLength < T > ( dependency : Record < string , T > = { } ) : boolean {
8394 return Object . keys ( dependency ) . length > 0 ;
8495 }
8596
0 commit comments