@cubejs-client/ngx 0.28.0 → 0.29.0
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/CHANGELOG.md +51 -0
- package/README.md +1 -1
- package/dist/README.md +1 -1
- package/dist/bundles/cubejs-client-ngx.umd.js +125 -654
- package/dist/bundles/cubejs-client-ngx.umd.js.map +1 -1
- package/dist/cubejs-client-ngx.metadata.json +1 -1
- package/dist/esm2015/cubejs-client-ngx.js +2 -7
- package/dist/esm2015/index.js +2 -7
- package/dist/esm2015/src/client.js +35 -75
- package/dist/esm2015/src/module.js +2 -10
- package/dist/esm2015/src/public_api.js +8 -13
- package/dist/esm2015/src/query-builder/builder-meta.js +7 -46
- package/dist/esm2015/src/query-builder/chart-type.js +1 -9
- package/dist/esm2015/src/query-builder/common.js +1 -23
- package/dist/esm2015/src/query-builder/pivot-config.js +1 -20
- package/dist/esm2015/src/query-builder/query-builder.service.js +23 -156
- package/dist/esm2015/src/query-builder/query-members.js +30 -276
- package/dist/esm2015/src/query-builder/query.js +11 -68
- package/dist/fesm2015/cubejs-client-ngx.js +110 -689
- package/dist/fesm2015/cubejs-client-ngx.js.map +1 -1
- package/dist/src/client.d.ts +11 -6
- package/dist/src/public_api.d.ts +1 -1
- package/dist/src/query-builder/query-members.d.ts +1 -1
- package/package.json +17 -24
- package/dist/CHANGELOG.md +0 -879
- package/dist/bundles/cubejs-client-ngx.umd.min.js +0 -2
- package/dist/bundles/cubejs-client-ngx.umd.min.js.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
2
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('rxjs'), require('@cubejs-client/core'), require('rxjs/operators'), require('fast-deep-equal')) :
|
|
3
3
|
typeof define === 'function' && define.amd ? define('@cubejs-client/ngx', ['exports', '@angular/core', 'rxjs', '@cubejs-client/core', 'rxjs/operators', 'fast-deep-equal'], factory) :
|
|
4
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global[
|
|
5
|
-
}(this, (function (exports, core, rxjs, cubejs, operators, equal) { 'use strict';
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global["cubejs-client"] = global["cubejs-client"] || {}, global["cubejs-client"].ngx = {}), global.ng.core, global.rxjs, global.cubejs, global.rxjs.operators, global.equal));
|
|
5
|
+
})(this, (function (exports, core, rxjs, cubejs, operators, equal) { 'use strict';
|
|
6
6
|
|
|
7
7
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
8
8
|
|
|
@@ -244,7 +244,7 @@
|
|
|
244
244
|
ar[i] = from[i];
|
|
245
245
|
}
|
|
246
246
|
}
|
|
247
|
-
return to.concat(ar || from);
|
|
247
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
248
248
|
}
|
|
249
249
|
function __await(v) {
|
|
250
250
|
return this instanceof __await ? (this.v = v, this) : new __await(v);
|
|
@@ -328,93 +328,53 @@
|
|
|
328
328
|
}
|
|
329
329
|
|
|
330
330
|
var CubejsClient = /** @class */ (function () {
|
|
331
|
-
/**
|
|
332
|
-
* @param {?} config
|
|
333
|
-
*/
|
|
334
331
|
function CubejsClient(config) {
|
|
332
|
+
var _this = this;
|
|
335
333
|
this.config = config;
|
|
334
|
+
this.ready$ = new rxjs.BehaviorSubject(false);
|
|
335
|
+
if (this.config instanceof rxjs.Observable) {
|
|
336
|
+
this.config.subscribe(function () {
|
|
337
|
+
_this.ready$.next(true);
|
|
338
|
+
});
|
|
339
|
+
}
|
|
340
|
+
else {
|
|
341
|
+
this.ready$.next(true);
|
|
342
|
+
}
|
|
336
343
|
}
|
|
337
|
-
/**
|
|
338
|
-
* @private
|
|
339
|
-
* @return {?}
|
|
340
|
-
*/
|
|
341
344
|
CubejsClient.prototype.apiInstace = function () {
|
|
342
345
|
var _this = this;
|
|
343
346
|
if (!this.cubeJsApi) {
|
|
344
347
|
if (this.config instanceof rxjs.Observable) {
|
|
345
|
-
this.config.subscribe((
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
})
|
|
348
|
+
this.config.subscribe(function (config) {
|
|
349
|
+
_this.cubeJsApi = cubejs__default["default"](config.token, config.options);
|
|
350
|
+
if (!_this.cubeJsApi) {
|
|
351
|
+
throw new Error('Cannot create CubejsApi instance. Please check that the config is passed correctly and contains all required options.');
|
|
352
|
+
}
|
|
353
|
+
});
|
|
351
354
|
}
|
|
352
355
|
else {
|
|
353
|
-
this.cubeJsApi = cubejs__default[
|
|
356
|
+
this.cubeJsApi = cubejs__default["default"](this.config.token, this.config.options);
|
|
354
357
|
}
|
|
355
358
|
}
|
|
356
359
|
return this.cubeJsApi;
|
|
357
360
|
};
|
|
358
|
-
/**
|
|
359
|
-
* @param {?} query
|
|
360
|
-
* @param {?=} options
|
|
361
|
-
* @return {?}
|
|
362
|
-
*/
|
|
363
361
|
CubejsClient.prototype.load = function (query, options) {
|
|
364
|
-
return rxjs.from(
|
|
362
|
+
return rxjs.from(this.apiInstace().load(query, options));
|
|
365
363
|
};
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
* @return {?}
|
|
369
|
-
*/
|
|
370
|
-
CubejsClient.prototype.sql = function () {
|
|
371
|
-
var _a;
|
|
372
|
-
var params = [];
|
|
373
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
374
|
-
params[_i] = arguments[_i];
|
|
375
|
-
}
|
|
376
|
-
return rxjs.from((_a = this.apiInstace()).sql.apply(_a, __spread(params)));
|
|
364
|
+
CubejsClient.prototype.sql = function (query, options) {
|
|
365
|
+
return rxjs.from(this.apiInstace().sql(query, options));
|
|
377
366
|
};
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
* @return {?}
|
|
381
|
-
*/
|
|
382
|
-
CubejsClient.prototype.dryRun = function () {
|
|
383
|
-
var _a;
|
|
384
|
-
var params = [];
|
|
385
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
386
|
-
params[_i] = arguments[_i];
|
|
387
|
-
}
|
|
388
|
-
return rxjs.from((_a = this.apiInstace()).dryRun.apply(_a, __spread(params)));
|
|
367
|
+
CubejsClient.prototype.dryRun = function (query, options) {
|
|
368
|
+
return rxjs.from(this.apiInstace().dryRun(query, options));
|
|
389
369
|
};
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
* @return {?}
|
|
393
|
-
*/
|
|
394
|
-
CubejsClient.prototype.meta = function () {
|
|
395
|
-
var _a;
|
|
396
|
-
var params = [];
|
|
397
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
398
|
-
params[_i] = arguments[_i];
|
|
399
|
-
}
|
|
400
|
-
return rxjs.from(( /** @type {?} */((_a = this.apiInstace()).meta.apply(_a, __spread(params)))));
|
|
370
|
+
CubejsClient.prototype.meta = function (options) {
|
|
371
|
+
return rxjs.from(this.apiInstace().meta(options));
|
|
401
372
|
};
|
|
402
|
-
/**
|
|
403
|
-
* @param {?} query
|
|
404
|
-
* @param {?=} params
|
|
405
|
-
* @return {?}
|
|
406
|
-
*/
|
|
407
373
|
CubejsClient.prototype.watch = function (query, params) {
|
|
408
374
|
var _this = this;
|
|
409
375
|
if (params === void 0) { params = {}; }
|
|
410
|
-
return new rxjs.Observable((
|
|
411
|
-
|
|
412
|
-
* @return {?}
|
|
413
|
-
*/function (observer) { return query.subscribe({
|
|
414
|
-
next: ( /**
|
|
415
|
-
* @param {?} query
|
|
416
|
-
* @return {?}
|
|
417
|
-
*/function (query) { return __awaiter(_this, void 0, void 0, function () {
|
|
376
|
+
return new rxjs.Observable(function (observer) { return query.subscribe({
|
|
377
|
+
next: function (query) { return __awaiter(_this, void 0, void 0, function () {
|
|
418
378
|
var resultSet;
|
|
419
379
|
return __generator(this, function (_a) {
|
|
420
380
|
switch (_a.label) {
|
|
@@ -425,43 +385,29 @@
|
|
|
425
385
|
return [2 /*return*/];
|
|
426
386
|
}
|
|
427
387
|
});
|
|
428
|
-
}); }
|
|
429
|
-
}); })
|
|
388
|
+
}); },
|
|
389
|
+
}); });
|
|
430
390
|
};
|
|
431
391
|
return CubejsClient;
|
|
432
392
|
}());
|
|
393
|
+
/** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
|
|
433
394
|
CubejsClient.decorators = [
|
|
434
395
|
{ type: core.Injectable }
|
|
435
396
|
];
|
|
436
|
-
/**
|
|
397
|
+
/**
|
|
398
|
+
* @type {function(): !Array<(null|{
|
|
399
|
+
* type: ?,
|
|
400
|
+
* decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
|
|
401
|
+
* })>}
|
|
402
|
+
* @nocollapse
|
|
403
|
+
*/
|
|
437
404
|
CubejsClient.ctorParameters = function () { return [
|
|
438
405
|
{ type: undefined, decorators: [{ type: core.Inject, args: ['config',] }] }
|
|
439
406
|
]; };
|
|
440
|
-
if (false) {
|
|
441
|
-
/**
|
|
442
|
-
* @type {?}
|
|
443
|
-
* @private
|
|
444
|
-
*/
|
|
445
|
-
CubejsClient.prototype.cubeJsApi;
|
|
446
|
-
/**
|
|
447
|
-
* @type {?}
|
|
448
|
-
* @private
|
|
449
|
-
*/
|
|
450
|
-
CubejsClient.prototype.config;
|
|
451
|
-
}
|
|
452
407
|
|
|
453
|
-
/**
|
|
454
|
-
* @fileoverview added by tsickle
|
|
455
|
-
* Generated from: src/module.ts
|
|
456
|
-
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
457
|
-
*/
|
|
458
408
|
var CubejsClientModule = /** @class */ (function () {
|
|
459
409
|
function CubejsClientModule() {
|
|
460
410
|
}
|
|
461
|
-
/**
|
|
462
|
-
* @param {?} config
|
|
463
|
-
* @return {?}
|
|
464
|
-
*/
|
|
465
411
|
CubejsClientModule.forRoot = function (config) {
|
|
466
412
|
return {
|
|
467
413
|
ngModule: CubejsClientModule,
|
|
@@ -476,157 +422,79 @@
|
|
|
476
422
|
};
|
|
477
423
|
return CubejsClientModule;
|
|
478
424
|
}());
|
|
425
|
+
/** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
|
|
479
426
|
CubejsClientModule.decorators = [
|
|
480
427
|
{ type: core.NgModule, args: [{
|
|
481
428
|
providers: [CubejsClient],
|
|
482
429
|
},] }
|
|
483
430
|
];
|
|
484
431
|
|
|
485
|
-
/**
|
|
486
|
-
* @fileoverview added by tsickle
|
|
487
|
-
* Generated from: src/query-builder/common.ts
|
|
488
|
-
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
489
|
-
*/
|
|
490
|
-
/**
|
|
491
|
-
* @template T
|
|
492
|
-
*/
|
|
493
432
|
var StateSubject = /** @class */ (function () {
|
|
494
|
-
/**
|
|
495
|
-
* @param {?} value
|
|
496
|
-
*/
|
|
497
433
|
function StateSubject(value) {
|
|
498
434
|
this.subject = new rxjs.BehaviorSubject(value);
|
|
499
435
|
}
|
|
500
|
-
/**
|
|
501
|
-
* @return {?}
|
|
502
|
-
*/
|
|
503
436
|
StateSubject.prototype.get = function () {
|
|
504
437
|
return this.subject.getValue();
|
|
505
438
|
};
|
|
506
|
-
/**
|
|
507
|
-
* @param {?} value
|
|
508
|
-
* @return {?}
|
|
509
|
-
*/
|
|
510
439
|
StateSubject.prototype.set = function (value) {
|
|
511
440
|
this.subject.next(value);
|
|
512
441
|
};
|
|
513
442
|
return StateSubject;
|
|
514
443
|
}());
|
|
515
|
-
if (false) {
|
|
516
|
-
/** @type {?} */
|
|
517
|
-
StateSubject.prototype.subject;
|
|
518
|
-
}
|
|
519
444
|
|
|
520
445
|
var BaseMember = /** @class */ (function () {
|
|
521
|
-
/**
|
|
522
|
-
* @param {?} query
|
|
523
|
-
* @param {?} field
|
|
524
|
-
*/
|
|
525
446
|
function BaseMember(query, field) {
|
|
526
447
|
this.query = query;
|
|
527
448
|
this.field = field;
|
|
528
449
|
}
|
|
529
450
|
Object.defineProperty(BaseMember.prototype, "members", {
|
|
530
|
-
/**
|
|
531
|
-
* @private
|
|
532
|
-
* @return {?}
|
|
533
|
-
*/
|
|
534
451
|
get: function () {
|
|
535
452
|
return this.query.asCubeQuery()[this.field] || [];
|
|
536
453
|
},
|
|
537
454
|
enumerable: false,
|
|
538
455
|
configurable: true
|
|
539
456
|
});
|
|
540
|
-
/**
|
|
541
|
-
* @param {?} name
|
|
542
|
-
* @return {?}
|
|
543
|
-
*/
|
|
544
457
|
BaseMember.prototype.add = function (name) {
|
|
545
458
|
var _b;
|
|
546
459
|
this.query.setPartialQuery((_b = {},
|
|
547
|
-
_b[this.field] =
|
|
460
|
+
_b[this.field] = __spreadArray(__spreadArray([], __read(this.members)), [name]),
|
|
548
461
|
_b));
|
|
549
462
|
};
|
|
550
|
-
/**
|
|
551
|
-
* @param {?} name
|
|
552
|
-
* @param {?} replaceWithName
|
|
553
|
-
* @return {?}
|
|
554
|
-
*/
|
|
555
463
|
BaseMember.prototype.replace = function (name, replaceWithName) {
|
|
556
464
|
var _b;
|
|
557
465
|
this.query.setPartialQuery((_b = {},
|
|
558
|
-
_b[this.field] = this.members.map((
|
|
559
|
-
* @param {?} currentName
|
|
560
|
-
* @return {?}
|
|
561
|
-
*/function (currentName) { return currentName === name ? replaceWithName : currentName; })),
|
|
466
|
+
_b[this.field] = this.members.map(function (currentName) { return currentName === name ? replaceWithName : currentName; }),
|
|
562
467
|
_b));
|
|
563
468
|
};
|
|
564
|
-
/**
|
|
565
|
-
* @param {?} by
|
|
566
|
-
* @return {?}
|
|
567
|
-
*/
|
|
568
469
|
BaseMember.prototype.remove = function (by) {
|
|
569
470
|
var _b;
|
|
570
471
|
this.query.setPartialQuery((_b = {},
|
|
571
472
|
_b[this.field] = this.query
|
|
572
|
-
.asCubeQuery()[this.field].filter((
|
|
573
|
-
* @param {?} currentName
|
|
574
|
-
* @param {?} index
|
|
575
|
-
* @return {?}
|
|
576
|
-
*/function (currentName, index) {
|
|
473
|
+
.asCubeQuery()[this.field].filter(function (currentName, index) {
|
|
577
474
|
if (typeof by === 'string') {
|
|
578
475
|
return currentName !== by;
|
|
579
476
|
}
|
|
580
477
|
return index !== by;
|
|
581
|
-
})
|
|
478
|
+
}),
|
|
582
479
|
_b));
|
|
583
480
|
};
|
|
584
|
-
/**
|
|
585
|
-
* @param {?} members
|
|
586
|
-
* @return {?}
|
|
587
|
-
*/
|
|
588
481
|
BaseMember.prototype.set = function (members) {
|
|
589
482
|
var _b;
|
|
590
483
|
this.query.setPartialQuery((_b = {},
|
|
591
484
|
_b[this.field] = members,
|
|
592
485
|
_b));
|
|
593
486
|
};
|
|
594
|
-
/**
|
|
595
|
-
* @return {?}
|
|
596
|
-
*/
|
|
597
487
|
BaseMember.prototype.asArray = function () {
|
|
598
488
|
var _this = this;
|
|
599
|
-
return (this.query.asCubeQuery()[this.field] || []).map((
|
|
600
|
-
* @param {?} name
|
|
601
|
-
* @return {?}
|
|
602
|
-
*/function (name) { return _this.query.meta.resolveMember(name, _this.field); }));
|
|
489
|
+
return (this.query.asCubeQuery()[this.field] || []).map(function (name) { return _this.query.meta.resolveMember(name, _this.field); });
|
|
603
490
|
};
|
|
604
491
|
return BaseMember;
|
|
605
492
|
}());
|
|
606
|
-
if (false) {
|
|
607
|
-
/**
|
|
608
|
-
* @type {?}
|
|
609
|
-
* @private
|
|
610
|
-
*/
|
|
611
|
-
BaseMember.prototype.query;
|
|
612
|
-
/**
|
|
613
|
-
* @type {?}
|
|
614
|
-
* @private
|
|
615
|
-
*/
|
|
616
|
-
BaseMember.prototype.field;
|
|
617
|
-
}
|
|
618
493
|
var TimeDimensionMember = /** @class */ (function () {
|
|
619
|
-
/**
|
|
620
|
-
* @param {?} query
|
|
621
|
-
*/
|
|
622
494
|
function TimeDimensionMember(query) {
|
|
623
495
|
this.query = query;
|
|
624
496
|
}
|
|
625
497
|
Object.defineProperty(TimeDimensionMember.prototype, "members", {
|
|
626
|
-
/**
|
|
627
|
-
* @private
|
|
628
|
-
* @return {?}
|
|
629
|
-
*/
|
|
630
498
|
get: function () {
|
|
631
499
|
return this.query.asCubeQuery().timeDimensions || [];
|
|
632
500
|
},
|
|
@@ -634,9 +502,6 @@
|
|
|
634
502
|
configurable: true
|
|
635
503
|
});
|
|
636
504
|
Object.defineProperty(TimeDimensionMember.prototype, "granularity", {
|
|
637
|
-
/**
|
|
638
|
-
* @return {?}
|
|
639
|
-
*/
|
|
640
505
|
get: function () {
|
|
641
506
|
var _a;
|
|
642
507
|
return (_a = this.members[0]) === null || _a === void 0 ? void 0 : _a.granularity;
|
|
@@ -644,31 +509,17 @@
|
|
|
644
509
|
enumerable: false,
|
|
645
510
|
configurable: true
|
|
646
511
|
});
|
|
647
|
-
/**
|
|
648
|
-
* @param {?} by
|
|
649
|
-
* @param {?} updateWith
|
|
650
|
-
* @return {?}
|
|
651
|
-
*/
|
|
652
512
|
TimeDimensionMember.prototype.updateTimeDimension = function (by, updateWith) {
|
|
653
|
-
|
|
654
|
-
var timeDimensions = this.members.map(( /**
|
|
655
|
-
* @param {?} td
|
|
656
|
-
* @param {?} index
|
|
657
|
-
* @return {?}
|
|
658
|
-
*/function (td, index) {
|
|
513
|
+
var timeDimensions = this.members.map(function (td, index) {
|
|
659
514
|
if (td.dimension === by || index === by) {
|
|
660
515
|
return Object.assign(Object.assign({}, td), updateWith);
|
|
661
516
|
}
|
|
662
517
|
return td;
|
|
663
|
-
})
|
|
518
|
+
});
|
|
664
519
|
this.query.setPartialQuery({
|
|
665
520
|
timeDimensions: timeDimensions,
|
|
666
521
|
});
|
|
667
522
|
};
|
|
668
|
-
/**
|
|
669
|
-
* @param {?} name
|
|
670
|
-
* @return {?}
|
|
671
|
-
*/
|
|
672
523
|
TimeDimensionMember.prototype.add = function (name) {
|
|
673
524
|
this.query.setPartialQuery({
|
|
674
525
|
timeDimensions: [
|
|
@@ -678,496 +529,244 @@
|
|
|
678
529
|
],
|
|
679
530
|
});
|
|
680
531
|
};
|
|
681
|
-
/**
|
|
682
|
-
* @param {?} name
|
|
683
|
-
* @return {?}
|
|
684
|
-
*/
|
|
685
532
|
TimeDimensionMember.prototype.remove = function (name) {
|
|
686
533
|
this.query.setPartialQuery({
|
|
687
|
-
timeDimensions: this.members.filter((
|
|
688
|
-
* @param {?} __0
|
|
689
|
-
* @return {?}
|
|
690
|
-
*/function (_b) {
|
|
534
|
+
timeDimensions: this.members.filter(function (_b) {
|
|
691
535
|
var dimension = _b.dimension;
|
|
692
536
|
return dimension !== name;
|
|
693
|
-
})
|
|
537
|
+
}),
|
|
694
538
|
});
|
|
695
539
|
};
|
|
696
|
-
/**
|
|
697
|
-
* @param {?} timeDimensions
|
|
698
|
-
* @return {?}
|
|
699
|
-
*/
|
|
700
540
|
TimeDimensionMember.prototype.set = function (timeDimensions) {
|
|
701
541
|
this.query.setPartialQuery({
|
|
702
542
|
timeDimensions: timeDimensions,
|
|
703
543
|
});
|
|
704
544
|
};
|
|
705
|
-
/**
|
|
706
|
-
* @param {?} by
|
|
707
|
-
* @param {?} dateRange
|
|
708
|
-
* @return {?}
|
|
709
|
-
*/
|
|
710
545
|
TimeDimensionMember.prototype.setDateRange = function (by, dateRange) {
|
|
711
546
|
this.updateTimeDimension(by, { dateRange: dateRange });
|
|
712
547
|
};
|
|
713
|
-
/**
|
|
714
|
-
* @param {?} by
|
|
715
|
-
* @param {?} granularity
|
|
716
|
-
* @return {?}
|
|
717
|
-
*/
|
|
718
548
|
TimeDimensionMember.prototype.setGranularity = function (by, granularity) {
|
|
719
549
|
this.updateTimeDimension(by, { granularity: granularity });
|
|
720
550
|
};
|
|
721
|
-
/**
|
|
722
|
-
* @return {?}
|
|
723
|
-
*/
|
|
724
551
|
TimeDimensionMember.prototype.asArray = function () {
|
|
725
552
|
var _this = this;
|
|
726
|
-
return (this.query.asCubeQuery().timeDimensions || []).map((
|
|
727
|
-
* @param {?} td
|
|
728
|
-
* @return {?}
|
|
729
|
-
*/function (td) {
|
|
553
|
+
return (this.query.asCubeQuery().timeDimensions || []).map(function (td) {
|
|
730
554
|
return Object.assign(Object.assign({}, _this.query.meta.resolveMember(td.dimension, 'dimensions')), td);
|
|
731
|
-
})
|
|
555
|
+
});
|
|
732
556
|
};
|
|
733
557
|
return TimeDimensionMember;
|
|
734
558
|
}());
|
|
735
|
-
if (false) {
|
|
736
|
-
/**
|
|
737
|
-
* @type {?}
|
|
738
|
-
* @private
|
|
739
|
-
*/
|
|
740
|
-
TimeDimensionMember.prototype.query;
|
|
741
|
-
}
|
|
742
559
|
var Order = /** @class */ (function () {
|
|
743
|
-
/**
|
|
744
|
-
* @param {?} query
|
|
745
|
-
*/
|
|
746
560
|
function Order(query) {
|
|
747
561
|
this.query = query;
|
|
748
562
|
this.orderMembers = new rxjs.BehaviorSubject([]);
|
|
749
563
|
this.query.subject.subscribe(this.handleQueryChange.bind(this));
|
|
750
564
|
this.orderMembers.subscribe(this.handleOrderMembersChange.bind(this));
|
|
751
565
|
}
|
|
752
|
-
/**
|
|
753
|
-
* @private
|
|
754
|
-
* @param {?} orderMembers
|
|
755
|
-
* @return {?}
|
|
756
|
-
*/
|
|
757
566
|
Order.prototype.handleOrderMembersChange = function (orderMembers) {
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
.filter(( /**
|
|
761
|
-
* @param {?} __0
|
|
762
|
-
* @return {?}
|
|
763
|
-
*/function (_b) {
|
|
567
|
+
var order = orderMembers
|
|
568
|
+
.filter(function (_b) {
|
|
764
569
|
var order = _b.order;
|
|
765
570
|
return order !== 'none';
|
|
766
|
-
})
|
|
767
|
-
.reduce((
|
|
768
|
-
* @param {?} memo
|
|
769
|
-
* @param {?} __1
|
|
770
|
-
* @return {?}
|
|
771
|
-
*/function (memo, _b) {
|
|
571
|
+
})
|
|
572
|
+
.reduce(function (memo, _b) {
|
|
772
573
|
var _c;
|
|
773
574
|
var id = _b.id, order = _b.order;
|
|
774
575
|
return (Object.assign(Object.assign({}, memo), (_c = {}, _c[id] = order, _c)));
|
|
775
|
-
}
|
|
776
|
-
if (!equal__default[
|
|
576
|
+
}, {});
|
|
577
|
+
if (!equal__default["default"](order, this.asObject())) {
|
|
777
578
|
this.query.setPartialQuery({ order: order });
|
|
778
579
|
}
|
|
779
580
|
};
|
|
780
|
-
/**
|
|
781
|
-
* @private
|
|
782
|
-
* @return {?}
|
|
783
|
-
*/
|
|
784
581
|
Order.prototype.handleQueryChange = function () {
|
|
785
582
|
var _this = this;
|
|
786
|
-
this.orderMembers.next(
|
|
787
|
-
* @param {?} __0
|
|
788
|
-
* @return {?}
|
|
789
|
-
*/function (_b) {
|
|
583
|
+
this.orderMembers.next(__spreadArray(__spreadArray(__spreadArray([], __read(this.query.measures.asArray())), __read(this.query.dimensions.asArray())), __read(this.query.timeDimensions.asArray())).map(function (_b) {
|
|
790
584
|
var name = _b.name, title = _b.title;
|
|
791
585
|
return {
|
|
792
586
|
id: name,
|
|
793
587
|
order: _this.of(name),
|
|
794
588
|
title: title,
|
|
795
589
|
};
|
|
796
|
-
}))
|
|
590
|
+
}));
|
|
797
591
|
};
|
|
798
|
-
/**
|
|
799
|
-
* @param {?} id
|
|
800
|
-
* @param {?} order
|
|
801
|
-
* @return {?}
|
|
802
|
-
*/
|
|
803
592
|
Order.prototype.setMemberOrder = function (id, order) {
|
|
804
|
-
this.orderMembers.next(this.orderMembers.getValue().map((
|
|
805
|
-
* @param {?} orderMember
|
|
806
|
-
* @return {?}
|
|
807
|
-
*/function (orderMember) {
|
|
593
|
+
this.orderMembers.next(this.orderMembers.getValue().map(function (orderMember) {
|
|
808
594
|
if (orderMember.id === id) {
|
|
809
595
|
return Object.assign(Object.assign({}, orderMember), { order: order });
|
|
810
596
|
}
|
|
811
597
|
return orderMember;
|
|
812
|
-
}))
|
|
598
|
+
}));
|
|
813
599
|
};
|
|
814
|
-
/**
|
|
815
|
-
* @param {?} sourceIndex
|
|
816
|
-
* @param {?} destinationIndex
|
|
817
|
-
* @return {?}
|
|
818
|
-
*/
|
|
819
600
|
Order.prototype.reorder = function (sourceIndex, destinationIndex) {
|
|
820
601
|
this.orderMembers.next(cubejs.moveItemInArray(this.orderMembers.getValue(), sourceIndex, destinationIndex));
|
|
821
602
|
};
|
|
822
|
-
/**
|
|
823
|
-
* @param {?} member
|
|
824
|
-
* @return {?}
|
|
825
|
-
*/
|
|
826
603
|
Order.prototype.of = function (member) {
|
|
827
604
|
return (this.query.asCubeQuery().order || {})[member] || 'none';
|
|
828
605
|
};
|
|
829
|
-
/**
|
|
830
|
-
* @param {?} order
|
|
831
|
-
* @return {?}
|
|
832
|
-
*/
|
|
833
606
|
Order.prototype.set = function (order) {
|
|
834
607
|
this.query.setPartialQuery({ order: order });
|
|
835
608
|
};
|
|
836
|
-
/**
|
|
837
|
-
* @return {?}
|
|
838
|
-
*/
|
|
839
609
|
Order.prototype.asArray = function () {
|
|
840
610
|
if (Array.isArray(this.query.asCubeQuery().order)) {
|
|
841
|
-
return
|
|
611
|
+
return this.query.asCubeQuery().order;
|
|
842
612
|
}
|
|
843
613
|
return Object.entries(this.query.asCubeQuery().order || {});
|
|
844
614
|
};
|
|
845
|
-
/**
|
|
846
|
-
* @return {?}
|
|
847
|
-
*/
|
|
848
615
|
Order.prototype.asObject = function () {
|
|
849
|
-
return this.asArray().reduce((
|
|
850
|
-
* @param {?} memo
|
|
851
|
-
* @param {?} __1
|
|
852
|
-
* @return {?}
|
|
853
|
-
*/function (memo, _b) {
|
|
616
|
+
return this.asArray().reduce(function (memo, _b) {
|
|
854
617
|
var _c;
|
|
855
618
|
var _d = __read(_b, 2), key = _d[0], value = _d[1];
|
|
856
619
|
return (Object.assign(Object.assign({}, memo), (_c = {}, _c[key] = value, _c)));
|
|
857
|
-
}
|
|
620
|
+
}, {});
|
|
858
621
|
};
|
|
859
622
|
return Order;
|
|
860
623
|
}());
|
|
861
|
-
if (false) {
|
|
862
|
-
/** @type {?} */
|
|
863
|
-
Order.prototype.orderMembers;
|
|
864
|
-
/**
|
|
865
|
-
* @type {?}
|
|
866
|
-
* @private
|
|
867
|
-
*/
|
|
868
|
-
Order.prototype.query;
|
|
869
|
-
}
|
|
870
624
|
var FilterMember = /** @class */ (function () {
|
|
871
|
-
/**
|
|
872
|
-
* @param {?} query
|
|
873
|
-
*/
|
|
874
625
|
function FilterMember(query) {
|
|
875
626
|
this.query = query;
|
|
876
627
|
}
|
|
877
628
|
Object.defineProperty(FilterMember.prototype, "filters", {
|
|
878
|
-
/**
|
|
879
|
-
* @private
|
|
880
|
-
* @return {?}
|
|
881
|
-
*/
|
|
882
629
|
get: function () {
|
|
883
630
|
// TODO: update this type assertion once the QueryBuilder supports logical and/or
|
|
884
|
-
return (
|
|
631
|
+
return (this.query.asCubeQuery().filters || []);
|
|
885
632
|
},
|
|
886
633
|
enumerable: false,
|
|
887
634
|
configurable: true
|
|
888
635
|
});
|
|
889
|
-
/**
|
|
890
|
-
* @param {?} by
|
|
891
|
-
* @param {?} updateWith
|
|
892
|
-
* @return {?}
|
|
893
|
-
*/
|
|
894
636
|
FilterMember.prototype.update = function (by, updateWith) {
|
|
895
|
-
|
|
896
|
-
var filters = this.filters.map(( /**
|
|
897
|
-
* @param {?} filter
|
|
898
|
-
* @param {?} index
|
|
899
|
-
* @return {?}
|
|
900
|
-
*/function (filter, index) {
|
|
637
|
+
var filters = this.filters.map(function (filter, index) {
|
|
901
638
|
if (index === by || filter.member === by || filter.dimension === by) {
|
|
902
639
|
return Object.assign(Object.assign({}, filter), updateWith);
|
|
903
640
|
}
|
|
904
641
|
return filter;
|
|
905
|
-
})
|
|
642
|
+
});
|
|
906
643
|
this.query.setPartialQuery({
|
|
907
|
-
filters:
|
|
644
|
+
filters: filters,
|
|
908
645
|
});
|
|
909
646
|
};
|
|
910
|
-
/**
|
|
911
|
-
* @param {?} filter
|
|
912
|
-
* @return {?}
|
|
913
|
-
*/
|
|
914
647
|
FilterMember.prototype.add = function (filter) {
|
|
915
648
|
this.query.setPartialQuery({
|
|
916
|
-
filters:
|
|
649
|
+
filters: __spreadArray(__spreadArray([], __read(this.filters)), [filter]),
|
|
917
650
|
});
|
|
918
651
|
};
|
|
919
|
-
/**
|
|
920
|
-
* @param {?} by
|
|
921
|
-
* @return {?}
|
|
922
|
-
*/
|
|
923
652
|
FilterMember.prototype.remove = function (by) {
|
|
924
653
|
this.query.setPartialQuery({
|
|
925
|
-
filters: this.filters.filter((
|
|
926
|
-
* @param {?} filter
|
|
927
|
-
* @param {?} index
|
|
928
|
-
* @return {?}
|
|
929
|
-
*/function (filter, index) {
|
|
654
|
+
filters: this.filters.filter(function (filter, index) {
|
|
930
655
|
if (filter.member === by || filter.dimension === by || index === by) {
|
|
931
656
|
return false;
|
|
932
657
|
}
|
|
933
658
|
return true;
|
|
934
|
-
})
|
|
659
|
+
}),
|
|
935
660
|
});
|
|
936
661
|
};
|
|
937
|
-
/**
|
|
938
|
-
* @param {?} filters
|
|
939
|
-
* @return {?}
|
|
940
|
-
*/
|
|
941
662
|
FilterMember.prototype.set = function (filters) {
|
|
942
663
|
this.query.setPartialQuery({
|
|
943
664
|
filters: filters,
|
|
944
665
|
});
|
|
945
666
|
};
|
|
946
|
-
/**
|
|
947
|
-
* @param {?} name
|
|
948
|
-
* @param {?} replaceWithName
|
|
949
|
-
* @return {?}
|
|
950
|
-
*/
|
|
951
667
|
FilterMember.prototype.replace = function (name, replaceWithName) {
|
|
952
668
|
this.query.setPartialQuery({
|
|
953
|
-
filters: this.filters.map((
|
|
954
|
-
* @param {?} filter
|
|
955
|
-
* @return {?}
|
|
956
|
-
*/function (filter) {
|
|
669
|
+
filters: this.filters.map(function (filter) {
|
|
957
670
|
var _b;
|
|
958
|
-
/** @type {?} */
|
|
959
671
|
var field = filter.member ? 'member' : 'dimension';
|
|
960
|
-
return filter.member || filter.dimension === name
|
|
672
|
+
return filter.member === name || filter.dimension === name
|
|
961
673
|
? Object.assign(Object.assign({}, filter), (_b = {}, _b[field] = replaceWithName, _b)) : filter;
|
|
962
|
-
})
|
|
674
|
+
}),
|
|
963
675
|
});
|
|
964
676
|
};
|
|
965
|
-
/**
|
|
966
|
-
* @return {?}
|
|
967
|
-
*/
|
|
968
677
|
FilterMember.prototype.asArray = function () {
|
|
969
678
|
var _this = this;
|
|
970
|
-
return this.filters.map((
|
|
971
|
-
* @param {?} filter
|
|
972
|
-
* @return {?}
|
|
973
|
-
*/function (filter) {
|
|
679
|
+
return this.filters.map(function (filter) {
|
|
974
680
|
return Object.assign(Object.assign(Object.assign({}, _this.query.meta.resolveMember(filter.member || filter.dimension, [
|
|
975
681
|
'dimensions',
|
|
976
682
|
'measures',
|
|
977
683
|
])), { operators: _this.query.meta.filterOperatorsForMember(filter.member || filter.dimension, ['dimensions', 'measures']) }), filter);
|
|
978
|
-
})
|
|
684
|
+
});
|
|
979
685
|
};
|
|
980
686
|
return FilterMember;
|
|
981
687
|
}());
|
|
982
|
-
if (false) {
|
|
983
|
-
/**
|
|
984
|
-
* @type {?}
|
|
985
|
-
* @private
|
|
986
|
-
*/
|
|
987
|
-
FilterMember.prototype.query;
|
|
988
|
-
}
|
|
989
688
|
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
Measures
|
|
993
|
-
Dimensions
|
|
994
|
-
Segments
|
|
995
|
-
TimeDimensions
|
|
996
|
-
Filters
|
|
997
|
-
Order
|
|
998
|
-
};
|
|
689
|
+
exports.MemberType = void 0;
|
|
690
|
+
(function (MemberType) {
|
|
691
|
+
MemberType["Measures"] = "measures";
|
|
692
|
+
MemberType["Dimensions"] = "dimensions";
|
|
693
|
+
MemberType["Segments"] = "segments";
|
|
694
|
+
MemberType["TimeDimensions"] = "timeDimensions";
|
|
695
|
+
MemberType["Filters"] = "filters";
|
|
696
|
+
MemberType["Order"] = "order";
|
|
697
|
+
})(exports.MemberType || (exports.MemberType = {}));
|
|
999
698
|
var Query = /** @class */ (function (_super) {
|
|
1000
699
|
__extends(Query, _super);
|
|
1001
|
-
/**
|
|
1002
|
-
* @param {?} meta
|
|
1003
|
-
* @param {?=} _onBeforeChange
|
|
1004
|
-
*/
|
|
1005
700
|
function Query(meta, _onBeforeChange) {
|
|
1006
|
-
if (_onBeforeChange === void 0) { _onBeforeChange = (
|
|
1007
|
-
* @param {?} newQuery
|
|
1008
|
-
* @return {?}
|
|
1009
|
-
*/function (newQuery) { return newQuery; }); }
|
|
701
|
+
if (_onBeforeChange === void 0) { _onBeforeChange = function (newQuery) { return newQuery; }; }
|
|
1010
702
|
var _this = _super.call(this, {}) || this;
|
|
1011
703
|
_this.meta = meta;
|
|
1012
704
|
_this._onBeforeChange = _onBeforeChange;
|
|
1013
705
|
_this.init();
|
|
1014
706
|
return _this;
|
|
1015
707
|
}
|
|
1016
|
-
/**
|
|
1017
|
-
* @private
|
|
1018
|
-
* @return {?}
|
|
1019
|
-
*/
|
|
1020
708
|
Query.prototype.init = function () {
|
|
1021
|
-
this.measures = new BaseMember(this, MemberType.Measures);
|
|
1022
|
-
this.dimensions = new BaseMember(this, MemberType.Dimensions);
|
|
1023
|
-
this.segments = new BaseMember(this, MemberType.Segments);
|
|
709
|
+
this.measures = new BaseMember(this, exports.MemberType.Measures);
|
|
710
|
+
this.dimensions = new BaseMember(this, exports.MemberType.Dimensions);
|
|
711
|
+
this.segments = new BaseMember(this, exports.MemberType.Segments);
|
|
1024
712
|
this.timeDimensions = new TimeDimensionMember(this);
|
|
1025
713
|
this.filters = new FilterMember(this);
|
|
1026
714
|
this.order = new Order(this);
|
|
1027
715
|
};
|
|
1028
|
-
/**
|
|
1029
|
-
* @return {?}
|
|
1030
|
-
*/
|
|
1031
716
|
Query.prototype.asCubeQuery = function () {
|
|
1032
717
|
return this.subject.getValue() || {};
|
|
1033
718
|
};
|
|
1034
|
-
/**
|
|
1035
|
-
* @param {?} query
|
|
1036
|
-
* @return {?}
|
|
1037
|
-
*/
|
|
1038
719
|
Query.prototype.setQuery = function (query) {
|
|
1039
720
|
this.subject.next(this._onBeforeChange(query, this.subject.getValue(), this));
|
|
1040
721
|
};
|
|
1041
|
-
/**
|
|
1042
|
-
* @param {?} partialQuery
|
|
1043
|
-
* @return {?}
|
|
1044
|
-
*/
|
|
1045
722
|
Query.prototype.setPartialQuery = function (partialQuery) {
|
|
1046
723
|
this.subject.next(this._onBeforeChange(Object.assign(Object.assign({}, this.subject.getValue()), partialQuery), this.subject.getValue(), this));
|
|
1047
724
|
};
|
|
1048
|
-
/**
|
|
1049
|
-
* @param {?} limit
|
|
1050
|
-
* @return {?}
|
|
1051
|
-
*/
|
|
1052
725
|
Query.prototype.setLimit = function (limit) {
|
|
1053
726
|
this.setPartialQuery({ limit: limit });
|
|
1054
727
|
};
|
|
1055
|
-
/**
|
|
1056
|
-
* @return {?}
|
|
1057
|
-
*/
|
|
1058
728
|
Query.prototype.isPresent = function () {
|
|
1059
729
|
return cubejs.isQueryPresent(this.asCubeQuery());
|
|
1060
730
|
};
|
|
1061
731
|
return Query;
|
|
1062
732
|
}(StateSubject));
|
|
1063
|
-
if (false) {
|
|
1064
|
-
/** @type {?} */
|
|
1065
|
-
Query.prototype.measures;
|
|
1066
|
-
/** @type {?} */
|
|
1067
|
-
Query.prototype.dimensions;
|
|
1068
|
-
/** @type {?} */
|
|
1069
|
-
Query.prototype.segments;
|
|
1070
|
-
/** @type {?} */
|
|
1071
|
-
Query.prototype.timeDimensions;
|
|
1072
|
-
/** @type {?} */
|
|
1073
|
-
Query.prototype.filters;
|
|
1074
|
-
/** @type {?} */
|
|
1075
|
-
Query.prototype.order;
|
|
1076
|
-
/** @type {?} */
|
|
1077
|
-
Query.prototype.meta;
|
|
1078
|
-
/**
|
|
1079
|
-
* @type {?}
|
|
1080
|
-
* @private
|
|
1081
|
-
*/
|
|
1082
|
-
Query.prototype._onBeforeChange;
|
|
1083
|
-
}
|
|
1084
733
|
|
|
1085
|
-
/**
|
|
1086
|
-
* @fileoverview added by tsickle
|
|
1087
|
-
* Generated from: src/query-builder/builder-meta.ts
|
|
1088
|
-
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
1089
|
-
*/
|
|
1090
734
|
var BuilderMeta = /** @class */ (function () {
|
|
1091
|
-
/**
|
|
1092
|
-
* @param {?} meta
|
|
1093
|
-
*/
|
|
1094
735
|
function BuilderMeta(meta) {
|
|
1095
736
|
this.meta = meta;
|
|
1096
737
|
this.mapMeta();
|
|
1097
738
|
}
|
|
1098
|
-
/**
|
|
1099
|
-
* @private
|
|
1100
|
-
* @return {?}
|
|
1101
|
-
*/
|
|
1102
739
|
BuilderMeta.prototype.mapMeta = function () {
|
|
1103
740
|
var _this = this;
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
this.measures = ( /** @type {?} */(this.meta.membersForQuery(null, 'measures')));
|
|
741
|
+
var allDimensions = (this.meta.membersForQuery(null, 'dimensions'));
|
|
742
|
+
this.measures = this.meta.membersForQuery(null, 'measures');
|
|
1107
743
|
this.segments = this.meta.membersForQuery(null, 'segments');
|
|
1108
|
-
this.dimensions = allDimensions.filter((
|
|
1109
|
-
* @param {?} __0
|
|
1110
|
-
* @return {?}
|
|
1111
|
-
*/function (_a) {
|
|
744
|
+
this.dimensions = allDimensions.filter(function (_a) {
|
|
1112
745
|
var type = _a.type;
|
|
1113
746
|
return type !== 'time';
|
|
1114
|
-
})
|
|
1115
|
-
this.timeDimensions = allDimensions.filter((
|
|
1116
|
-
* @param {?} __0
|
|
1117
|
-
* @return {?}
|
|
1118
|
-
*/function (_a) {
|
|
747
|
+
});
|
|
748
|
+
this.timeDimensions = allDimensions.filter(function (_a) {
|
|
1119
749
|
var type = _a.type;
|
|
1120
750
|
return type === 'time';
|
|
1121
|
-
})
|
|
1122
|
-
this.filters =
|
|
1123
|
-
* @param {?} member
|
|
1124
|
-
* @return {?}
|
|
1125
|
-
*/function (member) {
|
|
751
|
+
});
|
|
752
|
+
this.filters = __spreadArray(__spreadArray([], __read(allDimensions)), __read(this.measures)).map(function (member) {
|
|
1126
753
|
return Object.assign(Object.assign({}, member), { operators: _this.meta.filterOperatorsForMember(member.name, [
|
|
1127
754
|
'dimensions',
|
|
1128
755
|
'measures',
|
|
1129
756
|
]) });
|
|
1130
|
-
})
|
|
757
|
+
});
|
|
1131
758
|
};
|
|
1132
759
|
return BuilderMeta;
|
|
1133
760
|
}());
|
|
1134
|
-
if (false) {
|
|
1135
|
-
/** @type {?} */
|
|
1136
|
-
BuilderMeta.prototype.measures;
|
|
1137
|
-
/** @type {?} */
|
|
1138
|
-
BuilderMeta.prototype.dimensions;
|
|
1139
|
-
/** @type {?} */
|
|
1140
|
-
BuilderMeta.prototype.segments;
|
|
1141
|
-
/** @type {?} */
|
|
1142
|
-
BuilderMeta.prototype.timeDimensions;
|
|
1143
|
-
/** @type {?} */
|
|
1144
|
-
BuilderMeta.prototype.filters;
|
|
1145
|
-
/** @type {?} */
|
|
1146
|
-
BuilderMeta.prototype.meta;
|
|
1147
|
-
}
|
|
1148
761
|
|
|
1149
762
|
var PivotConfig = /** @class */ (function (_super) {
|
|
1150
763
|
__extends(PivotConfig, _super);
|
|
1151
|
-
/**
|
|
1152
|
-
* @param {?} pivotConfig
|
|
1153
|
-
*/
|
|
1154
764
|
function PivotConfig(pivotConfig) {
|
|
1155
765
|
return _super.call(this, pivotConfig) || this;
|
|
1156
766
|
}
|
|
1157
|
-
/**
|
|
1158
|
-
* @param {?} sourceIndex
|
|
1159
|
-
* @param {?} destinationIndex
|
|
1160
|
-
* @param {?} sourceAxis
|
|
1161
|
-
* @param {?} destinationAxis
|
|
1162
|
-
* @return {?}
|
|
1163
|
-
*/
|
|
1164
767
|
PivotConfig.prototype.moveItem = function (sourceIndex, destinationIndex, sourceAxis, destinationAxis) {
|
|
1165
768
|
this.subject.next(cubejs.movePivotItem(this.get(), sourceIndex, destinationIndex, sourceAxis, destinationAxis));
|
|
1166
769
|
};
|
|
1167
|
-
/**
|
|
1168
|
-
* @param {?} fillMissingDates
|
|
1169
|
-
* @return {?}
|
|
1170
|
-
*/
|
|
1171
770
|
PivotConfig.prototype.setFillMissingDates = function (fillMissingDates) {
|
|
1172
771
|
this.subject.next(Object.assign(Object.assign({}, this.get()), { fillMissingDates: fillMissingDates }));
|
|
1173
772
|
};
|
|
@@ -1176,9 +775,6 @@
|
|
|
1176
775
|
|
|
1177
776
|
var ChartType = /** @class */ (function (_super) {
|
|
1178
777
|
__extends(ChartType, _super);
|
|
1179
|
-
/**
|
|
1180
|
-
* @param {?} value
|
|
1181
|
-
*/
|
|
1182
778
|
function ChartType(value) {
|
|
1183
779
|
return _super.call(this, value) || this;
|
|
1184
780
|
}
|
|
@@ -1190,57 +786,35 @@
|
|
|
1190
786
|
var _this = this;
|
|
1191
787
|
this._disableHeuristics = false;
|
|
1192
788
|
this._heuristicChange$ = new rxjs.Subject();
|
|
1193
|
-
this.builderMeta = new Promise((
|
|
1194
|
-
|
|
1195
|
-
* @return {?}
|
|
1196
|
-
*/function (resolve) { return (_this._resolveBuilderMeta = resolve); }));
|
|
1197
|
-
this.query = new Promise(( /**
|
|
1198
|
-
* @param {?} resolve
|
|
1199
|
-
* @return {?}
|
|
1200
|
-
*/function (resolve) { return (_this._resolveQuery = resolve); }));
|
|
789
|
+
this.builderMeta = new Promise(function (resolve) { return (_this._resolveBuilderMeta = resolve); });
|
|
790
|
+
this.query = new Promise(function (resolve) { return (_this._resolveQuery = resolve); });
|
|
1201
791
|
this.state = new rxjs.BehaviorSubject({});
|
|
1202
792
|
}
|
|
1203
|
-
/**
|
|
1204
|
-
* @private
|
|
1205
|
-
* @return {?}
|
|
1206
|
-
*/
|
|
1207
793
|
QueryBuilderService.prototype.init = function () {
|
|
1208
794
|
return __awaiter(this, void 0, void 0, function () {
|
|
1209
795
|
var _this = this;
|
|
1210
796
|
return __generator(this, function (_c) {
|
|
1211
797
|
this.pivotConfig = new PivotConfig(null);
|
|
1212
798
|
this.chartType = new ChartType('line');
|
|
1213
|
-
this._cubejs.meta().subscribe((
|
|
1214
|
-
* @param {?} meta
|
|
1215
|
-
* @return {?}
|
|
1216
|
-
*/function (meta) {
|
|
799
|
+
this._cubejs.meta().subscribe(function (meta) {
|
|
1217
800
|
_this._meta = meta;
|
|
1218
801
|
_this._query = new Query(_this._meta, _this._handleQueryChange.bind(_this));
|
|
1219
802
|
_this._resolveQuery(_this._query);
|
|
1220
803
|
_this._resolveBuilderMeta(new BuilderMeta(_this._meta));
|
|
1221
|
-
})
|
|
804
|
+
});
|
|
1222
805
|
this.subscribe();
|
|
1223
806
|
if (!this._disableHeuristics) {
|
|
1224
807
|
this._heuristicChange$
|
|
1225
|
-
.pipe(operators.switchMap((
|
|
1226
|
-
* @param {?} data
|
|
1227
|
-
* @return {?}
|
|
1228
|
-
*/function (data) {
|
|
808
|
+
.pipe(operators.switchMap(function (data) {
|
|
1229
809
|
return rxjs.combineLatest([
|
|
1230
|
-
_this._cubejs.dryRun(data.query).pipe(operators.catchError((
|
|
1231
|
-
* @param {?} error
|
|
1232
|
-
* @return {?}
|
|
1233
|
-
*/function (error) {
|
|
810
|
+
_this._cubejs.dryRun(data.query).pipe(operators.catchError(function (error) {
|
|
1234
811
|
console.error(error);
|
|
1235
812
|
return rxjs.of(null);
|
|
1236
|
-
}))
|
|
813
|
+
})),
|
|
1237
814
|
rxjs.of(data.shouldApplyHeuristicOrder),
|
|
1238
815
|
]);
|
|
1239
|
-
}))
|
|
1240
|
-
.subscribe((
|
|
1241
|
-
* @param {?} __0
|
|
1242
|
-
* @return {?}
|
|
1243
|
-
*/function (_c) {
|
|
816
|
+
}))
|
|
817
|
+
.subscribe(function (_c) {
|
|
1244
818
|
var _d = __read(_c, 2), dryRunResponse = _d[0], shouldApplyHeuristicOrder = _d[1];
|
|
1245
819
|
if (!dryRunResponse) {
|
|
1246
820
|
return;
|
|
@@ -1248,31 +822,20 @@
|
|
|
1248
822
|
var pivotQuery = dryRunResponse.pivotQuery, queryOrder = dryRunResponse.queryOrder;
|
|
1249
823
|
_this.pivotConfig.set(cubejs.ResultSet.getNormalizedPivotConfig(pivotQuery, _this.pivotConfig.get()));
|
|
1250
824
|
if (shouldApplyHeuristicOrder) {
|
|
1251
|
-
_this._query.order.set(queryOrder.reduce((
|
|
1252
|
-
* @param {?} a
|
|
1253
|
-
* @param {?} b
|
|
1254
|
-
* @return {?}
|
|
1255
|
-
*/function (a, b) { return (Object.assign(Object.assign({}, a), b)); }), {}));
|
|
825
|
+
_this._query.order.set(queryOrder.reduce(function (a, b) { return (Object.assign(Object.assign({}, a), b)); }, {}));
|
|
1256
826
|
}
|
|
1257
|
-
})
|
|
827
|
+
});
|
|
1258
828
|
}
|
|
1259
829
|
return [2 /*return*/];
|
|
1260
830
|
});
|
|
1261
831
|
});
|
|
1262
832
|
};
|
|
1263
|
-
/**
|
|
1264
|
-
* @private
|
|
1265
|
-
* @param {?} newQuery
|
|
1266
|
-
* @param {?} oldQuery
|
|
1267
|
-
* @return {?}
|
|
1268
|
-
*/
|
|
1269
833
|
QueryBuilderService.prototype._handleQueryChange = function (newQuery, oldQuery) {
|
|
1270
834
|
var _a, _b;
|
|
1271
835
|
var _c = cubejs.defaultHeuristics(newQuery, oldQuery, {
|
|
1272
836
|
meta: this._meta,
|
|
1273
837
|
sessionGranularity: (_b = (_a = newQuery === null || newQuery === void 0 ? void 0 : newQuery.timeDimensions) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.granularity,
|
|
1274
838
|
}), chartType = _c.chartType, shouldApplyHeuristicOrder = _c.shouldApplyHeuristicOrder, heuristicQuery = _c.query;
|
|
1275
|
-
/** @type {?} */
|
|
1276
839
|
var query = this._disableHeuristics
|
|
1277
840
|
? newQuery
|
|
1278
841
|
: heuristicQuery || newQuery;
|
|
@@ -1287,54 +850,30 @@
|
|
|
1287
850
|
}
|
|
1288
851
|
return query;
|
|
1289
852
|
};
|
|
1290
|
-
/**
|
|
1291
|
-
* @param {?} cubejsClient
|
|
1292
|
-
* @return {?}
|
|
1293
|
-
*/
|
|
1294
853
|
QueryBuilderService.prototype.setCubejsClient = function (cubejsClient) {
|
|
1295
854
|
this._cubejs = cubejsClient;
|
|
1296
855
|
this.init();
|
|
1297
856
|
};
|
|
1298
|
-
/**
|
|
1299
|
-
* @private
|
|
1300
|
-
* @return {?}
|
|
1301
|
-
*/
|
|
1302
857
|
QueryBuilderService.prototype.subscribe = function () {
|
|
1303
858
|
var _this = this;
|
|
1304
|
-
Object.getOwnPropertyNames(this).forEach((
|
|
1305
|
-
* @param {?} key
|
|
1306
|
-
* @return {?}
|
|
1307
|
-
*/function (key) {
|
|
859
|
+
Object.getOwnPropertyNames(this).forEach(function (key) {
|
|
1308
860
|
if (_this[key] instanceof StateSubject) {
|
|
1309
|
-
_this[key].subject.subscribe((
|
|
1310
|
-
* @param {?} value
|
|
1311
|
-
* @return {?}
|
|
1312
|
-
*/function (value) {
|
|
861
|
+
_this[key].subject.subscribe(function (value) {
|
|
1313
862
|
var _c;
|
|
1314
863
|
return _this.setPartialState((_c = {},
|
|
1315
864
|
_c[key] = value,
|
|
1316
865
|
_c));
|
|
1317
|
-
})
|
|
866
|
+
});
|
|
1318
867
|
}
|
|
1319
|
-
})
|
|
1320
|
-
this.query.then((
|
|
1321
|
-
|
|
1322
|
-
* @return {?}
|
|
1323
|
-
*/function (query) {
|
|
1324
|
-
query.subject.subscribe(( /**
|
|
1325
|
-
* @param {?} cubeQuery
|
|
1326
|
-
* @return {?}
|
|
1327
|
-
*/function (cubeQuery) {
|
|
868
|
+
});
|
|
869
|
+
this.query.then(function (query) {
|
|
870
|
+
query.subject.subscribe(function (cubeQuery) {
|
|
1328
871
|
_this.setPartialState({
|
|
1329
872
|
query: cubeQuery,
|
|
1330
873
|
});
|
|
1331
|
-
})
|
|
1332
|
-
})
|
|
874
|
+
});
|
|
875
|
+
});
|
|
1333
876
|
};
|
|
1334
|
-
/**
|
|
1335
|
-
* @param {?} state
|
|
1336
|
-
* @return {?}
|
|
1337
|
-
*/
|
|
1338
877
|
QueryBuilderService.prototype.deserialize = function (state) {
|
|
1339
878
|
return __awaiter(this, void 0, void 0, function () {
|
|
1340
879
|
var _this = this;
|
|
@@ -1347,109 +886,42 @@
|
|
|
1347
886
|
(_c.sent()).setQuery(state.query);
|
|
1348
887
|
_c.label = 2;
|
|
1349
888
|
case 2:
|
|
1350
|
-
Object.entries(state).forEach((
|
|
1351
|
-
* @param {?} __0
|
|
1352
|
-
* @return {?}
|
|
1353
|
-
*/function (_c) {
|
|
889
|
+
Object.entries(state).forEach(function (_c) {
|
|
1354
890
|
var _d = __read(_c, 2), key = _d[0], value = _d[1];
|
|
1355
891
|
if (_this[key] instanceof StateSubject) {
|
|
1356
892
|
_this[key].set(value);
|
|
1357
893
|
}
|
|
1358
|
-
})
|
|
894
|
+
});
|
|
1359
895
|
this.subscribe();
|
|
1360
896
|
return [2 /*return*/];
|
|
1361
897
|
}
|
|
1362
898
|
});
|
|
1363
899
|
});
|
|
1364
900
|
};
|
|
1365
|
-
/**
|
|
1366
|
-
* @param {?} partialState
|
|
1367
|
-
* @return {?}
|
|
1368
|
-
*/
|
|
1369
901
|
QueryBuilderService.prototype.setPartialState = function (partialState) {
|
|
1370
902
|
this.state.next(Object.assign(Object.assign({}, this.state.getValue()), partialState));
|
|
1371
903
|
};
|
|
1372
|
-
/**
|
|
1373
|
-
* @return {?}
|
|
1374
|
-
*/
|
|
1375
904
|
QueryBuilderService.prototype.disableHeuristics = function () {
|
|
1376
905
|
this._disableHeuristics = false;
|
|
1377
906
|
};
|
|
1378
|
-
/**
|
|
1379
|
-
* @return {?}
|
|
1380
|
-
*/
|
|
1381
907
|
QueryBuilderService.prototype.enableHeuristics = function () {
|
|
1382
908
|
this._disableHeuristics = true;
|
|
1383
909
|
};
|
|
1384
910
|
return QueryBuilderService;
|
|
1385
911
|
}());
|
|
912
|
+
/** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
|
|
1386
913
|
QueryBuilderService.decorators = [
|
|
1387
914
|
{ type: core.Injectable }
|
|
1388
915
|
];
|
|
1389
|
-
if (false) {
|
|
1390
|
-
/**
|
|
1391
|
-
* @type {?}
|
|
1392
|
-
* @private
|
|
1393
|
-
*/
|
|
1394
|
-
QueryBuilderService.prototype._cubejs;
|
|
1395
|
-
/**
|
|
1396
|
-
* @type {?}
|
|
1397
|
-
* @private
|
|
1398
|
-
*/
|
|
1399
|
-
QueryBuilderService.prototype._meta;
|
|
1400
|
-
/**
|
|
1401
|
-
* @type {?}
|
|
1402
|
-
* @private
|
|
1403
|
-
*/
|
|
1404
|
-
QueryBuilderService.prototype._query;
|
|
1405
|
-
/**
|
|
1406
|
-
* @type {?}
|
|
1407
|
-
* @private
|
|
1408
|
-
*/
|
|
1409
|
-
QueryBuilderService.prototype._disableHeuristics;
|
|
1410
|
-
/**
|
|
1411
|
-
* @type {?}
|
|
1412
|
-
* @private
|
|
1413
|
-
*/
|
|
1414
|
-
QueryBuilderService.prototype._resolveQuery;
|
|
1415
|
-
/**
|
|
1416
|
-
* @type {?}
|
|
1417
|
-
* @private
|
|
1418
|
-
*/
|
|
1419
|
-
QueryBuilderService.prototype._resolveBuilderMeta;
|
|
1420
|
-
/**
|
|
1421
|
-
* @type {?}
|
|
1422
|
-
* @private
|
|
1423
|
-
*/
|
|
1424
|
-
QueryBuilderService.prototype._heuristicChange$;
|
|
1425
|
-
/** @type {?} */
|
|
1426
|
-
QueryBuilderService.prototype.builderMeta;
|
|
1427
|
-
/** @type {?} */
|
|
1428
|
-
QueryBuilderService.prototype.query;
|
|
1429
|
-
/** @type {?} */
|
|
1430
|
-
QueryBuilderService.prototype.state;
|
|
1431
|
-
/** @type {?} */
|
|
1432
|
-
QueryBuilderService.prototype.pivotConfig;
|
|
1433
|
-
/** @type {?} */
|
|
1434
|
-
QueryBuilderService.prototype.chartType;
|
|
1435
|
-
}
|
|
1436
916
|
|
|
1437
|
-
|
|
1438
|
-
*
|
|
1439
|
-
* Generated from: src/public_api.ts
|
|
1440
|
-
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
917
|
+
/*
|
|
918
|
+
* Public API Surface of cubejs-client-ngx
|
|
1441
919
|
*/
|
|
1442
920
|
|
|
1443
|
-
|
|
1444
|
-
* @fileoverview added by tsickle
|
|
1445
|
-
* Generated from: index.ts
|
|
1446
|
-
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
1447
|
-
*/
|
|
921
|
+
// This file is not used to build this module. It is only used during editing
|
|
1448
922
|
|
|
1449
923
|
/**
|
|
1450
|
-
*
|
|
1451
|
-
* Generated from: cubejs-client-ngx.ts
|
|
1452
|
-
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
924
|
+
* Generated bundle index. Do not edit.
|
|
1453
925
|
*/
|
|
1454
926
|
|
|
1455
927
|
exports.BaseMember = BaseMember;
|
|
@@ -1458,15 +930,14 @@
|
|
|
1458
930
|
exports.CubejsClient = CubejsClient;
|
|
1459
931
|
exports.CubejsClientModule = CubejsClientModule;
|
|
1460
932
|
exports.FilterMember = FilterMember;
|
|
1461
|
-
exports.MemberType = MemberType;
|
|
1462
933
|
exports.Order = Order;
|
|
1463
934
|
exports.PivotConfig = PivotConfig;
|
|
1464
935
|
exports.Query = Query;
|
|
1465
936
|
exports.QueryBuilderService = QueryBuilderService;
|
|
1466
937
|
exports.TimeDimensionMember = TimeDimensionMember;
|
|
1467
|
-
exports
|
|
938
|
+
exports["ɵa"] = StateSubject;
|
|
1468
939
|
|
|
1469
940
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
1470
941
|
|
|
1471
|
-
}))
|
|
942
|
+
}));
|
|
1472
943
|
//# sourceMappingURL=cubejs-client-ngx.umd.js.map
|