@cubejs-backend/schema-compiler 0.35.25 → 0.35.27
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.
- package/dist/src/adapter/BaseFilter.d.ts +1 -1
- package/dist/src/adapter/BaseQuery.d.ts +1 -0
- package/dist/src/adapter/BaseQuery.d.ts.map +1 -1
- package/dist/src/adapter/BaseQuery.js +25 -0
- package/dist/src/adapter/BaseQuery.js.map +1 -1
- package/dist/src/adapter/BaseTimeDimension.d.ts +4 -1
- package/dist/src/adapter/BaseTimeDimension.d.ts.map +1 -1
- package/dist/src/adapter/BaseTimeDimension.js +7 -0
- package/dist/src/adapter/BaseTimeDimension.js.map +1 -1
- package/dist/src/compiler/CubeEvaluator.d.ts +16 -2
- package/dist/src/compiler/CubeEvaluator.d.ts.map +1 -1
- package/dist/src/compiler/CubeEvaluator.js +35 -3
- package/dist/src/compiler/CubeEvaluator.js.map +1 -1
- package/dist/src/compiler/CubeSymbols.d.ts.map +1 -1
- package/dist/src/compiler/CubeSymbols.js +4 -0
- package/dist/src/compiler/CubeSymbols.js.map +1 -1
- package/dist/src/compiler/CubeToMetaTransformer.d.ts +1 -0
- package/dist/src/compiler/CubeToMetaTransformer.d.ts.map +1 -1
- package/dist/src/compiler/CubeToMetaTransformer.js +1 -0
- package/dist/src/compiler/CubeToMetaTransformer.js.map +1 -1
- package/dist/src/compiler/CubeValidator.d.ts.map +1 -1
- package/dist/src/compiler/CubeValidator.js +10 -0
- package/dist/src/compiler/CubeValidator.js.map +1 -1
- package/dist/src/compiler/DataSchemaCompiler.d.ts.map +1 -1
- package/dist/src/compiler/DataSchemaCompiler.js +0 -1
- package/dist/src/compiler/DataSchemaCompiler.js.map +1 -1
- package/dist/src/compiler/transpilers/CubePropContextTranspiler.d.ts.map +1 -1
- package/dist/src/compiler/transpilers/CubePropContextTranspiler.js +2 -0
- package/dist/src/compiler/transpilers/CubePropContextTranspiler.js.map +1 -1
- package/package.json +4 -4
|
@@ -13,7 +13,7 @@ export declare class BaseFilter extends BaseDimension {
|
|
|
13
13
|
measureDefinition(): import("../compiler/CubeEvaluator").MeasureDefinition;
|
|
14
14
|
path(): any;
|
|
15
15
|
cube(): any;
|
|
16
|
-
definition(): import("../compiler/CubeEvaluator").
|
|
16
|
+
definition(): import("../compiler/CubeEvaluator").MeasureDefinition | import("../compiler/CubeEvaluator").SegmentDefinition;
|
|
17
17
|
escapeWildcardChars(param: any): any;
|
|
18
18
|
isWildcardOperator(): boolean;
|
|
19
19
|
filterParams(): any[];
|
|
@@ -420,6 +420,7 @@ export class BaseQuery {
|
|
|
420
420
|
* @return {[number, string]}
|
|
421
421
|
*/
|
|
422
422
|
protected parseInterval(interval: string): [number, string];
|
|
423
|
+
negateInterval(interval: any): string;
|
|
423
424
|
parseSecondDuration(interval: any): number;
|
|
424
425
|
floorSql(numeric: any): string;
|
|
425
426
|
incrementalRefreshKey(query: any, originalRefreshKey: any, options?: {}): any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/BaseQuery.js"],"names":[],"mappings":"AA+CA;;;;;;;;;;GAUG;AAEH;;;;;;;;;;;;GAYG;AACH;
|
|
1
|
+
{"version":3,"file":"BaseQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/BaseQuery.js"],"names":[],"mappings":"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"}
|
|
@@ -818,6 +818,24 @@ class BaseQuery {
|
|
|
818
818
|
if (memberDef.addGroupByReferences) {
|
|
819
819
|
queryContext = { ...queryContext, dimensions: ramda_1.default.uniq(queryContext.dimensions.concat(memberDef.addGroupByReferences)) };
|
|
820
820
|
}
|
|
821
|
+
if (memberDef.timeShiftReferences) {
|
|
822
|
+
queryContext = {
|
|
823
|
+
...queryContext,
|
|
824
|
+
timeDimensions: queryContext.timeDimensions.map(td => {
|
|
825
|
+
const timeShift = memberDef.timeShiftReferences.find(r => r.timeDimension === td.dimension);
|
|
826
|
+
if (timeShift) {
|
|
827
|
+
if (td.shiftInterval) {
|
|
828
|
+
throw new UserError_1.UserError(`Hierarchical time shift is not supported but was provided for '${td.dimension}'. Parent time shift is '${td.shiftInterval}' and current is '${timeShift.interval}'`);
|
|
829
|
+
}
|
|
830
|
+
return {
|
|
831
|
+
...td,
|
|
832
|
+
shiftInterval: timeShift.type === 'next' ? this.negateInterval(timeShift.interval) : timeShift.interval
|
|
833
|
+
};
|
|
834
|
+
}
|
|
835
|
+
return td;
|
|
836
|
+
})
|
|
837
|
+
};
|
|
838
|
+
}
|
|
821
839
|
queryContext = {
|
|
822
840
|
...queryContext,
|
|
823
841
|
// TODO can't remove filters from OR expression
|
|
@@ -1599,6 +1617,9 @@ class BaseQuery {
|
|
|
1599
1617
|
}
|
|
1600
1618
|
else {
|
|
1601
1619
|
let res = this.autoPrefixAndEvaluateSql(cubeName, symbol.sql);
|
|
1620
|
+
if (symbol.shiftInterval) {
|
|
1621
|
+
res = `(${this.addTimestampInterval(this.timeStampCast(res), symbol.shiftInterval)})`;
|
|
1622
|
+
}
|
|
1602
1623
|
if (this.safeEvaluateSymbolContext().convertTzForRawTimeDimension &&
|
|
1603
1624
|
!memberExpressionType &&
|
|
1604
1625
|
symbol.type === 'time' &&
|
|
@@ -2363,6 +2384,10 @@ class BaseQuery {
|
|
|
2363
2384
|
}
|
|
2364
2385
|
return [duration, intervalMatch[2]];
|
|
2365
2386
|
}
|
|
2387
|
+
negateInterval(interval) {
|
|
2388
|
+
const [duration, grunularity] = this.parseInterval(interval);
|
|
2389
|
+
return `${duration * -1} ${grunularity}`;
|
|
2390
|
+
}
|
|
2366
2391
|
parseSecondDuration(interval) {
|
|
2367
2392
|
const [duration, type] = this.parseInterval(interval);
|
|
2368
2393
|
const secondsInInterval = SecondsDurations[type];
|