11import React from "react" ;
2- import { VersionItem , TestStats } from "@site/src/components/conformance/types" ;
3- import { mapToTestStats } from "@site/src/components/conformance/utils" ;
2+ import {
3+ VersionItem ,
4+ TestStats ,
5+ ConformanceState ,
6+ } from "@site/src/components/conformance/types" ;
7+ import {
8+ createState ,
9+ mapToTestStats ,
10+ } from "@site/src/components/conformance/utils" ;
11+ import { useHistory } from "@docusaurus/router" ;
412import Heading from "@theme/Heading" ;
513
614import styles from "./styles.module.css" ;
715
816interface BannerProps {
917 focusItems : VersionItem [ ] ;
10- setNewVersion : ( newVersion : VersionItem ) => void ;
1118}
1219
13- export default function ConformanceBanner ( props : BannerProps ) : JSX . Element {
20+ export default function ConformanceHeroBanner ( props : BannerProps ) : JSX . Element {
1421 return (
1522 < div className = { styles . bannerSection } >
1623 { props . focusItems . map ( ( item ) => {
17- return (
18- < BannerCard
19- key = { item . tagName }
20- setNewVersion = { props . setNewVersion }
21- item = { item }
22- />
23- ) ;
24+ return < BannerCard key = { item . tagName } item = { item } /> ;
2425 } ) }
2526 </ div >
2627 ) ;
@@ -29,6 +30,8 @@ export default function ConformanceBanner(props: BannerProps): JSX.Element {
2930function BannerCard ( props ) {
3031 const [ stats , setStats ] = React . useState < TestStats | null > ( null ) ;
3132
33+ const history = useHistory < ConformanceState > ( ) ;
34+
3235 React . useEffect ( ( ) => {
3336 const fetchStats = async ( ) => {
3437 const response = await fetch ( props . item . fetchUrl ) ;
@@ -81,7 +84,12 @@ function BannerCard(props) {
8184 < div className = "card__footer" >
8285 < button
8386 className = "button button--block button--primary"
84- onClick = { ( ) => props . setNewVersion ( props . item ) }
87+ onClick = { ( ) =>
88+ history . push ( {
89+ pathname : "/conformance" ,
90+ state : createState ( props . item ) ,
91+ } )
92+ }
8593 >
8694 View Results
8795 </ button >
0 commit comments