11import type React from "react" ;
22import { ReportTooltip } from "@/components/ui/report-tooltip.tsx" ;
3+ import { Switch } from "@/components/ui/switch.tsx" ;
34import info from "@/assets/info.json" ;
5+ import { useAppContext } from "@/AppProvider.tsx" ;
46
57interface IHeaderProps {
68 date : string ;
79 toolNameVersion : string ;
810 schemaVersion : string ;
911}
1012
11- export const Header : React . FC < IHeaderProps > = ( { date, toolNameVersion, schemaVersion} ) => (
12- < >
13- < div className = "justify-between border-b border-black pb-2 mb-4" >
14- < div className = "font-extrabold" > WEB FUZZING COMMONS</ div >
15- </ div >
16- < div className = "flex justify-between border-b border-black pb-2 mb-4" >
17- < ReportTooltip tooltipText = { info . creationDate } >
18- < div className = "font-bold" data-testid = "header-creation-date" > Creation Date: { new Date ( date ) . toUTCString ( ) } </ div >
19- </ ReportTooltip >
20- < ReportTooltip tooltipText = { info . toolNameVersion } >
21- < div className = "font-bold text-center" data-testid = "header-tool-name-version" > Tool: { toolNameVersion } </ div >
22- </ ReportTooltip >
23- < ReportTooltip tooltipText = { info . schemaVersion } >
24- < div className = "font-bold text-right" data-testid = "header-schema-version" > Schema Version: { schemaVersion } </ div >
25- </ ReportTooltip >
26- </ div >
27- </ >
28- )
13+ export const Header : React . FC < IHeaderProps > = ( { date, toolNameVersion, schemaVersion} ) => {
14+ const { lowCodeMode, setLowCodeMode} = useAppContext ( ) ;
15+
16+ return (
17+ < >
18+ < div className = "flex justify-between items-center border-b border-black pb-2 mb-4" >
19+ < div className = "font-extrabold" > WEB FUZZING COMMONS</ div >
20+ < ReportTooltip tooltipText = "Show only /** */ documentation comments instead of full test source code." >
21+ < label
22+ htmlFor = "low-code-switch"
23+ className = "flex items-center gap-2 text-sm font-bold cursor-pointer select-none"
24+ data-testid = "header-low-code-toggle"
25+ >
26+ < span > Low-code view</ span >
27+ < Switch
28+ id = "low-code-switch"
29+ checked = { lowCodeMode }
30+ onCheckedChange = { setLowCodeMode }
31+ />
32+ </ label >
33+ </ ReportTooltip >
34+ </ div >
35+ < div className = "flex justify-between border-b border-black pb-2 mb-4" >
36+ < ReportTooltip tooltipText = { info . creationDate } >
37+ < div className = "font-bold" data-testid = "header-creation-date" > Creation Date: { new Date ( date ) . toUTCString ( ) } </ div >
38+ </ ReportTooltip >
39+ < ReportTooltip tooltipText = { info . toolNameVersion } >
40+ < div className = "font-bold text-center" data-testid = "header-tool-name-version" > Tool: { toolNameVersion } </ div >
41+ </ ReportTooltip >
42+ < ReportTooltip tooltipText = { info . schemaVersion } >
43+ < div className = "font-bold text-right" data-testid = "header-schema-version" > Schema Version: { schemaVersion } </ div >
44+ </ ReportTooltip >
45+ </ div >
46+ </ >
47+ ) ;
48+ } ;
0 commit comments