@@ -36,8 +36,8 @@ const FIELD_LABELS = {
36
36
// 'Latency (s)'
37
37
// ],
38
38
'Custom Event' : [
39
- 'Event Name' ,
40
- 'Dimensions'
39
+ 'Event Name'
40
+ // 'Dimensions'
41
41
// 'Installation ID',
42
42
// 'Parse User ID',
43
43
// 'Parse SDK',
@@ -147,6 +147,7 @@ export default class ExplorerQueryComposer extends React.Component {
147
147
getInitialStateFromProps ( props ) {
148
148
let query = props . query || { } ;
149
149
let defaultState = { } ;
150
+ let index = props . index
150
151
if ( props . isTimeSeries ) {
151
152
defaultState = {
152
153
...TIMESERIES_DEFAULT_STATE ,
@@ -163,7 +164,7 @@ export default class ExplorerQueryComposer extends React.Component {
163
164
name : query . name || '' ,
164
165
source : query . source || TABLE_SOURCES_LABEL [ 0 ] ,
165
166
aggregates : query . aggregates || defaultState . aggregates ,
166
- groups : query . groups || defaultState . groups ,
167
+ groups : query . groups && query . groups [ index ] || defaultState . groups ,
167
168
limit : query . limit || defaultState . limit ,
168
169
filters : query . filters || [ ] ,
169
170
orders : query . orders || [ ]
@@ -213,7 +214,7 @@ export default class ExplorerQueryComposer extends React.Component {
213
214
source : this . state . source ,
214
215
name : this . state . name ,
215
216
aggregates : this . state . aggregates ,
216
- groups : this . state . groups ,
217
+ groups : [ this . state . groups [ this . props . index || 0 ] ] ,
217
218
limit : this . state . limit ,
218
219
filters : this . state . filters ,
219
220
// Only pass them if order is valid
@@ -346,7 +347,9 @@ export default class ExplorerQueryComposer extends React.Component {
346
347
347
348
renderGroup ( grouping , index = 0 ) {
348
349
let deleteButton = null ;
349
- let specialGroup = this . props . isTimeSeries && index === 0 ;
350
+ let specialGroup = this . props . isTimeSeries && index ;
351
+ let options = specialGroup ? REQUIRED_GROUPING_LABELS : FIELD_LABELS [ this . state . source ]
352
+ let defaultValue = Array . isArray ( options ) ? options [ 0 ] : options
350
353
if ( ! specialGroup ) {
351
354
deleteButton = (
352
355
< a
@@ -363,8 +366,8 @@ export default class ExplorerQueryComposer extends React.Component {
363
366
< div className = { styles . boxContent } >
364
367
< div className = { styles . formLabel } > Grouping</ div >
365
368
< ChromeDropdown
366
- value = { grouping }
367
- options = { specialGroup ? REQUIRED_GROUPING_LABELS : FIELD_LABELS [ this . state . source ] }
369
+ value = { grouping || defaultValue }
370
+ options = { options }
368
371
onChange = { ( val ) => {
369
372
let groups = this . state . groups ;
370
373
groups [ index ] = val ;
@@ -529,7 +532,7 @@ export default class ExplorerQueryComposer extends React.Component {
529
532
}
530
533
531
534
render ( ) {
532
- let { query, isNew, isTimeSeries, onDismiss } = this . props ;
535
+ let { query, isNew, isTimeSeries, onDismiss, index } = this . props ;
533
536
query = query || { } ;
534
537
535
538
// First and foremost, let's not waste time if the query itself is not composable.
@@ -612,7 +615,7 @@ export default class ExplorerQueryComposer extends React.Component {
612
615
613
616
group = (
614
617
< div className = { styles . queryComposerBox } >
615
- { this . renderGroup ( this . state . groups [ 0 ] ) }
618
+ { this . renderGroup ( this . state . groups [ index ] , index ) }
616
619
</ div >
617
620
) ;
618
621
} else {
@@ -646,12 +649,12 @@ export default class ExplorerQueryComposer extends React.Component {
646
649
</ div >
647
650
) ) ;
648
651
649
- let extraGroupModels = isTimeSeries ? this . state . groups . slice ( 1 ) : this . state . groups ;
650
- let extraGroups = extraGroupModels . map ( ( group , i ) => (
651
- < div className = { styles . queryComposerBox } key = { `group_${ i + 1 } ` } >
652
- { this . renderGroup ( group , i + offset ) }
653
- </ div >
654
- ) ) ;
652
+ // let extraGroupModels = isTimeSeries ? this.state.groups.slice(1) : this.state.groups;
653
+ // let extraGroups = extraGroupModels.map((group, i) => (
654
+ // <div className={styles.queryComposerBox} key={`group_${i + 1}`}>
655
+ // {this.renderGroup(group, i + offset)}
656
+ // </div>
657
+ // ));
655
658
656
659
let filters = this . state . filters . map ( ( filter , i ) => (
657
660
< div className = { styles . queryComposerBox } key = { `filter_${ i } ` } >
@@ -728,7 +731,6 @@ export default class ExplorerQueryComposer extends React.Component {
728
731
{ group }
729
732
{ limit }
730
733
{ extraAggregates }
731
- { extraGroups }
732
734
{ filters }
733
735
{ orders }
734
736
0 commit comments