@cubejs-backend/schema-compiler 0.34.13 → 0.34.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/dist/src/adapter/AWSElasticSearchQuery.d.ts +2 -2
  2. package/dist/src/adapter/AWSElasticSearchQuery.d.ts.map +1 -1
  3. package/dist/src/adapter/BaseDimension.d.ts +1 -1
  4. package/dist/src/adapter/BaseDimension.d.ts.map +1 -1
  5. package/dist/src/adapter/BaseFilter.d.ts +1 -1
  6. package/dist/src/adapter/BaseFilter.d.ts.map +1 -1
  7. package/dist/src/adapter/BaseMeasure.d.ts +1 -1
  8. package/dist/src/adapter/BaseMeasure.d.ts.map +1 -1
  9. package/dist/src/adapter/BaseQuery.d.ts +11 -11
  10. package/dist/src/adapter/BaseQuery.d.ts.map +1 -1
  11. package/dist/src/adapter/BaseQuery.js +22 -1
  12. package/dist/src/adapter/BaseQuery.js.map +1 -1
  13. package/dist/src/adapter/BaseSegment.d.ts +1 -1
  14. package/dist/src/adapter/BaseSegment.d.ts.map +1 -1
  15. package/dist/src/adapter/BaseTimeDimension.d.ts +1 -1
  16. package/dist/src/adapter/BaseTimeDimension.d.ts.map +1 -1
  17. package/dist/src/adapter/BigqueryQuery.d.ts +2 -2
  18. package/dist/src/adapter/BigqueryQuery.d.ts.map +1 -1
  19. package/dist/src/adapter/ClickHouseQuery.d.ts +2 -2
  20. package/dist/src/adapter/ClickHouseQuery.d.ts.map +1 -1
  21. package/dist/src/adapter/CrateQuery.d.ts +1 -1
  22. package/dist/src/adapter/CrateQuery.d.ts.map +1 -1
  23. package/dist/src/adapter/ElasticSearchQuery.d.ts +2 -2
  24. package/dist/src/adapter/ElasticSearchQuery.d.ts.map +1 -1
  25. package/dist/src/adapter/HiveQuery.d.ts +2 -2
  26. package/dist/src/adapter/HiveQuery.d.ts.map +1 -1
  27. package/dist/src/adapter/MongoBiQuery.d.ts +1 -1
  28. package/dist/src/adapter/MongoBiQuery.d.ts.map +1 -1
  29. package/dist/src/adapter/MssqlQuery.d.ts +3 -3
  30. package/dist/src/adapter/MssqlQuery.d.ts.map +1 -1
  31. package/dist/src/adapter/MysqlQuery.d.ts +2 -2
  32. package/dist/src/adapter/MysqlQuery.d.ts.map +1 -1
  33. package/dist/src/adapter/OracleQuery.d.ts +2 -2
  34. package/dist/src/adapter/OracleQuery.d.ts.map +1 -1
  35. package/dist/src/adapter/PostgresQuery.d.ts +2 -2
  36. package/dist/src/adapter/PostgresQuery.d.ts.map +1 -1
  37. package/dist/src/adapter/PreAggregations.d.ts +8 -6
  38. package/dist/src/adapter/PreAggregations.d.ts.map +1 -1
  39. package/dist/src/adapter/PreAggregations.js +43 -16
  40. package/dist/src/adapter/PreAggregations.js.map +1 -1
  41. package/dist/src/adapter/PrestodbQuery.d.ts +2 -2
  42. package/dist/src/adapter/PrestodbQuery.d.ts.map +1 -1
  43. package/dist/src/adapter/RedshiftQuery.d.ts +1 -1
  44. package/dist/src/adapter/RedshiftQuery.d.ts.map +1 -1
  45. package/dist/src/adapter/SnowflakeQuery.d.ts +1 -1
  46. package/dist/src/adapter/SnowflakeQuery.d.ts.map +1 -1
  47. package/dist/src/adapter/SqliteQuery.d.ts +2 -2
  48. package/dist/src/adapter/SqliteQuery.d.ts.map +1 -1
  49. package/dist/src/adapter/VerticaQuery.d.ts +1 -1
  50. package/dist/src/adapter/VerticaQuery.d.ts.map +1 -1
  51. package/dist/src/compiler/CubeEvaluator.d.ts +6 -2
  52. package/dist/src/compiler/CubeEvaluator.d.ts.map +1 -1
  53. package/dist/src/compiler/CubeEvaluator.js +21 -8
  54. package/dist/src/compiler/CubeEvaluator.js.map +1 -1
  55. package/dist/src/compiler/DataSchemaCompiler.d.ts +1 -1
  56. package/dist/src/compiler/DataSchemaCompiler.d.ts.map +1 -1
  57. package/dist/src/parser/Python3Lexer.js +1 -1
  58. package/dist/src/parser/Python3Lexer.js.map +1 -1
  59. package/dist/src/scaffolding/ScaffoldingSchema.js +1 -1
  60. package/dist/src/scaffolding/ScaffoldingSchema.js.map +1 -1
  61. package/dist/src/scaffolding/ScaffoldingTemplate.js +1 -1
  62. package/dist/src/scaffolding/ScaffoldingTemplate.js.map +1 -1
  63. package/package.json +6 -6
