@@ -99,8 +99,6 @@ interface Props {
9999onRunTest ( ) :void
100100onLoadSolution ( ) :void
101101onOpenLogs ( channel :string ) :void
102- displayHintsIndex :number [ ]
103- setHintsIndex ( index :number , value :number ) :void
104102}
105103
106104const Level = ( {
@@ -115,14 +113,31 @@ const Level = ({
115113 onOpenLogs,
116114 processes,
117115 testStatus,
118- displayHintsIndex,
119- setHintsIndex,
120116} :Props ) => {
121117const level = tutorial . levels [ index ]
122118
123119const [ title , setTitle ] = React . useState < string > ( level . title )
124120const [ content , setContent ] = React . useState < string > ( level . content )
125121
122+ // hold state for hints for the level
123+ const [ displayHintsIndex , setDisplayHintsIndex ] = React . useState < number [ ] > ( [ ] )
124+ const setHintsIndex = ( index :number , value :number ) => {
125+ return setDisplayHintsIndex ( ( displayHintsIndex ) => {
126+ const next = [ ...displayHintsIndex ]
127+ next [ index ] = value
128+ return next
129+ } )
130+ }
131+ React . useEffect ( ( ) => {
132+ console . log ( position . levelId )
133+ console . log ( JSON . stringify ( position ) )
134+ // set the hints to empty on level starts
135+ setDisplayHintsIndex ( steps . map ( ( s ) => - 1 ) )
136+ return ( ) => {
137+ console . log ( 'LEVEL UNMOUNTED' )
138+ }
139+ } , [ position . levelId ] )
140+
126141const menu = (
127142< ContentMenu
128143tutorial = { tutorial }