@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.
@@ -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['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';
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
- * @param {?} config
347
- * @return {?}
348
- */function (config) {
349
- _this.cubeJsApi = cubejs__default['default'](config.token, config.options);
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['default'](this.config.token, this.config.options);
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(( /** @type {?} */(this.apiInstace().load(query, options))));
362
+ return rxjs.from(this.apiInstace().load(query, options));
365
363
  };
366
- /**
367
- * @param {...?} params
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
- * @param {...?} params
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
- * @param {...?} params
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
- * @param {?} observer
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
- /** @nocollapse */
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] = __spread(this.members, [name]),
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
- /** @type {?} */
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
- /** @type {?} */
759
- var order = ( /** @type {?} */(orderMembers
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['default'](order, this.asObject())) {
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(__spread(this.query.measures.asArray(), this.query.dimensions.asArray(), this.query.timeDimensions.asArray()).map(( /**
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 ( /** @type {?} */(this.query.asCubeQuery().order));
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 ( /** @type {?} */((this.query.asCubeQuery().filters || [])));
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
- /** @type {?} */
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: ( /** @type {?} */(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: __spread(this.filters, [filter]),
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
- /** @enum {string} */
991
- var MemberType = {
992
- Measures: "measures",
993
- Dimensions: "dimensions",
994
- Segments: "segments",
995
- TimeDimensions: "timeDimensions",
996
- Filters: "filters",
997
- Order: "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
- /** @type {?} */
1105
- var allDimensions = ( /** @type {?} */((this.meta.membersForQuery(null, 'dimensions'))));
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 = __spread(allDimensions, this.measures).map(( /**
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
- * @param {?} resolve
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
- * @param {?} query
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
- * @fileoverview added by tsickle
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
- * @fileoverview added by tsickle
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.ɵa = StateSubject;
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