@@ -29,5 +29,5 @@ export class BaseTimeDimension extends BaseFilter {
29
29
  wildcardRange(): string[];
30
30
  boundaryDateRangeFormatted(): any;
31
31
  }
32
- import { BaseFilter } from "./BaseFilter";
32
+ import { BaseFilter } from './BaseFilter';
33
33
  //# sourceMappingURL=BaseTimeDimension.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseTimeDimension.d.ts","sourceRoot":"","sources":["../../../src/adapter/BaseTimeDimension.js"],"names":[],"mappings":"AASA;IAQI,eAAwC;IACxC,iBAA4C;IAC5C,uBAAwD;IAG1D,iCAMC;IAED,iCAMC;IAUD,6CAIC;IAED,2BAEC;IAED,gEAKC;IAsBD,qBAEC;IAgBD,yBAMC;IAJG,4BAAoE;IAMxE,gBAMC;IAJG,mBAAiE;IAMrE,qBAIC;IAED,8BAEC;IAED,0CAEC;IAED,uBAKC;IAHG,0BAAgE;IAKpE,cAKC;IAHG,iBAA6D;IAKjE,mBAIC;IAED,4BAEC;IAED,wCAEC;IAED,4BAUC;IAED,yBASC;IAPG,4BAIG;IAKP,sBAYC;IAED,0BAEC;IAED,kCAOC;CACF"}
1
+ {"version":3,"file":"BaseTimeDimension.d.ts","sourceRoot":"","sources":["../../../src/adapter/BaseTimeDimension.js"],"names":[],"mappings":"AASA;IAQI,eAAwC;IACxC,iBAA4C;IAC5C,uBAAwD;IAG1D,iCAMC;IAED,iCAMC;IAUD,6CAIC;IAED,2BAEC;IAED,gEAKC;IAsBD,qBAEC;IAgBD,yBAMC;IAJG,4BAAoE;IAMxE,gBAMC;IAJG,mBAAiE;IAMrE,qBAIC;IAED,8BAEC;IAED,0CAEC;IAED,uBAKC;IAHG,0BAAgE;IAKpE,cAKC;IAHG,iBAA6D;IAKjE,mBAIC;IAED,4BAEC;IAED,wCAEC;IAED,4BAUC;IAED,yBASC;IAPG,4BAIG;IAKP,sBAYC;IAED,0BAEC;IAED,kCAOC;CACF;2BA5M0B,cAAc"}
@@ -9,12 +9,12 @@ export class BigqueryQuery extends BaseQuery {
9
9
  countDistinctApprox(sql: any): string;
10
10
  concatStringsSql(strings: any): string;
11
11
  }
12
- import { BaseQuery } from "./BaseQuery";
12
+ import { BaseQuery } from './BaseQuery';
13
13
  declare class BigqueryFilter extends BaseFilter {
14
14
  likeIgnoreCase(column: any, not: any, param: any, type: any): string;
15
15
  castParameter(): "?" | "CAST(? AS BOOL)" | "CAST(? AS FLOAT64)";
16
16
  castToString(sql: any): string;
17
17
  }
18
- import { BaseFilter } from "./BaseFilter";
18
+ import { BaseFilter } from './BaseFilter';
19
19
  export {};
20
20
  //# sourceMappingURL=BigqueryQuery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BigqueryQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/BigqueryQuery.js"],"names":[],"mappings":"AAoCA;IACE,8BAEC;IAUD,oCAEC;IAED,4DAEC;IAED,uCAEC;IA0DD,2EAEC;IAED,0BAEC;IAED,2BAEC;IAED,sCAEC;IAED,uCAEC;CAsBF;;AA/ID;IACE,qEAIC;IAED,gEAQC;IAED,+BAEC;CACF"}
1
+ {"version":3,"file":"BigqueryQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/BigqueryQuery.js"],"names":[],"mappings":"AAoCA;IACE,8BAEC;IAUD,oCAEC;IAED,4DAEC;IAED,uCAEC;IA0DD,2EAEC;IAED,0BAEC;IAED,2BAEC;IAED,sCAEC;IAED,uCAEC;CAsBF;0BA7JyB,aAAa;AAcvC;IACE,qEAIC;IAED,gEAQC;IAED,+BAEC;CACF;2BAjC0B,cAAc"}
@@ -8,11 +8,11 @@ export class ClickHouseQuery extends BaseQuery {
8
8
  primaryKeyCount(cubeName: any, distinct: any): string;
9
9
  concatStringsSql(strings: any): string;
10
10
  }
11
- import { BaseQuery } from "./BaseQuery";
11
+ import { BaseQuery } from './BaseQuery';
12
12
  declare class ClickHouseFilter extends BaseFilter {
13
13
  likeIgnoreCase(column: any, not: any, param: any, type: any): string;
14
14
  castParameter(): "?" | "toFloat64(?)";
15
15
  }
