@datorama/core 22.2.6 → 22.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/bundle.scss +22 -0
  2. package/bundles/datorama-core.umd.js +139 -118
  3. package/bundles/datorama-core.umd.js.map +1 -1
  4. package/bundles/datorama-core.umd.min.js +18 -18
  5. package/bundles/datorama-core.umd.min.js.map +1 -1
  6. package/datorama-core.metadata.json +1 -1
  7. package/esm2015/lib/accordion/accordion/accordion.component.js +11 -3
  8. package/esm2015/lib/date-picker/date-picker-container/date-picker-container.component.js +5 -5
  9. package/esm2015/lib/grid-v2/grid-controller/grid-controller.component.js +1 -1
  10. package/esm2015/lib/grid-v2/grid-filter/grid-filter.component.js +1 -1
  11. package/esm2015/lib/grid-v2/grid-filter/grid-filter.types.js +1 -1
  12. package/esm2015/lib/grid-v2/grid-pagination/grid-pagination.component.js +2 -2
  13. package/esm2015/lib/grid-v2/grid-store/grid.service.js +2 -2
  14. package/esm2015/lib/grid-v2/grid-toolbar/grid-toolbar.component.js +1 -1
  15. package/esm2015/lib/icon/icon.types.js +1 -1
  16. package/esm2015/lib/select/select.component.js +12 -7
  17. package/esm2015/lib/sortable/sortable.component.js +7 -2
  18. package/esm2015/lib/version.js +2 -2
  19. package/esm5/lib/accordion/accordion/accordion.component.js +15 -3
  20. package/esm5/lib/date-picker/date-picker-container/date-picker-container.component.js +5 -5
  21. package/esm5/lib/grid-v2/grid-controller/grid-controller.component.js +1 -1
  22. package/esm5/lib/grid-v2/grid-filter/grid-filter.component.js +1 -1
  23. package/esm5/lib/grid-v2/grid-filter/grid-filter.types.js +1 -1
  24. package/esm5/lib/grid-v2/grid-pagination/grid-pagination.component.js +2 -2
  25. package/esm5/lib/grid-v2/grid-store/grid.service.js +2 -2
  26. package/esm5/lib/grid-v2/grid-toolbar/grid-toolbar.component.js +1 -1
  27. package/esm5/lib/icon/icon.types.js +1 -1
  28. package/esm5/lib/select/select.component.js +13 -7
  29. package/esm5/lib/sortable/sortable.component.js +7 -2
  30. package/esm5/lib/version.js +2 -2
  31. package/fesm2015/datorama-core.js +128 -112
  32. package/fesm2015/datorama-core.js.map +1 -1
  33. package/fesm5/datorama-core.js +139 -118
  34. package/fesm5/datorama-core.js.map +1 -1
  35. package/i18n/locale-en_US.json +2 -0
  36. package/lib/accordion/accordion/accordion.component.d.ts +4 -1
  37. package/lib/date-picker/date-picker-container/date-picker-container.component.d.ts +1 -1
  38. package/lib/icon/icon.types.d.ts +1 -1
  39. package/lib/select/select.component.d.ts +1 -0
  40. package/lib/sortable/sortable.component.d.ts +3 -1
  41. package/package.json +1 -1
@@ -6633,6 +6633,108 @@ const defaultClientSearchStrategy = (searchIn, searchValue, labelKey) => {
6633
6633
  return false;
6634
6634
  };
6635
6635
 
