@@ -70,21 +70,11 @@ const tooltipStyles = {
7070const BarGraphComparison = props => {
7171 const [ { tabs, currentTab } , dispatch ] = useStoreContext ( ) ;
7272 const {
73- width, height, data, comparison,
73+ width, height, data, comparison, setSeries , series , setAction
7474 } = props ;
75- const [ series , setSeries ] = React . useState ( 0 ) ;
7675 const [ snapshots , setSnapshots ] = React . useState ( 0 ) ;
7776 const [ open , setOpen ] = React . useState ( false ) ;
7877 const [ picOpen , setPicOpen ] = React . useState ( false ) ;
79- const [ maxRender , setMaxRender ] = React . useState ( data . maxTotalRender ) ;
80-
81- function titleFilter ( comparisonArray ) {
82- // const comparisonArrayModded = comparisonArray[0];
83- console . log ( 'titleFilter' , comparisonArray ) ;
84- return comparisonArray . filter (
85- elem => elem . title . split ( '-' ) [ 1 ] === tabs [ currentTab ] . title . split ( '-' ) [ 1 ] ,
86- ) ;
87- }
8878
8979 const currentIndex = tabs [ currentTab ] . sliderIndex ;
9080
@@ -121,9 +111,6 @@ const BarGraphComparison = props => {
121111 // with the render time of the current tab.
122112 // The max render time will determine the Y-axis's highest number.
123113 const calculateMaxTotalRender = series => {
124- console . log ( comparison )
125- console . log ( series )
126- // let currentMax = 5
127114 const currentSeriesBarStacks = ! comparison [ series ]
128115 ? [ ]
129116 : comparison [ series ] . data . barStack ;
@@ -175,45 +162,37 @@ const BarGraphComparison = props => {
175162
176163 const classes = useStyles ( ) ;
177164
178- const handleChange = event => {
165+ const handleSeriesChange = event => {
179166 setSeries ( event . target . value ) ;
180- // setXpoints( );
167+ setAction ( false ) ;
181168 } ;
182169
183170 const handleClose = ( ) => {
184171 setOpen ( false ) ;
185- // setXpoints();
186172 } ;
187173
188174 const handleOpen = ( ) => {
189175 setOpen ( true ) ;
190- // setXpoints();
191176 } ;
192177
193- const picHandleChange = event => {
194- setSnapshots ( ` ${ ( event . target . value + 1 ) . toString ( ) } .0` ) ;
195- // setXpoints( );
178+ const handleActionChange = event => {
179+ setAction ( event . target . value ) ;
180+ setSeries ( false ) ;
196181 } ;
197182
198183 const picHandleClose = ( ) => {
199184 setPicOpen ( false ) ;
200- // setXpoints();
201185 } ;
202186
203187 const picHandleOpen = ( ) => {
204188 setPicOpen ( true ) ;
205- // setXpoints();
206189 } ;
207190
208191 // manually assignin X -axis points with tab ID.
209192 function setXpointsComparison ( ) {
210193 comparison [ series ] . data . barStack . forEach ( elem => {
211194 elem . currentTab = 'comparison' ;
212195 } ) ;
213- // comparison[series].data.barStack.currentTab = currentTab;
214- console . log ( comparison )
215- console . log ( series )
216- console . log ( comparison [ series ] . data . barStack )
217196 return comparison [ series ] . data . barStack ;
218197 }
219198 function setXpointsCurrentTab ( ) {
@@ -235,6 +214,15 @@ const BarGraphComparison = props => {
235214 for ( let i = 0 ; i < classname . length ; i ++ ) {
236215 classname [ i ] . addEventListener ( 'click' , animateButton , false ) ;
237216 }
217+ const seriesList = comparison . map ( elem => elem . data . barStack ) ;
218+ const actionsList = seriesList . flat ( ) ;
219+ const testList = actionsList . map ( elem => elem . name ) ;
220+
221+ const finalList = [ ] ;
222+ for ( let i = 0 ; i < testList . length ; i ++ ) {
223+ if ( testList [ i ] !== "" && ! finalList . includes ( testList [ i ] ) ) finalList . push ( testList [ i ] ) ;
224+ }
225+
238226 return (
239227 < div >
240228 < div className = "series-options-container" >
@@ -248,7 +236,7 @@ const BarGraphComparison = props => {
248236 >
249237 Clear All Series
250238 </ button >
251- < h4 style = { { padding : '0 1rem' } } > Comparison Series: </ h4 >
239+ < h4 style = { { padding : '0 1rem' } } > Compare Series: </ h4 >
252240 < FormControl variant = "outlined" className = { classes . formControl } >
253241 < Select
254242 style = { { color : 'white' } }
@@ -259,21 +247,18 @@ const BarGraphComparison = props => {
259247 onClose = { handleClose }
260248 onOpen = { handleOpen }
261249 value = { series }
262- onChange = { handleChange }
250+ onChange = { handleSeriesChange }
263251 >
264- { ! comparison [ series ] ? (
252+ { ! comparison . length ? (
265253 < MenuItem > No series available</ MenuItem >
266254 ) : (
267- // titleFilter(comparison).map((tabElem, index) => (
268- // <MenuItem value={index}>{`Series ${index + 1}`}</MenuItem>
269- // ))
270255 comparison . map ( ( tabElem , index ) => (
271- < MenuItem value = { index } > { tabElem . name } </ MenuItem >
256+ < MenuItem key = { `MenuItem ${ tabElem . name } ` } value = { index } > { tabElem . name } </ MenuItem >
272257 ) )
273258 ) }
274259 </ Select >
275260 </ FormControl >
276- { /* <h4 style={{ padding: '0 1rem' }}>Comparator Snapshot? </h4>
261+ < h4 style = { { padding : '0 1rem' } } > Compare Actions </ h4 >
277262 < FormControl variant = "outlined" className = { classes . formControl } >
278263 < Select
279264 style = { { color : 'white' } }
@@ -283,20 +268,19 @@ const BarGraphComparison = props => {
283268 open = { picOpen }
284269 onClose = { picHandleClose }
285270 onOpen = { picHandleOpen }
286- value={snapshots } //snapshots
287- onChange={picHandleChange }
271+ value = { '' } //snapshots
272+ onChange = { handleActionChange }
288273 >
289274 { ! comparison [ snapshots ] ? (
290275 < MenuItem > No snapshots available</ MenuItem >
291276 ) : (
292- titleFilter(comparison).map((tabElem, index) => {
293- return (
294- <MenuItem value={index}>{`${index + 1}` }</MenuItem>
295- );
296- })
297- )}
277+ finalList . map ( ( elem , index ) => (
278+ < MenuItem value = { elem } > { elem } </ MenuItem >
279+ // <MenuItem value="test">{}</MenuItem>
280+ ) ) )
281+ }
298282 </ Select >
299- </FormControl> */ }
283+ </ FormControl >
300284 </ div >
301285 </ div >
302286
@@ -335,7 +319,7 @@ const BarGraphComparison = props => {
335319 // Uses map method to iterate through all components,
336320 // creating a rect component (from visx) for each iteration.
337321 // height/width/etc. are calculated by visx.
338- // to set X and Y scale, it will used the passed in function and
322+ // to set X and Y scale, it will used the p`assed in function and
339323 // will run it on the array thats outputted by data
340324 const bar = barStack . bars [ currentIndex ] ;
341325 if ( Number . isNaN ( bar . bar [ 1 ] ) || bar . height < 0 ) {
@@ -379,6 +363,8 @@ const BarGraphComparison = props => {
379363 // Comparison Barstack (populates based on series selected)
380364 // to set X and Y scale, it will used the passed in function and
381365 // will run it on the array thats outputted by data
366+ // setXpointsComparison() }
367+ // comparison[series].data.barStack
382368 data = { ! comparison [ series ] ? [ ] : setXpointsComparison ( ) }
383369 keys = { keys }
384370 x = { getCurrentTab }
0 commit comments