16
- import { BaseFilter } from "./BaseFilter";
16
+ import { BaseFilter } from './BaseFilter';
17
17
  export {};
18
18
  //# sourceMappingURL=ClickHouseQuery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClickHouseQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/ClickHouseQuery.js"],"names":[],"mappings":"AA8BA;IACE,yCAEC;IAED,oCAEC;IAED,8BASC;IAED,4DAOC;IAED,+DAKC;IA0CD,4BAwBC;IAiCD,sDAUC;IA+CD,uCAGC;CA0BF;;AA3OD;IACE,qEAIC;IAED,sCAMC;CACF"}
1
+ {"version":3,"file":"ClickHouseQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/ClickHouseQuery.js"],"names":[],"mappings":"AA8BA;IACE,yCAEC;IAED,oCAEC;IAED,8BASC;IAED,4DAOC;IAED,+DAKC;IA0CD,4BAwBC;IAiCD,sDAUC;IA+CD,uCAGC;CA0BF;0BAzPyB,aAAa;AAcvC;IACE,qEAIC;IAED,sCAMC;CACF;2BA3B0B,cAAc"}
@@ -3,5 +3,5 @@ export class CrateQuery extends PostgresQuery {
3
3
  hllMerge(sql: any): void;
4
4
  countDistinctApprox(sql: any): void;
5
5
  }
6
- import { PostgresQuery } from "./PostgresQuery";
6
+ import { PostgresQuery } from './PostgresQuery';
7
7
  //# sourceMappingURL=CrateQuery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CrateQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/CrateQuery.js"],"names":[],"mappings":"AAGA;IACE,wBAEC;IAED,yBAEC;IAGD,oCAEC;CACF"}
1
+ {"version":3,"file":"CrateQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/CrateQuery.js"],"names":[],"mappings":"AAGA;IACE,wBAEC;IAED,yBAEC;IAGD,oCAEC;CACF;8BAhB6B,iBAAiB"}
@@ -5,10 +5,10 @@ export class ElasticSearchQuery extends BaseQuery {
5
5
  getFieldAlias(id: any): any;
6
6
  escapeColumnName(name: any): string;
7
7
  }
8
- import { BaseQuery } from "./BaseQuery";
8
+ import { BaseQuery } from './BaseQuery';
9
9
  declare class ElasticSearchQueryFilter extends BaseFilter {
10
10
  likeIgnoreCase(column: any, not: any, param: any, type: any): string;
11
11
  }
12
- import { BaseFilter } from "./BaseFilter";
12
+ import { BaseFilter } from './BaseFilter';
13
13
  export {};
14
14
  //# sourceMappingURL=ElasticSearchQuery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ElasticSearchQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/ElasticSearchQuery.js"],"names":[],"mappings":"AA6BA;IACE,iDAEC;IAED,8BAEC;IAoBD,yDAEC;IAiCD,4BAsBC;IAED,oCAEC;CACF;;AArGD;IACE,qEAQC;CACF"}
1
+ {"version":3,"file":"ElasticSearchQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/ElasticSearchQuery.js"],"names":[],"mappings":"AA6BA;IACE,iDAEC;IAED,8BAEC;IAoBD,yDAEC;IAiCD,4BAsBC;IAED,oCAEC;CACF;0BAnHyB,aAAa;AAcvC;IACE,qEAQC;CACF;2BAvB0B,cAAc"}
@@ -4,10 +4,10 @@ export class HiveQuery extends BaseQuery {
4
4
  timeGroupedColumn(granularity: any, dimension: any): any;
5
5
  escapeColumnName(name: any): string;
6
6
  }
7
- import { BaseQuery } from "./BaseQuery";
7
+ import { BaseQuery } from './BaseQuery';
8
8
  declare class HiveFilter extends BaseFilter {
9
9
  likeIgnoreCase(column: any, not: any, param: any, type: any): string;
10
10
  }
11
- import { BaseFilter } from "./BaseFilter";
11
+ import { BaseFilter } from './BaseFilter';
12
12
  export {};
13
13
  //# sourceMappingURL=HiveQuery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"HiveQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/HiveQuery.js"],"names":[],"mappings":"AAuBA;IACE,mCAEC;IAED,8BAEC;IAsBD,yDAEC;IAED,oCAEC;CAkDF;;AA7FD;IACE,qEAIC;CACF"}
1
+ {"version":3,"file":"HiveQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/HiveQuery.js"],"names":[],"mappings":"AAuBA;IACE,mCAEC;IAED,8BAEC;IAsBD,yDAEC;IAED,oCAEC;CAkDF;0BA1GyB,aAAa;AAavC;IACE,qEAIC;CACF;2BAlB0B,cAAc"}
@@ -1,5 +1,5 @@
1
1
  export class MongoBiQuery extends MysqlQuery {
2
2
  convertTz(field: any): any;
3
3
  }
4
- import { MysqlQuery } from "./MysqlQuery";
4
+ import { MysqlQuery } from './MysqlQuery';
5
5
  //# sourceMappingURL=MongoBiQuery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MongoBiQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/MongoBiQuery.js"],"names":[],"mappings":"AAIA;IACE,2BAaC;CAKF"}
