@@ -270,11 +270,11 @@ function whereArgToQueryFilters(
270270 metaConfig : any [ ] = [ ]
271271) {
272272 const queryFilters : any [ ] = [ ] ;
273-
273+
274274 Object . keys ( whereArg ) . forEach ( ( key ) => {
275275 const cubeExists = metaConfig . find ( ( cube ) => cube . config . name === key ) ;
276276 const normalizedKey = cubeExists ? key : capitalize ( key ) ;
277-
277+
278278 if ( [ 'OR' , 'AND' ] . includes ( key ) ) {
279279 queryFilters . push ( {
280280 [ key . toLowerCase ( ) ] : whereArg [ key ] . reduce (
@@ -385,7 +385,7 @@ export function getJsonQuery(metaConfig: any, args: Record<string, any>, infos:
385385
386386 getFieldNodeChildren ( infos . fieldNodes [ 0 ] , infos ) . forEach ( cubeNode => {
387387 const cubeExists = metaConfig . find ( ( cube ) => cube . config . name === cubeNode . name . value ) ;
388-
388+
389389 const cubeName = cubeExists ? ( cubeNode . name . value ) : capitalize ( cubeNode . name . value ) ;
390390 const orderByArg = getArgumentValue ( cubeNode , 'orderBy' , infos . variableValues ) ;
391391 // todo: throw if both RootOrderByInput and [Cube]OrderByInput provided
@@ -471,7 +471,7 @@ export function getJsonQueryFromGraphQLQuery(query: string, metaConfig: any, var
471471 const operation : any = ast . definitions . find (
472472 ( { kind } ) => kind === 'OperationDefinition'
473473 ) ;
474-
474+
475475 const fieldNodes = operation ?. selectionSet . selections ;
476476
477477 let args = { } ;
@@ -487,7 +487,7 @@ export function getJsonQueryFromGraphQLQuery(query: string, metaConfig: any, var
487487 variableValues,
488488 fragments : { } ,
489489 } ;
490-
490+
491491 return getJsonQuery ( metaConfig , args , resolveInfo ) ;
492492}
493493
@@ -505,7 +505,7 @@ export function makeSchema(metaConfig: any): GraphQLSchema {
505505 if ( cube . public === false ) {
506506 return false ;
507507 }
508-
508+
509509 return ( [ ...cube . config . measures , ...cube . config . dimensions ] . filter ( ( member ) => member . isVisible ) ) . length > 0 ;
510510 }
511511
@@ -652,16 +652,23 @@ export function makeSchema(metaConfig: any): GraphQLSchema {
652652 query,
653653 queryType : QueryType . REGULAR_QUERY ,
654654 context : req . context ,
655- res : ( message ) => {
655+ res : async ( message ) => {
656656 if ( message . error ) {
657657 reject ( new Error ( message . error ) ) ;
658658 }
659- resolve ( message ) ;
659+ if ( message . isWrapper ) {
660+ // TODO: Avoid JSON-encode-decode here
661+ const resMsg = new TextDecoder ( ) . decode ( await message . getFinalResult ( ) ) ;
662+ resolve ( JSON . parse ( resMsg ) ) ;
663+ } else {
664+ resolve ( message ) ;
665+ }
660666 } ,
661667 apiType : 'graphql' ,
662668 } ) . catch ( reject ) ;
663669 } ) ;
664670
671+ // TODO: Move postprocessing to native?
665672 parseDates ( results ) ;
666673
667674 return results . data . map ( entry => R . toPairs ( entry )
0 commit comments