6636
+ /**
6637
+ * @license
6638
+ * Copyright Datorama. All Rights Reserved.
6639
+ *
6640
+ * Use of this source code is governed by an Apache License 2.0 license that can be
6641
+ * found in the LICENSE file at https://github.com/datorama/client-core/blob/master/LICENSE
6642
+ */
6643
+ let DatoSortableComponent = class DatoSortableComponent {
6644
+ constructor() {
6645
+ this.list = [];
6646
+ this.noop = noop;
6647
+ /**
6648
+ * Sortablejs options
6649
+ */
6650
+ this.datoOptions = {};
6651
+ /**
6652
+ * Fired once items order has changed
6653
+ */
6654
+ this.orderUpdated = new EventEmitter();
6655
+ this.defaultOptions = {
6656
+ handle: '.dato-sortable-handler',
6657
+ ghostClass: 'dato-sortable-ghost',
6658
+ chosenClass: 'dato-sortable-chosen',
6659
+ dragClass: 'dato-sortable-drag'
6660
+ };
6661
+ }
6662
+ set datoList(list) {
6663
+ const isArr = Array.isArray(list);
6664
+ const validInput = isArr || (list instanceof FormControl && Array.isArray(list.value));
6665
+ if (!validInput) {
6666
+ throw new Error(`DatoSortable - datoList expected array or form control but got ${typeof list}`);
6667
+ }
6668
+ if (!isArr) {
6669
+ this.formControl = list;
6670
+ this.list = [...this.formControl.value];
6671
+ }
6672
+ else {
6673
+ this.list = list;
6674
+ }
6675
+ }
6676
+ ngOnInit() {
6677
+ const _a = this.datoOptions, { dynamicGhostHeight, hasStaticItems } = _a, sortableOptions = __rest(_a, ["dynamicGhostHeight", "hasStaticItems"]);
6678
+ const mergedOptions = Object.assign(Object.assign(Object.assign({}, this.defaultOptions), sortableOptions), { onUpdate: event => (sortableOptions.onUpdate ? sortableOptions.onUpdate(event) : this.emitUpdate(event)) });
6679
+ if (dynamicGhostHeight) {
6680
+ mergedOptions.onStart = event => this.setGhostHeight(event);
6681
+ }
6682
+ if (hasStaticItems) {
6683
+ mergedOptions.onMove = event => {
6684
+ if (event.related.classList.contains('dato-sortable-static-item')) {
6685
+ return false;
6686
+ }
6687
+ return sortableOptions.onMove ? sortableOptions.onMove(event) : true;
6688
+ };
6689
+ }
6690
+ this.mergedOptions = mergedOptions;
6691
+ }
6692
+ emitUpdate(event) {
6693
+ if (this.formControl) {
6694
+ this.formControl.setValue(this.list);
6695
+ }
6696
+ this.orderUpdated.emit(event);
6697
+ }
6698
+ setGhostHeight(event) {
6699
+ const originalEl = event.from.children[event.oldIndex];
6700
+ setStyle(originalEl, 'display', 'block');
6701
+ const { height } = originalEl.getBoundingClientRect();
6702
+ setStyle(originalEl, 'display', 'none');
6703
+ const ghostEl = query('.dato-sortable-ghost');
6704
+ setStyle(ghostEl, 'height', `${height}px`);
6705
+ }
6706
+ };
6707
+ __decorate([
6708
+ ContentChildren(DatoAccordionGroupComponent),
6709
+ __metadata("design:type", QueryList)
6710
+ ], DatoSortableComponent.prototype, "accordionGroups", void 0);
6711
+ __decorate([
6712
+ Input(),
6713
+ __metadata("design:type", Object),
6714
+ __metadata("design:paramtypes", [Object])
6715
+ ], DatoSortableComponent.prototype, "datoList", null);
6716
+ __decorate([
6717
+ Input(),
6718
+ __metadata("design:type", Object)
6719
+ ], DatoSortableComponent.prototype, "datoOptions", void 0);
6720
+ __decorate([
6721
+ Input(),
6722
+ __metadata("design:type", String)
6723
+ ], DatoSortableComponent.prototype, "containerClass", void 0);
6724
+ __decorate([
6725
+ Output(),
6726
+ __metadata("design:type", Object)
6727
+ ], DatoSortableComponent.prototype, "orderUpdated", void 0);
6728
+ DatoSortableComponent = __decorate([
6729
+ Component({
6730
+ selector: 'dato-sortable',
6731
+ template: "<section [sortablejs]=\"list\" [sortablejsOptions]=\"mergedOptions\" [ngClass]=\"containerClass\"\n (update.stop)=\"noop()\" (add.stop)=\"noop()\" (sort.stop)=\"noop()\" (remove.stop)=\"noop()\"\n (filter.stop)=\"noop()\" (change.stop)=\"noop()\" (drag.stop)=\"noop()\">\n <ng-content></ng-content>\n</section>",
6732
+ changeDetection: ChangeDetectionStrategy.OnPush,
6733
+ encapsulation: ViewEncapsulation.None,
6734
+ styles: ["dato-sortable{display:inline-block}dato-sortable .dato-sortable-handler{cursor:move;cursor:-webkit-grabbing}.dato-sortable-ghost>*{display:none!important}.dato-sortable-drag{box-shadow:0 2px 14px 0 rgba(0,0,0,.2)}"]
6735
+ })
6736
+ ], DatoSortableComponent);
6737
+
6636
6738
  /**
6637
6739
  * @license
6638
6740
  * Copyright Datorama. All Rights Reserved.
@@ -6674,6 +6776,9 @@ let DatoAccordionComponent = DatoAccordionComponent_1 = class DatoAccordionCompo
6674
6776
  }
6675
6777
  }
6676
6778
  }
6779
+ get groups() {
6780
+ return this.sortable && this.sortable.accordionGroups.length > 0 ? this.sortable.accordionGroups : this.childGroups;
6781
+ }
6677
6782
  ngOnChanges(changes) {
6678
6783
  if (changes.expandAll && !changes.expandAll.firstChange) {
6679
6784
  this.setExpandAll();
@@ -6845,11 +6950,15 @@ DatoAccordionComponent.ctorParameters = () => [
6845
6950
  __decorate([
6846
6951
  ContentChildren(DatoAccordionGroupComponent),
6847
6952
  __metadata("design:type", QueryList)
6848
- ], DatoAccordionComponent.prototype, "groups", void 0);
6953
+ ], DatoAccordionComponent.prototype, "childGroups", void 0);
6849
6954
  __decorate([
6850
6955
  ContentChildren(DatoAccordionComponent_1, { descendants: true }),
6851
6956
  __metadata("design:type", QueryList)
6852
6957
  ], DatoAccordionComponent.prototype, "childAccordion", void 0);
6958
+ __decorate([
6959
+ ContentChild(DatoSortableComponent, { static: true }),
6960
+ __metadata("design:type", DatoSortableComponent)
6961
+ ], DatoAccordionComponent.prototype, "sortable", void 0);
6853
6962
  __decorate([
6854
6963
  Input(),
6855
6964
  __metadata("design:type", Object)
@@ -7592,8 +7701,8 @@ let DatoSelectComponent = class DatoSelectComponent extends BaseCustomControl {
7592
7701
  }
7593
7702
  }
7594
7703
  this.onChange(this._model);
7595
- this.datoOverlay.scheduleUpdate();
7596
7704
  this.cdr.markForCheck();
7705
+ this.asyncUpdateDropdownPosition();
7597
7706
  }
7598
7707
  reorderOptions(newOrder) {
7599
7708
  this._model = newOrder;
@@ -7613,9 +7722,7 @@ let DatoSelectComponent = class DatoSelectComponent extends BaseCustomControl {
7613
7722
  updateDisabled && this.updateDisabledState();
7614
7723
  this.onChange(this._model);
7615
7724
  this.cdr.markForCheck();
7616
- if (this.datoOverlay.attached) {
7617
- this.datoOverlay.scheduleUpdate();
7618
- }
7725
+ this.asyncUpdateDropdownPosition();
7619
7726
  }
7620
7727
  preventBodyScroll(event) {
7621
7728
  if (isArrowUpDown(event)) {
@@ -7812,7 +7919,7 @@ let DatoSelectComponent = class DatoSelectComponent extends BaseCustomControl {
7812
7919
  this.searchTerm = value;
7813
7920
  this.keyManager.setActiveItem(-1);
7814
7921
  this.cdr.markForCheck();
7815
- this.datoOverlay && this.datoOverlay.scheduleUpdate();
7922
+ this.asyncUpdateDropdownPosition();
7816
7923
  });
7817
7924
  }
7818
7925
  /**
@@ -7900,7 +8007,7 @@ let DatoSelectComponent = class DatoSelectComponent extends BaseCustomControl {
7900
8007
  updateDisabled && this.updateDisabledState();
7901
8008
  this.onChange(this._model);
7902
8009
  this.cdr.markForCheck();
7903
- this.datoOverlay.scheduleUpdate();
8010
+ this.asyncUpdateDropdownPosition();
7904
8011
  }
7905
8012
  activateInfiniteScroll() {
7906
8013
  this.infiniteSubscription = fromEvent(document.querySelector('.dato-select__dropdown'), 'scroll')
@@ -7941,6 +8048,13 @@ let DatoSelectComponent = class DatoSelectComponent extends BaseCustomControl {
7941
8048
  }
7942
8049
  }
7943
8050
  }
8051
+ // Make sure the overlay will be update AFTER Change Detection was done
8052
+ // So the items in the input (and its height) is update
8053
+ asyncUpdateDropdownPosition() {
8054
+ if (this.datoOverlay && this.datoOverlay.attached) {
8055
+ setTimeout(() => this.datoOverlay.scheduleUpdate(), 0);
8056
+ }
8057
+ }
7944
8058
  };
7945
8059
  DatoSelectComponent.ctorParameters = () => [
7946
8060
  { type: ChangeDetectorRef },
@@ -8850,104 +8964,6 @@ DatoOptionsModule = __decorate([
8850
8964
  })
8851
8965
  ], DatoOptionsModule);
8852
8966
 
8853
- /**
8854
- * @license
8855
- * Copyright Datorama. All Rights Reserved.
8856
- *
8857
- * Use of this source code is governed by an Apache License 2.0 license that can be
8858
- * found in the LICENSE file at https://github.com/datorama/client-core/blob/master/LICENSE
8859
- */
8860
- let DatoSortableComponent = class DatoSortableComponent {
8861
- constructor() {
8862
- this.list = [];
8863
- this.noop = noop;
8864
- /**
8865
- * Sortablejs options
8866
- */
8867
- this.datoOptions = {};
8868
- /**
8869
- * Fired once items order has changed
8870
- */
8871
- this.orderUpdated = new EventEmitter();
8872
- this.defaultOptions = {
8873
- handle: '.dato-sortable-handler',
8874
- ghostClass: 'dato-sortable-ghost',
8875
- chosenClass: 'dato-sortable-chosen',
8876
- dragClass: 'dato-sortable-drag'
8877
- };
8878
- }
8879
- set datoList(list) {
8880
- const isArr = Array.isArray(list);
8881
- const validInput = isArr || (list instanceof FormControl && Array.isArray(list.value));
8882
- if (!validInput) {
8883
- throw new Error(`DatoSortable - datoList expected array or form control but got ${typeof list}`);
8884
- }
8885
- if (!isArr) {
8886
- this.formControl = list;
8887
- this.list = [...this.formControl.value];
8888
- }
8889
- else {
8890
- this.list = list;
8891
- }
8892
- }
8893
- ngOnInit() {
8894
- const _a = this.datoOptions, { dynamicGhostHeight, hasStaticItems } = _a, sortableOptions = __rest(_a, ["dynamicGhostHeight", "hasStaticItems"]);
8895
- const mergedOptions = Object.assign(Object.assign(Object.assign({}, this.defaultOptions), sortableOptions), { onUpdate: event => (sortableOptions.onUpdate ? sortableOptions.onUpdate(event) : this.emitUpdate(event)) });
8896
- if (dynamicGhostHeight) {
8897
- mergedOptions.onStart = event => this.setGhostHeight(event);
8898
- }
8899
- if (hasStaticItems) {
8900
- mergedOptions.onMove = event => {
8901
- if (event.related.classList.contains('dato-sortable-static-item')) {
8902
- return false;
8903
- }
8904
- return sortableOptions.onMove ? sortableOptions.onMove(event) : true;
8905
- };
8906
- }
8907
- this.mergedOptions = mergedOptions;
8908
- }
8909
- emitUpdate(event) {
8910
- if (this.formControl) {
8911
- this.formControl.setValue(this.list);
8912
- }
8913
- this.orderUpdated.emit(event);
8914
- }
8915
- setGhostHeight(event) {
8916
- const originalEl = event.from.children[event.oldIndex];
8917
- setStyle(originalEl, 'display', 'block');
8918
- const { height } = originalEl.getBoundingClientRect();
8919
- setStyle(originalEl, 'display', 'none');
8920
- const ghostEl = query('.dato-sortable-ghost');
8921
- setStyle(ghostEl, 'height', `${height}px`);
8922
- }
8923
- };
8924
- __decorate([
8925
- Input(),
8926
- __metadata("design:type", Object),
8927
- __metadata("design:paramtypes", [Object])
8928
- ], DatoSortableComponent.prototype, "datoList", null);
8929
- __decorate([
8930
- Input(),
8931
- __metadata("design:type", Object)
8932
- ], DatoSortableComponent.prototype, "datoOptions", void 0);
8933
- __decorate([
8934
- Input(),
8935
- __metadata("design:type", String)
8936
- ], DatoSortableComponent.prototype, "containerClass", void 0);
8937
- __decorate([
8938
- Output(),
8939
- __metadata("design:type", Object)
8940
- ], DatoSortableComponent.prototype, "orderUpdated", void 0);
8941
- DatoSortableComponent = __decorate([
8942
- Component({
8943
- selector: 'dato-sortable',
8944
- template: "<section [sortablejs]=\"list\" [sortablejsOptions]=\"mergedOptions\" [ngClass]=\"containerClass\"\n (update.stop)=\"noop()\" (add.stop)=\"noop()\" (sort.stop)=\"noop()\" (remove.stop)=\"noop()\"\n (filter.stop)=\"noop()\" (change.stop)=\"noop()\" (drag.stop)=\"noop()\">\n <ng-content></ng-content>\n</section>",
8945
- changeDetection: ChangeDetectionStrategy.OnPush,
8946
- encapsulation: ViewEncapsulation.None,
8947
- styles: ["dato-sortable{display:inline-block}dato-sortable .dato-sortable-handler{cursor:move;cursor:-webkit-grabbing}.dato-sortable-ghost>*{display:none!important}.dato-sortable-drag{box-shadow:0 2px 14px 0 rgba(0,0,0,.2)}"]
8948
- })
8949
- ], DatoSortableComponent);
8950
-
8951
8967
  /**
8952
8968
  * @license
8953
8969
  * Copyright Datorama. All Rights Reserved.
@@ -12688,7 +12704,7 @@ let GridService = class GridService {
12688
12704
  appliedFilter[field] = filter;
12689
12705
  }
12690
12706
  this.updateSettings({ filter: appliedFilter });
12691
- this.api.grid.onFilterChanged();
12707
+ this.notifyFilterUpdate();
12692
12708
  }
12693
12709
  }
12694
12710
  setGridSort(gridSort) {
@@ -14625,7 +14641,7 @@ DatoGridPaginationV2Component = __decorate([
14625
14641
  Component({
14626
14642
  selector: 'dato-grid-pagination-v2',
14627
14643
  changeDetection: ChangeDetectionStrategy.OnPush,
14628
- template: "<div class=\"d-flex-row d-flex-auto d-flex-wrap container\" [class.small]=\"smallVersion\"\n [attr.data-pages-count]=\"totalPages\"\n [attr.data-current-page]=\"pageNumbersDisplay.currentPage\"\n [attr.data-page-size]=\"rowsPerPage\"\n [attr.data-rows-count]=\"rowCount\">\n <div *ngIf=\"totalPages > 1\" #navigation\n class=\"navigation d-flex-row d-flex-0-0-auto align-center\">\n\n <!-- First Page -->\n <dato-icon-button *ngIf=\"!disableButtons\"\n class=\"mr-4\" data-auto-id=\"pagiantion-first-page\"\n icon=\"chevron-left-double\"\n datoType=\"secondary\"\n datoSize=\"md\"\n [disabled]=\"prevPageDisabled\"\n (click)=\"navigateFirstPage()\">\n </dato-icon-button>\n\n <!-- Previous Page -->\n <dato-icon-button icon=\"arrow-left\" datoType=\"secondary\" datoSize=\"md\"\n [disabled]=\"prevPageDisabled\" data-auto-id=\"pagiantion-previous-page\"\n (click)=\"navigatePrevPage()\">\n </dato-icon-button>\n\n\n <div class=\"d-flex mx-5 align-center number-container\">\n <dato-link class=\"page-number mx-5\" datoType=\"secondary\" datoSize=\"sm\" data-auto-id=\"pagiantion-previous-batch\"\n *ngIf=\"pageNumbersDisplay.showFirstEllipsis && !smallVersion\"\n (click)=\"showPreviousBatch()\">...\n </dato-link>\n <dato-link class=\"page-number mx-5\" [datoType]=\"page === pageNumbersDisplay.currentPage ? 'primary' : 'secondary'\" datoSize=\"sm\"\n *ngFor=\"let page of pageNumbersDisplay.pages; index as i; trackBy: trackByPage;\" [attr.data-auto-id]=\"'pagiantion-page-' + i\"\n (click)=\"navigatePage(page - 1)\">\n {{page}}\n </dato-link>\n\n <div class=\"d-flex\" *ngIf=\"pageNumbersDisplay.showLastPage && !smallVersion\">\n <dato-link class=\"page-number mx-5\" datoType=\"secondary\" datoSize=\"sm\" data-auto-id=\"pagiantion-next-batch\"\n (click)=\"showNextBatch()\">...</dato-link>\n <dato-link class=\"page-number mx-5\" datoType=\"secondary\" datoSize=\"sm\"\n [attr.data-auto-id]=\"'pagiantion-page-' + totalPages\"\n (click)=\"navigatePage(totalPages - 1)\">\n {{totalPages}}\n </dato-link>\n </div>\n\n </div>\n\n <!-- Next Page -->\n <dato-icon-button icon=\"arrow-right\" datoType=\"secondary\" datoSize=\"md\"\n (click)=\"navigateNextPage()\" data-auto-id=\"pagiantion-next-page\"\n [disabled]=\"nextPageDisabled\">\n </dato-icon-button>\n\n <!-- Last Page -->\n <dato-icon-button *ngIf=\"!disableButtons\"\n class=\"ml-4\" icon=\"chevron-right-double\"\n datoType=\"secondary\" datoSize=\"md\" data-auto-id=\"pagiantion-last-page\"\n [disabled]=\"nextPageDisabled\"\n (click)=\"navigatePage(totalPages - 1)\">\n </dato-icon-button>\n\n </div>\n\n <div *ngIf=\"totalPages > 1 && !smallVersion\"\n class=\"separator mx-10 my-auto primary-100-background-color\">\n </div>\n\n <div class=\"total d-flex-0-0-auto d-flex-row align-center\">\n <span class=\"dato-note primary-300-color\">{{rowsRange}}</span>\n </div>\n\n <div *ngIf=\"showBottomControls\" class=\"grid-controls d-flex d-flex-1 justify-end\">\n <dato-icon-button *ngIf=\"hasRowGroupColumns\" [icon]=\"isExpanded ? 'collapse' : 'expand'\" datoType=\"secondary\"\n datoSize=\"md\" (click)=\"toggleGroupsState()\" data-auto-id=\"pagination-expand-collapse\"\n [datoTooltipV2]=\"isExpanded ? 'core.collapse-rows' : 'core.expand-rows'\">\n </dato-icon-button>\n\n <dato-icon-button class=\"mx-4\" icon=\"maximize-horizontal\" datoType=\"secondary\" datoSize=\"md\"\n (click)=\"autoFitGrid('content')\" [datoTooltipV2]=\"'core.fit-to-content'\"\n data-auto-id=\"pagination-fit-to-content\">\n </dato-icon-button>\n\n <dato-icon-button icon=\"minimize-horizontal\" datoType=\"secondary\" datoSize=\"md\"\n (click)=\"autoFitGrid('container')\" [datoTooltipV2]=\"'core.fit-to-container'\"\n data-auto-id=\"pagination-fit-to-container\">\n </dato-icon-button>\n </div>\n</div>\n",
14644
+ template: "<div class=\"d-flex-row d-flex-auto d-flex-wrap container\" [class.small]=\"smallVersion\"\n [attr.data-pages-count]=\"totalPages\"\n [attr.data-current-page]=\"pageNumbersDisplay.currentPage\"\n [attr.data-page-size]=\"rowsPerPage\"\n [attr.data-rows-count]=\"rowCount\">\n <div *ngIf=\"totalPages > 1\" #navigation\n class=\"navigation d-flex-row d-flex-0-0-auto align-center\">\n\n <!-- First Page -->\n <dato-icon-button *ngIf=\"!disableButtons\"\n class=\"mr-4\" data-auto-id=\"pagiantion-first-page\"\n icon=\"chevron-left-double\"\n datoType=\"secondary\"\n datoSize=\"md\"\n [disabled]=\"prevPageDisabled\"\n (click)=\"navigateFirstPage()\">\n </dato-icon-button>\n\n <!-- Previous Page -->\n <dato-icon-button icon=\"arrow-left\" datoType=\"secondary\" datoSize=\"md\"\n [disabled]=\"prevPageDisabled\" data-auto-id=\"pagiantion-previous-page\"\n (click)=\"navigatePrevPage()\">\n </dato-icon-button>\n\n\n <div class=\"d-flex mx-5 align-center number-container\">\n <dato-link class=\"page-number mx-5\" datoType=\"secondary\" datoSize=\"sm\" data-auto-id=\"pagiantion-previous-batch\"\n *ngIf=\"pageNumbersDisplay.showFirstEllipsis && !smallVersion\"\n (click)=\"showPreviousBatch()\">...\n </dato-link>\n <dato-link class=\"page-number mx-5\" [datoType]=\"page === pageNumbersDisplay.currentPage ? 'primary' : 'secondary'\" datoSize=\"sm\"\n *ngFor=\"let page of pageNumbersDisplay.pages; index as i; trackBy: trackByPage;\" [attr.data-auto-id]=\"'pagiantion-page-' + i\"\n (click)=\"navigatePage(page - 1)\">\n {{page}}\n </dato-link>\n\n <div class=\"d-flex\" *ngIf=\"pageNumbersDisplay.showLastPage && !smallVersion\">\n <dato-link class=\"page-number mx-5\" datoType=\"secondary\" datoSize=\"sm\" data-auto-id=\"pagiantion-next-batch\"\n (click)=\"showNextBatch()\">...</dato-link>\n <dato-link class=\"page-number mx-5\" datoType=\"secondary\" datoSize=\"sm\"\n [attr.data-auto-id]=\"'pagiantion-page-' + totalPages\"\n (click)=\"navigatePage(totalPages - 1)\">\n {{totalPages}}\n </dato-link>\n </div>\n\n </div>\n\n <!-- Next Page -->\n <dato-icon-button icon=\"arrow-right\" datoType=\"secondary\" datoSize=\"md\"\n (click)=\"navigateNextPage()\" data-auto-id=\"pagiantion-next-page\"\n [disabled]=\"nextPageDisabled\">\n </dato-icon-button>\n\n <!-- Last Page -->\n <dato-icon-button *ngIf=\"!disableButtons\"\n class=\"ml-4\" icon=\"chevron-right-double\"\n datoType=\"secondary\" datoSize=\"md\" data-auto-id=\"pagiantion-last-page\"\n [disabled]=\"nextPageDisabled\"\n (click)=\"navigatePage(totalPages - 1)\">\n </dato-icon-button>\n\n </div>\n\n <div *ngIf=\"totalPages > 1 && !smallVersion\"\n class=\"separator mx-10 my-auto primary-100-background-color\">\n </div>\n\n <div class=\"total d-flex-0-0-auto d-flex-row align-center\">\n <span class=\"dato-note primary-300-color\">{{rowsRange}}</span>\n </div>\n\n <div *ngIf=\"showBottomControls\" class=\"grid-controls d-flex d-flex-1 justify-end\">\n <dato-icon-button *ngIf=\"hasRowGroupColumns\" [icon]=\"isExpanded ? 'collapse' : 'expand'\" datoType=\"secondary\"\n datoSize=\"md\" (click)=\"toggleGroupsState()\" data-auto-id=\"pagination-expand-collapse\"\n [datoTooltipV2]=\"isExpanded ? 'core.collapse-rows' : 'core.expand-rows'\">\n </dato-icon-button>\n\n <dato-icon-button class=\"mx-4\" icon=\"maximize-horizontal\" datoType=\"secondary\" datoSize=\"md\"\n (click)=\"autoFitGrid('content')\" [datoTooltipV2]=\"'core.fit-to-text'\"\n data-auto-id=\"pagination-fit-to-content\">\n </dato-icon-button>\n\n <dato-icon-button icon=\"minimize-horizontal\" datoType=\"secondary\" datoSize=\"md\"\n (click)=\"autoFitGrid('container')\" [datoTooltipV2]=\"'core.revert-to-default-size'\"\n data-auto-id=\"pagination-fit-to-container\">\n </dato-icon-button>\n </div>\n</div>\n",
14629
14645
  providers: [DecimalPipe],
14630
14646
  styles: [":host{padding:12px 0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;min-height:25px}:host .container{height:25px}:host .navigation .page-number{transition:color .3s ease-in-out}:host .navigation .page-number:first-of-type{margin-left:7px}:host .navigation .page-number:last-of-type{margin-right:7px}:host .separator{width:1px;height:25px}:host .container.small .navigation,:host .container.small .total{margin-top:8px;margin-left:auto;margin-right:auto}"]
14631
14647
  }),
@@ -16308,9 +16324,11 @@ let DatoDatePickerContainerComponent = class DatoDatePickerContainerComponent ex
16308
16324
  .subscribe(event => {
16309
16325
  this.toggle.emit(event);
16310
16326
  this.open = false;
16327
+ this.cdr.detectChanges();
16311
16328
  this.input && this.setInputValue();
16312
16329
  });
16313
16330
  this.open = true;
16331
+ this.cdr.detectChanges();
16314
16332
  this.input && this.handleEnter();
16315
16333
  }
16316
16334
  }
@@ -16363,9 +16381,7 @@ let DatoDatePickerContainerComponent = class DatoDatePickerContainerComponent ex
16363
16381
  this.initialInputValue = currentValue;
16364
16382
  }
16365
16383
  handleEnter() {
16366
- this.input.keydown$
16367
- .pipe(filter$1(isEnter), takeUntil(this.toggle))
16368
- .subscribe(() => {
16384
+ this.input.keydown$.pipe(filter$1(isEnter), takeUntil(this.toggle)).subscribe(() => {
16369
16385
  this.setInputValue();
16370
16386
  this.popover.closeById(DATE_PICKER_POPOVER_ID);
16371
16387
  this.input.blur();
@@ -16431,7 +16447,7 @@ __decorate([
16431
16447
  DatoDatePickerContainerComponent = __decorate([
16432
16448
  Component({
16433
16449
  selector: 'dato-date-picker',
16434
- template: "<div class=\"d-flex {{ triggerStyle }} items-center dato-date-picker-trigger\" (click)=\"openDatepicker(origin)\" #origin\n [class.pointer]=\"!viewMode\">\n <ng-template #defaultView>\n <dato-icon datoIcon=\"calendarcore\" width=\"16px\" class=\"primary-400-color\"></dato-icon>\n <div class=\"ellipsis\"\n [datoTooltip]=\"dateLabel + ' ' + dateRange\"\n [datoTooltipPosition]=\"labelTooltipPosition\"\n [datoTooltipOnTextOverflow]=\"true\">\n <span class=\"dato-note date-label\" *ngIf=\"dateLabel\">{{dateLabel | translate}}&nbsp;</span>\n <span class=\"dato-note date-range\">{{dateRange}}</span>\n </div>\n </ng-template>\n\n <ng-template [ngTemplateOutlet]=\"triggerTpl ? triggerTpl : defaultView\"\n [ngTemplateOutletContext]=\"{label: dateLabel, range: dateRange, icon: 'calendar'}\"></ng-template>\n </div>\n",
16450
+ template: "<div class=\"d-flex {{ triggerStyle }} items-center dato-date-picker-trigger\" [class.open]=\"open\" (click)=\"openDatepicker(origin)\" #origin\n [class.pointer]=\"!viewMode\">\n <ng-template #defaultView>\n <dato-icon datoIcon=\"calendarcore\" width=\"16px\" class=\"primary-400-color\"></dato-icon>\n <div class=\"ellipsis\"\n [datoTooltip]=\"dateLabel + ' ' + dateRange\"\n [datoTooltipPosition]=\"labelTooltipPosition\"\n [datoTooltipOnTextOverflow]=\"true\">\n <span class=\"dato-note date-label\" *ngIf=\"dateLabel\">{{dateLabel | translate}}&nbsp;</span>\n <span class=\"dato-note date-range\">{{dateRange}}</span>\n </div>\n </ng-template>\n\n <ng-template [ngTemplateOutlet]=\"triggerTpl ? triggerTpl : defaultView\"\n [ngTemplateOutletContext]=\"{label: dateLabel, range: dateRange, icon: 'calendar'}\"></ng-template>\n </div>\n",
16435
16451
  changeDetection: ChangeDetectionStrategy.OnPush
16436
16452
  }),
16437
16453
  __param(0, Self()), __param(0, Optional()),
@@ -22650,7 +22666,7 @@ function fixNgLeaks() {
22650
22666
  };
22651
22667
  }
22652
22668
 
22653
- window.coreVersion = '22.2.6';
22669
+ window.coreVersion = '22.5.3';
22654
22670
 
22655
22671
  /**
22656
22672
  * @license