1
+ {"version":3,"file":"MongoBiQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/MongoBiQuery.js"],"names":[],"mappings":"AAIA;IACE,2BAaC;CAKF;2BArB0B,cAAc"}
@@ -5,14 +5,14 @@ export class MssqlQuery extends BaseQuery {
5
5
  newParamAllocator(expressionParams: any): MssqlParamAllocator;
6
6
  wrapSegmentForDimensionSelect(sql: any): string;
7
7
  }
8
- import { BaseQuery } from "./BaseQuery";
8
+ import { BaseQuery } from './BaseQuery';
9
9
  declare class MssqlFilter extends BaseFilter {
10
10
  likeIgnoreCase(column: any, not: any, param: any, type: any): string;
11
11
  }
12
12
  declare class MssqlParamAllocator extends ParamAllocator {
13
13
  paramPlaceHolder(paramIndex: any): string;
14
14
  }
15
- import { BaseFilter } from "./BaseFilter";
16
- import { ParamAllocator } from "./ParamAllocator";
15
+ import { BaseFilter } from './BaseFilter';
16
+ import { ParamAllocator } from './ParamAllocator';
17
17
  export {};
18
18
  //# sourceMappingURL=MssqlQuery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MssqlQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/MssqlQuery.js"],"names":[],"mappings":"AAsDA;IACE,oCAEC;IAED,8BAEC;IAUD,yDAEC;IAED,8DAEC;IA+ED,gDAEC;CAmBF;;AAxID;IAME,qEAIC;CACF;AA5BD;IACE,0CAEC;CACF"}
1
+ {"version":3,"file":"MssqlQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/MssqlQuery.js"],"names":[],"mappings":"AAsDA;IACE,oCAEC;IAED,8BAEC;IAUD,yDAEC;IAED,8DAEC;IA+ED,gDAEC;CAmBF;0BA7KyB,aAAa;AAqCvC;IAME,qEAIC;CACF;AA5BD;IACE,0CAEC;CACF;2BAvB0B,cAAc;+BACV,kBAAkB"}
@@ -6,10 +6,10 @@ export class MysqlQuery extends BaseQuery {
6
6
  concatStringsSql(strings: any): string;
7
7
  wrapSegmentForDimensionSelect(sql: any): string;
8
8
  }
9
- import { BaseQuery } from "./BaseQuery";
9
+ import { BaseQuery } from './BaseQuery';
10
10
  declare class MysqlFilter extends BaseFilter {
11
11
  likeIgnoreCase(column: any, not: any, param: any, type: any): string;
12
12
  }
13
- import { BaseFilter } from "./BaseFilter";
13
+ import { BaseFilter } from './BaseFilter';
14
14
  export {};
15
15
  //# sourceMappingURL=MysqlQuery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MysqlQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/MysqlQuery.js"],"names":[],"mappings":"AAyBA;IACE,oCAEC;IAED,8BAEC;IAsBD,4DAEC;IAED,oCAEC;IASD,uCAEC;IAMD,gDAEC;CAgBF;;AA9ED;IACE,qEAIC;CACF"}
1
+ {"version":3,"file":"MysqlQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/MysqlQuery.js"],"names":[],"mappings":"AAyBA;IACE,oCAEC;IAED,8BAEC;IAsBD,4DAEC;IAED,oCAEC;IASD,uCAEC;IAMD,gDAEC;CAgBF;0BA7FyB,aAAa;AAevC;IACE,qEAIC;CACF;2BApB0B,cAAc"}
@@ -4,13 +4,13 @@ export class OracleQuery extends BaseQuery {
4
4
  timeGroupedColumn(granularity: any, dimension: any): any;
5
5
  newFilter(filter: any): OracleFilter;
6
6
  }
7
- import { BaseQuery } from "./BaseQuery";
7
+ import { BaseQuery } from './BaseQuery';
8
8
  declare class OracleFilter extends BaseFilter {
9
9
  /**
10
10
  * "ILIKE" does't support
11
11
  */
12
12
  likeIgnoreCase(column: any, not: any, param: any, type: any): string;
13
13
  }
14
- import { BaseFilter } from "./BaseFilter";
14
+ import { BaseFilter } from './BaseFilter';
15
15
  export {};
16
16
  //# sourceMappingURL=OracleQuery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OracleQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/OracleQuery.js"],"names":[],"mappings":"AA6BA;IAiCE,2BAKC;IAUD,2CAEC;IAED,yDAKC;IAED,qCAEC;CAcF;;AA1FD;IAKE;;OAEG;IACH,qEAIC;CACF"}
1
+ {"version":3,"file":"OracleQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/OracleQuery.js"],"names":[],"mappings":"AA6BA;IAiCE,2BAKC;IAUD,2CAEC;IAED,yDAKC;IAED,qCAEC;CAcF;0BAxGyB,aAAa;AAcvC;IAKE;;OAEG;IACH,qEAIC;CACF;2BA1B0B,cAAc"}
@@ -6,10 +6,10 @@ export class PostgresQuery extends BaseQuery {
6
6
  hllMerge(sql: any): string;
7
7
  countDistinctApprox(sql: any): string;
8
8
  }
