11import inflection from 'inflection' ;
2- import R from 'ramda' ;
32import camelCase from 'camelcase' ;
43
54import { getEnv } from '@cubejs-backend/shared' ;
@@ -91,60 +90,51 @@ export class CubeToMetaTransformer {
9190 description : cube . description ,
9291 connectedComponent : this . joinGraph . connectedComponents ( ) [ cube . name ] ,
9392 meta : cube . meta ,
94- measures : R . compose (
95- R . map ( ( nameToMetric ) => ( {
96- ...this . measureConfig ( cube . name , cubeTitle , nameToMetric ) ,
97- isVisible : isCubeVisible ? this . isVisible ( nameToMetric [ 1 ] , true ) : false ,
98- public : isCubeVisible ? this . isVisible ( nameToMetric [ 1 ] , true ) : false ,
99- } ) ) ,
100- R . toPairs
101- ) ( cube . measures || { } ) ,
102- dimensions : R . compose (
103- R . map ( ( nameToDimension ) => ( {
104- name : `${ cube . name } .${ nameToDimension [ 0 ] } ` ,
105- title : this . title ( cubeTitle , nameToDimension ) ,
106- type : this . dimensionDataType ( nameToDimension [ 1 ] . type ) ,
107- description : nameToDimension [ 1 ] . description ,
108- shortTitle : this . title ( cubeTitle , nameToDimension , true ) ,
109- suggestFilterValues :
110- nameToDimension [ 1 ] . suggestFilterValues == null
111- ? true
112- : nameToDimension [ 1 ] . suggestFilterValues ,
113- format : nameToDimension [ 1 ] . format ,
114- meta : nameToDimension [ 1 ] . meta ,
115- isVisible : isCubeVisible
116- ? this . isVisible ( nameToDimension [ 1 ] , ! nameToDimension [ 1 ] . primaryKey )
117- : false ,
118- public : isCubeVisible
119- ? this . isVisible ( nameToDimension [ 1 ] , ! nameToDimension [ 1 ] . primaryKey )
120- : false ,
121- primaryKey : ! ! nameToDimension [ 1 ] . primaryKey ,
122- aliasMember : nameToDimension [ 1 ] . aliasMember ,
123- granularities :
124- nameToDimension [ 1 ] . granularities
125- ? R . compose ( R . map ( ( g ) => ( {
126- name : g [ 0 ] ,
127- title : this . title ( cubeTitle , g , true ) ,
128- interval : g [ 1 ] . interval ,
129- offset : g [ 1 ] . offset ,
130- origin : g [ 1 ] . origin ,
131- } ) ) , R . toPairs ) ( nameToDimension [ 1 ] . granularities )
132- : undefined ,
133- } ) ) ,
134- R . toPairs
135- ) ( cube . dimensions || { } ) ,
136- segments : R . compose (
137- R . map ( ( nameToSegment ) => ( {
138- name : `${ cube . name } .${ nameToSegment [ 0 ] } ` ,
139- title : this . title ( cubeTitle , nameToSegment ) ,
140- shortTitle : this . title ( cubeTitle , nameToSegment , true ) ,
141- description : nameToSegment [ 1 ] . description ,
142- meta : nameToSegment [ 1 ] . meta ,
143- isVisible : isCubeVisible ? this . isVisible ( nameToSegment [ 1 ] , true ) : false ,
144- public : isCubeVisible ? this . isVisible ( nameToSegment [ 1 ] , true ) : false ,
145- } ) ) ,
146- R . toPairs
147- ) ( cube . segments || { } ) ,
93+ measures : Object . entries ( cube . measures || { } ) . map ( ( nameToMetric ) => ( {
94+ ...this . measureConfig ( cube . name , cubeTitle , nameToMetric ) ,
95+ isVisible : isCubeVisible ? this . isVisible ( nameToMetric [ 1 ] , true ) : false ,
96+ public : isCubeVisible ? this . isVisible ( nameToMetric [ 1 ] , true ) : false ,
97+ } ) ) ,
98+ dimensions : Object . entries ( cube . dimensions || { } ) . map ( ( nameToDimension ) => ( {
99+ name : `${ cube . name } .${ nameToDimension [ 0 ] } ` ,
100+ title : this . title ( cubeTitle , nameToDimension ) ,
101+ type : this . dimensionDataType ( nameToDimension [ 1 ] . type ) ,
102+ description : nameToDimension [ 1 ] . description ,
103+ shortTitle : this . title ( cubeTitle , nameToDimension , true ) ,
104+ suggestFilterValues :
105+ nameToDimension [ 1 ] . suggestFilterValues == null
106+ ? true
107+ : nameToDimension [ 1 ] . suggestFilterValues ,
108+ format : nameToDimension [ 1 ] . format ,
109+ meta : nameToDimension [ 1 ] . meta ,
110+ isVisible : isCubeVisible
111+ ? this . isVisible ( nameToDimension [ 1 ] , ! nameToDimension [ 1 ] . primaryKey )
112+ : false ,
113+ public : isCubeVisible
114+ ? this . isVisible ( nameToDimension [ 1 ] , ! nameToDimension [ 1 ] . primaryKey )
115+ : false ,
116+ primaryKey : ! ! nameToDimension [ 1 ] . primaryKey ,
117+ aliasMember : nameToDimension [ 1 ] . aliasMember ,
118+ granularities :
119+ nameToDimension [ 1 ] . granularities
120+ ? Object . entries ( nameToDimension [ 1 ] . granularities ) . map ( ( g ) => ( {
121+ name : g [ 0 ] ,
122+ title : this . title ( cubeTitle , g , true ) ,
123+ interval : g [ 1 ] . interval ,
124+ offset : g [ 1 ] . offset ,
125+ origin : g [ 1 ] . origin ,
126+ } ) )
127+ : undefined ,
128+ } ) ) ,
129+ segments : Object . entries ( cube . segments || { } ) . map ( ( nameToSegment ) => ( {
130+ name : `${ cube . name } .${ nameToSegment [ 0 ] } ` ,
131+ title : this . title ( cubeTitle , nameToSegment ) ,
132+ shortTitle : this . title ( cubeTitle , nameToSegment , true ) ,
133+ description : nameToSegment [ 1 ] . description ,
134+ meta : nameToSegment [ 1 ] . meta ,
135+ isVisible : isCubeVisible ? this . isVisible ( nameToSegment [ 1 ] , true ) : false ,
136+ public : isCubeVisible ? this . isVisible ( nameToSegment [ 1 ] , true ) : false ,
137+ } ) ) ,
148138 hierarchies : ( cube . evaluatedHierarchies || [ ] ) . map ( ( it ) => ( {
149139 ...it ,
150140 aliasMember : it . aliasMember ,
@@ -159,21 +149,21 @@ export class CubeToMetaTransformer {
159149
160150 queriesForContext ( contextId ) {
161151 // return All queries if no context pass
162- if ( R . isNil ( contextId ) || R . isEmpty ( contextId ) ) {
152+ if ( contextId == null || contextId . length === 0 ) {
163153 return this . queries ;
164154 }
165155
166156 const context = this . contextEvaluator . contextDefinitions [ contextId ] ;
167157
168158 // If contextId is wrong
169- if ( R . isNil ( context ) ) {
159+ if ( context == null ) {
170160 throw new UserError ( `Context ${ contextId } doesn't exist` ) ;
171161 }
172162
173163 // As for now context works on the cubes level
174- return R . filter (
175- ( query ) => R . includes ( query . config . name , context . contextMembers )
176- ) ( this . queries ) ;
164+ return this . queries . filter (
165+ ( query ) => context . contextMembers . includes ( query . config . name )
166+ ) ;
177167 }
178168
179169 /**
0 commit comments