9
- import { BaseQuery } from "./BaseQuery";
9
+ import { BaseQuery } from './BaseQuery';
10
10
  declare class PostgresParamAllocator extends ParamAllocator {
11
11
  paramPlaceHolder(paramIndex: any): string;
12
12
  }
13
- import { ParamAllocator } from "./ParamAllocator";
13
+ import { ParamAllocator } from './ParamAllocator';
14
14
  export {};
15
15
  //# sourceMappingURL=PostgresQuery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PostgresQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/PostgresQuery.js"],"names":[],"mappings":"AAqBA;IACE,iEAEC;IAED,8BAEC;IAED,4DAEC;IAED,0BAEC;IAED,2BAEC;IAED,sCAEC;CAcF;;AA3CD;IACE,0CAEC;CACF"}
1
+ {"version":3,"file":"PostgresQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/PostgresQuery.js"],"names":[],"mappings":"AAqBA;IACE,iEAEC;IAED,8BAEC;IAED,4DAEC;IAED,0BAEC;IAED,2BAEC;IAED,sCAEC;CAcF;0BA1DyB,aAAa;AAevC;IACE,0CAEC;CACF;+BAlB8B,kBAAkB"}
@@ -20,9 +20,10 @@ export class PreAggregations {
20
20
  ownedTimeDimensionsAsIs: any;
21
21
  };
22
22
  static ownedMembers(query: any, members: any): any[];
23
+ static firstNonAliasMember(query: any, members: any): any;
23
24
  static sortTimeDimensionsWithRollupGranularity(timeDimensions: any): any;
24
25
  static timeDimensionsAsIs(timeDimensions: any): any;
25
- static collectFilterDimensionsWithSingleValueEqual(filters: any, map: any): any;
26
+ static collectFilterDimensionsWithSingleValueEqual(filters: any, map: any, aliasedToFirstNonAliasedDimension: any): any;
26
27
  static transformedQueryToReferences(query: any): {
27
28
  measures: any;
28
29
  dimensions: any;
@@ -35,9 +36,10 @@ export class PreAggregations {
35
36
  * @param {Object?} refs pre-aggs reference
36
37
  * @returns {function(preagg: Object): boolean}
37
38
  */
38
- static canUsePreAggregationForTransformedQueryFn(transformedQuery: any, refs: any | null): (arg0: preagg, arg1: any) => boolean;
39
- static squashDimensions(query: any): any[];
40
- static concatDimensionMembers(query: any): any;
39
+ static canUsePreAggregationForTransformedQueryFn(transformedQuery: any, refs: any | null): (arg0: preagg) => any;
40
+ static squashDimensions(query: any, flattenDimensionMembers: any): any[];
41
+ static aliasedToFirstNonAliasedDimension(query: any, flattenDimensionMembers: any): any;
42
+ static flattenDimensionMembers(query: any): any[];
41
43
  static checkPartitionGranularityDefined(cube: any, preAggregationName: any, preAggregation: any): any;
42
44
  static memberNameMismatchValidation(preAggA: any, preAggB: any, memberType: any): void;
43
45
  static memberShortNames(memberArray: any, isTimeDimension: any): any;
@@ -107,8 +109,8 @@ export class PreAggregations {
107
109
  cube: any;
108
110
  references: any;
109
111
  } | null;
110
- canUsePreAggregationFn(query: any, refs: any): (arg0: preagg, arg1: any) => boolean;
111
- canUsePreAggregationAndCheckIfRefValid(query: any): (refs: any) => (arg0: preagg, arg1: any) => boolean;
112
+ canUsePreAggregationFn(query: any, refs: any): (arg0: preagg) => any;
113
+ canUsePreAggregationAndCheckIfRefValid(query: any): (refs: any) => (arg0: preagg) => any;
112
114
  checkAutoRollupPreAggregationValid(refs: any): boolean;
113
115
  getCubeLattice(cube: any, preAggregationName: any, preAggregation: any): void;
114
116
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"PreAggregations.d.ts","sourceRoot":"","sources":["../../../src/adapter/PreAggregations.js"],"names":[],"mappings":"AAIA;IAuQE;;;;;;;;;;;;;;;;;;;MA0GC;IAED,qDAMC;IAED,yEAKC;IAED,oDAKC;IAED,gFAcC;IAED;;;;MAMC;IA6BD;;;;;;OAMG;IACH,wHAFuC,OAAO,CAmL7C;IAED,2CAIC;IAED,+CAEC;IAqQD,sGAKC;IAED,uFASC;IAED,qEAEC;IAeD,kDAUC;IA/6BD,oEAKC;IAJC,WAAkB;IAClB,oBAAoC;IACpC,sBAAwC;IACxC,iBAAsB;IAGxB;;OAEG;IACH,8BAFY,OAAO,EAAE,CAcpB;IAED,uCAqBC;IAED,2BAGC;IAED,6DAsBC;IAED,mDAIC;IAED,uGAUC;IAED;;;MASC;IAED,iFAIC;IAED,qCAKC;IAHG,gDAAmF;IAOvF,yDAkBC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA6FC;IAED,uGAOC;IAED;;;;;aAgBC;IA4JD,4EAgCuC,OAAO,CA3B7C;IAED,gGAyBuC,OAAO,CApB7C;IAED,uDAWC;IAwMD,8EAEC;IAED;;;;;;OAMG;IACH,kCASC;IAPG,4BAI8I;IAKlJ,6EA4BC;IAED;;;;OAIG;IACH,sBAFa,UAAa,CA8BzB;IAED;;;;;;;QAQC;IAGD,4DAgCC;IAED,0EAYC;IAED,mCAqBC;IAED,+CAMC;IAED;;;;;;;MA8EC;IAwBD;;;;;QAOC;IAED;;;;;;;;;;;;;;;;;;;MAEC;IAcD,uCAEC;IAED;;;MAIC;IAED,yBAMC;IAED,iEAUC;IAED,4DAiBC;IAED,gEAcC;IAED,kFAUC;IAED,0DAUC;IAED,iFAwBC;IAED,oEAaC;IAED,4EAsCC;IAED,4GA6EC;IAED;;MAgBC;IAED;;MAWC;IAED;;MAWC;IAED;;MAWC;IAED,2DAIC;IAED,iDAEC;IAED,mDAEC;IAED,uDAEC;IAED,8CAEC;CACF"}
1
+ {"version":3,"file":"PreAggregations.d.ts","sourceRoot":"","sources":["../../../src/adapter/PreAggregations.js"],"names":[],"mappings":"AAIA;IAuQE;;;;;;;;;;;;;;;;;;;MA4HC;IAED,qDAMC;IAED,0DAMC;IAED,yEAKC;IAED,oDAKC;IAED,wHAeC;IAED;;;;MAMC;IA6BD;;;;;;OAMG;IACH,iHAiLC;IAED,yEAOC;IAED,wFAKC;IAED,kDAOC;IAqQD,sGAKC;IAED,uFASC;IAED,qEAEC;IAeD,kDAUC;IAz9BD,oEAKC;IAJC,WAAkB;IAClB,oBAAoC;IACpC,sBAAwC;IACxC,iBAAsB;IAGxB;;OAEG;IACH,8BAFY,OAAO,EAAE,CAcpB;IAED,uCAqBC;IAED,2BAGC;IAED,6DAsBC;IAED,mDAIC;IAED,uGAUC;IAED;;;MASC;IAED,iFAIC;IAED,qCAKC;IAHG,gDAAmF;IAOvF,yDAkBC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA6FC;IAED,uGAOC;IAED;;;;;aAgBC;IAuLD,qEAKC;IAED,yFAKC;IAED,uDAWC;IAuND,8EAEC;IAED;;;;;;OAMG;IACH,kCASC;IAPG,4BAI8I;IAKlJ,6EA4BC;IAED;;;;OAIG;IACH,sBAFa,UAAa,CA8BzB;IAED;;;;;;;QAQC;IAGD,4DAgCC;IAED,0EAYC;IAED,mCAqBC;IAED,+CAMC;IAED;;;;;;;MA8EC;IAwBD;;;;;QAOC;IAED;;;;;;;;;;;;;;;;;;;MAEC;IAcD,uCAEC;IAED;;;MAIC;IAED,yBAMC;IAED,iEAUC;IAED,4DAiBC;IAED,gEAcC;IAED,kFAUC;IAED,0DAUC;IAED,iFAwBC;IAED,oEAaC;IAED,4EAsCC;IAED,4GA6EC;IAED;;MAgBC;IAED;;MAWC;IAED;;MAWC;IAED;;MAWC;IAED,2DAIC;IAED,iDAEC;IAED,mDAEC;IAED,uDAEC;IAED,8CAEC;CACF"}
@@ -207,13 +207,15 @@ class PreAggregations {
207
207
  return null;
208
208
  }
209
209
  static transformQueryToCanUseForm(query) {
210
- const sortedDimensions = this.squashDimensions(query);
210
+ const flattenDimensionMembers = this.flattenDimensionMembers(query);
211
+ const sortedDimensions = this.squashDimensions(query, flattenDimensionMembers);
212
+ const aliasedToFirstNonAliasedDimension = this.aliasedToFirstNonAliasedDimension(query, flattenDimensionMembers);
211
213
  const measures = query.measures.concat(query.measureFilters);
212
- const measurePaths = ramda_1.default.uniq(measures.map(m => m.measure));
214
+ const measurePaths = ramda_1.default.uniq(PreAggregations.firstNonAliasMember(query, measures));
213
215
  const collectLeafMeasures = query.collectLeafMeasures.bind(query);
214
- const dimensionsList = query.dimensions.map(dim => dim.dimension);
215
- const segmentsList = query.segments.map(s => s.segment);
216
- const ownedDimensions = PreAggregations.ownedMembers(query, PreAggregations.concatDimensionMembers(query));
216
+ const dimensionsList = PreAggregations.firstNonAliasMember(query, query.dimensions);
217
+ const segmentsList = PreAggregations.firstNonAliasMember(query, query.segments);
218
+ const ownedDimensions = PreAggregations.ownedMembers(query, flattenDimensionMembers);
217
219
  const ownedTimeDimensions = query.timeDimensions.map(td => {
218
220
  const owned = PreAggregations.ownedMembers(query, [td]);
219
221
  let { dimension } = td;
@@ -228,6 +230,18 @@ class PreAggregations {
228
230
  granularity: td.granularity,
229
231
  });
230
232
  }).map(d => query.newTimeDimension(d));
233
+ const firstNonAliasTimeDimensions = query.timeDimensions.map(td => {
234
+ const nonAlias = PreAggregations.firstNonAliasMember(query, [td]);
235
+ let { dimension } = td;
236
+ if (nonAlias.length === 1) {
237
+ [dimension] = nonAlias;
238
+ }
239
+ return query.newTimeDimension({
240
+ dimension,
241
+ dateRange: td.dateRange,
242
+ granularity: td.granularity,
243
+ });
244
+ }).map(d => query.newTimeDimension(d));
231
245
  const measureToLeafMeasures = {};
232
246
  const leafMeasurePaths = ramda_1.default.pipe(ramda_1.default.map(m => {
233
247
  const leafMeasures = query.collectFrom([m], collectLeafMeasures, 'collectLeafMeasures');
@@ -251,12 +265,12 @@ class PreAggregations {
251
265
  }
252
266
  return true;
253
267
  }
254
- const sortedTimeDimensions = PreAggregations.sortTimeDimensionsWithRollupGranularity(query.timeDimensions);
255
- const timeDimensions = PreAggregations.timeDimensionsAsIs(query.timeDimensions);
268
+ const sortedTimeDimensions = PreAggregations.sortTimeDimensionsWithRollupGranularity(firstNonAliasTimeDimensions);
269
+ const timeDimensions = PreAggregations.timeDimensionsAsIs(firstNonAliasTimeDimensions);
256
270
  const ownedTimeDimensionsWithRollupGranularity = PreAggregations.sortTimeDimensionsWithRollupGranularity(ownedTimeDimensions);
257
271
  const ownedTimeDimensionsAsIs = PreAggregations.timeDimensionsAsIs(ownedTimeDimensions);
258
272
  const hasNoTimeDimensionsWithoutGranularity = !query.timeDimensions.filter(d => !d.granularity).length;
259
- const allFiltersWithinSelectedDimensions = ramda_1.default.all(d => dimensionsList.indexOf(d) !== -1)(query.filters.map(f => f.dimension));
273
+ const allFiltersWithinSelectedDimensions = ramda_1.default.all(d => dimensionsList.indexOf(d) !== -1)(ramda_1.default.flatten(query.filters.map(f => f.getMembers())).map(f => PreAggregations.firstNonAliasMember(query, [f])[0]));
260
274
  const isAdditive = ramda_1.default.all(m => m.isAdditive(), query.measures);
261
275
  const leafMeasures = leafMeasurePaths.map(path => query.newMeasure(path));
262
276
  const leafMeasureAdditive = ramda_1.default.all(m => m.isAdditive(), leafMeasures);
@@ -268,7 +282,7 @@ class PreAggregations {
268
282
  .reduce((a, b) => query.minGranularity(a, b), null);
269
283
  const granularityHierarchies = query.granularityHierarchies();
270
284
  const hasMultipliedMeasures = query.fullKeyQueryAggregateMeasures().multipliedMeasures.length > 0;
271
- let filterDimensionsSingleValueEqual = this.collectFilterDimensionsWithSingleValueEqual(query.filters, dimensionsList.concat(segmentsList).reduce((map, d) => map.set(d, 1), new Map()));
285
+ let filterDimensionsSingleValueEqual = this.collectFilterDimensionsWithSingleValueEqual(query.filters, dimensionsList.concat(segmentsList).reduce((map, d) => map.set(d, 1), new Map()), aliasedToFirstNonAliasedDimension);
272
286
  filterDimensionsSingleValueEqual =
273
287
  allValuesEq1(filterDimensionsSingleValueEqual) ? new Set(filterDimensionsSingleValueEqual?.keys()) : null;
274
288
  return {
@@ -297,20 +311,26 @@ class PreAggregations {
297
311
  .collectFrom(members, query.collectMemberNamesFor.bind(query), 'collectMemberNamesFor')
298
312
  .filter(d => query.cubeEvaluator.byPathAnyType(d).ownedByCube));
299
313
  }
314
+ static firstNonAliasMember(query, members) {
315
+ return members.map(member => query
316
+ .collectFrom([member], query.collectMemberNamesFor.bind(query), 'collectMemberNamesFor')
317
+ .find(d => !query.cubeEvaluator.byPathAnyType(d).aliasMember));
318
+ }
300
319
  static sortTimeDimensionsWithRollupGranularity(timeDimensions) {
301
320
  return timeDimensions && ramda_1.default.sortBy(ramda_1.default.prop(0), timeDimensions.map(d => [d.dimension, d.rollupGranularity()])) || [];
302
321
  }
303
322
  static timeDimensionsAsIs(timeDimensions) {
304
323
  return timeDimensions && ramda_1.default.sortBy(ramda_1.default.prop(0), timeDimensions.map(d => [d.dimension, d.granularity])) || [];
305
324
  }
306
- static collectFilterDimensionsWithSingleValueEqual(filters, map) {
325
+ static collectFilterDimensionsWithSingleValueEqual(filters, map, aliasedToFirstNonAliasedDimension) {
307
326
  // eslint-disable-next-line no-restricted-syntax
308
327
  for (const f of filters) {
309
328
  if (f.operator === 'equals') {
310
- map.set(f.dimension, Math.min(map.get(f.dimension) || 2, f.values.length));
329
+ const nonAliasedDimension = aliasedToFirstNonAliasedDimension[f.dimension] || f.dimension;
330
+ map.set(nonAliasedDimension, Math.min(map.get(nonAliasedDimension) || 2, f.values.length));
311
331
  }
312
332
  else if (f.operator === 'and') {
313
- const res = this.collectFilterDimensionsWithSingleValueEqual(f.values, map);
333
+ const res = this.collectFilterDimensionsWithSingleValueEqual(f.values, map, aliasedToFirstNonAliasedDimension);
314
334
  if (res == null)
315
335
  return null;
316
336
  }
@@ -465,11 +485,18 @@ class PreAggregations {
465
485
  return canUseFn;
466
486
  }
467
487
  }
468
- static squashDimensions(query) {
469
- return ramda_1.default.pipe(ramda_1.default.uniq, ramda_1.default.sortBy(ramda_1.default.identity))(query.dimensions.concat(query.filters).map(d => d.dimension).concat(query.segments.map(s => s.segment)));
488
+ static squashDimensions(query, flattenDimensionMembers) {
489
+ return ramda_1.default.pipe(ramda_1.default.uniq, ramda_1.default.sortBy(ramda_1.default.identity))(PreAggregations.firstNonAliasMember(query, flattenDimensionMembers));
490
+ }
491
+ static aliasedToFirstNonAliasedDimension(query, flattenDimensionMembers) {
492
+ return flattenDimensionMembers
493
+ .map(member => ({ [member.dimension]: PreAggregations.firstNonAliasMember(query, [member])[0] })).reduce((a, b) => ({ ...a, ...b }), {});
470
494
  }
471
- static concatDimensionMembers(query) {
472
- return query.dimensions.concat(query.filters).concat(query.segments);
495
+ static flattenDimensionMembers(query) {
496
+ return ramda_1.default.flatten(query.dimensions
497
+ .concat(query.filters)
498
+ .concat(query.segments)
499
+ .map(m => m.getMembers()));
473
500
  }
474
501
  // eslint-disable-next-line no-unused-vars
475
502
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
@@ -1 +1 @@
1
- {"version":3,"file":"PreAggregations.js","sourceRoot":"","sources":["../../../src/adapter/PreAggregations.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PreAggregations.js","sourceRoot":"","sources":["../../../src/adapter/PreAggregations.js"],"names":[],"mappings":"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"}
@@ -7,11 +7,11 @@ export class PrestodbQuery extends BaseQuery {
7
7
  hllMerge(sql: any): string;
8
8
  countDistinctApprox(sql: any): string;
9
9
  }
10
- import { BaseQuery } from "./BaseQuery";
10
+ import { BaseQuery } from './BaseQuery';
11
11
  declare class PrestodbFilter extends BaseFilter {
12
12
  likeIgnoreCase(column: any, not: any, param: any, type: any): string;
13
13
  castParameter(): "?" | "CAST(? AS BOOLEAN)" | "CAST(? AS DOUBLE)";
14
14
  }
15
- import { BaseFilter } from "./BaseFilter";
15
+ import { BaseFilter } from './BaseFilter';
16
16
  export {};
17
17
  //# sourceMappingURL=PrestodbQuery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PrestodbQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/PrestodbQuery.js"],"names":[],"mappings":"AAiCA;IACE,uCAEC;IAED,yBAEC;IAUD,2BAKC;IAED,4DAEC;IAiCD,0BAEC;IAED,2BAEC;IAED,sCAEC;CAiBF;;AAzGD;IACE,qEAIC;IAED,kEASC;CACF"}
1
+ {"version":3,"file":"PrestodbQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/PrestodbQuery.js"],"names":[],"mappings":"AAiCA;IACE,uCAEC;IAED,yBAEC;IAUD,2BAKC;IAED,4DAEC;IAiCD,0BAEC;IAED,2BAEC;IAED,sCAEC;CAiBF;0BAvHyB,aAAa;AAcvC;IACE,qEAIC;IAED,kEASC;CACF;2BA9B0B,cAAc"}
@@ -1,4 +1,4 @@
1
1
  export class RedshiftQuery extends PostgresQuery {
2
2
  }
3
- import { PostgresQuery } from "./PostgresQuery";
3
+ import { PostgresQuery } from './PostgresQuery';
4
4
  //# sourceMappingURL=RedshiftQuery.d.ts.map