@datorama/core 22.13.0-beta.5 → 22.13.8-rc.2

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 (60) hide show
  1. package/bundle.scss +4833 -5708
  2. package/bundles/datorama-core.umd.js +134 -86
  3. package/bundles/datorama-core.umd.js.map +1 -1
  4. package/bundles/datorama-core.umd.min.js +56 -56
  5. package/bundles/datorama-core.umd.min.js.map +1 -1
  6. package/datorama-core.d.ts +1 -0
  7. package/datorama-core.metadata.json +1 -1
  8. package/esm2015/datorama-core.js +2 -1
  9. package/esm2015/lib/breadcrumbs/breadcrumbs.component.js +4 -2
  10. package/esm2015/lib/grid/grid/grid.component.js +5 -5
  11. package/esm2015/lib/grid-v2/grid/grid-v2.component.js +8 -10
  12. package/esm2015/lib/grid-v2/grid/grid-v2.config.js +21 -4
  13. package/esm2015/lib/grid-v2/grid/grid-v2.types.js +1 -1
  14. package/esm2015/lib/grid-v2/grid-column-header/grid-column-header.component.js +1 -1
  15. package/esm2015/lib/grid-v2/grid-column-header/grid-multi-select-header/grid-multi-select-header.component.js +3 -4
  16. package/esm2015/lib/grid-v2/grid-controller/grid-controller.component.js +8 -8
  17. package/esm2015/lib/grid-v2/grid-pagination/grid-pagination.component.js +2 -2
  18. package/esm2015/lib/grid-v2/grid-settings.js +2 -2
  19. package/esm2015/lib/grid-v2/grid-store/grid.query.js +1 -1
  20. package/esm2015/lib/grid-v2/grid-store/grid.service.js +15 -15
  21. package/esm2015/lib/grid-v2/grid-toolbar/grid-toolbar.component.js +13 -1
  22. package/esm2015/lib/rich-text/rich-text.directive.js +20 -38
  23. package/esm2015/lib/rich-text/rich-text.service.js +50 -0
  24. package/esm2015/lib/select/select.component.js +4 -9
  25. package/esm2015/lib/version.js +2 -2
  26. package/esm5/datorama-core.js +2 -1
  27. package/esm5/lib/breadcrumbs/breadcrumbs.component.js +4 -2
  28. package/esm5/lib/grid/grid/grid.component.js +5 -5
  29. package/esm5/lib/grid-v2/grid/grid-v2.component.js +8 -10
  30. package/esm5/lib/grid-v2/grid/grid-v2.config.js +21 -4
  31. package/esm5/lib/grid-v2/grid/grid-v2.types.js +1 -1
  32. package/esm5/lib/grid-v2/grid-column-header/grid-column-header.component.js +1 -1
  33. package/esm5/lib/grid-v2/grid-column-header/grid-multi-select-header/grid-multi-select-header.component.js +3 -4
  34. package/esm5/lib/grid-v2/grid-controller/grid-controller.component.js +8 -8
  35. package/esm5/lib/grid-v2/grid-pagination/grid-pagination.component.js +2 -2
  36. package/esm5/lib/grid-v2/grid-settings.js +2 -2
  37. package/esm5/lib/grid-v2/grid-store/grid.query.js +1 -1
  38. package/esm5/lib/grid-v2/grid-store/grid.service.js +15 -15
  39. package/esm5/lib/grid-v2/grid-toolbar/grid-toolbar.component.js +20 -1
  40. package/esm5/lib/rich-text/rich-text.directive.js +21 -39
  41. package/esm5/lib/rich-text/rich-text.service.js +51 -0
  42. package/esm5/lib/select/select.component.js +4 -9
  43. package/esm5/lib/version.js +2 -2
  44. package/fesm2015/datorama-core.js +125 -87
  45. package/fesm2015/datorama-core.js.map +1 -1
  46. package/fesm5/datorama-core.js +134 -88
  47. package/fesm5/datorama-core.js.map +1 -1
  48. package/lib/grid/grid/grid.component.d.ts +2 -2
  49. package/lib/grid-v2/grid/grid-v2.component.d.ts +2 -2
  50. package/lib/grid-v2/grid/grid-v2.config.d.ts +1 -0
  51. package/lib/grid-v2/grid/grid-v2.types.d.ts +1 -0
  52. package/lib/grid-v2/grid-controller/grid-controller.component.d.ts +5 -5
  53. package/lib/grid-v2/grid-settings.d.ts +2 -2
  54. package/lib/grid-v2/grid-store/grid.query.d.ts +3 -3
  55. package/lib/grid-v2/grid-store/grid.service.d.ts +6 -2
  56. package/lib/grid-v2/grid-toolbar/grid-toolbar.component.d.ts +3 -0
  57. package/lib/rich-text/rich-text.directive.d.ts +4 -6
  58. package/lib/rich-text/rich-text.service.d.ts +10 -0
  59. package/package.json +2 -2
  60. package/testing/src/grid/row.ts +1 -1
@@ -59,7 +59,7 @@ import DOMPurify from 'dompurify';
59
59
  import tippy from 'tippy.js';
60
60
  import { coerceElement as coerceElement$1, coerceBooleanProperty, coerceCssPixelValue, coerceArray as coerceArray$2 } from '@angular/cdk/coercion';
61
61
  import { memo, debounce as debounce$1, delay } from 'helpful-decorators';
62
- import { AgGridAngular, AgGridModule } from 'ag-grid-angular';
62
+ import { AgGridNg2, AgGridModule } from 'ag-grid-angular';
63
63
  import { GridApi, ColumnApi, Events } from 'ag-grid-community';
64
64
  import { trigger, transition, style, animate, AnimationBuilder } from '@angular/animations';
65
65
  import { ActiveDescendantKeyManager, ListKeyManager } from '@angular/cdk/a11y';
@@ -5851,8 +5851,8 @@ var DatoGridComponent = /** @class */ (function (_super) {
5851
5851
  { type: ChangeDetectorRef }
5852
5852
  ]; };
5853
5853
  __decorate([
5854
- ViewChild(AgGridAngular, { static: true }),
5855
- __metadata("design:type", AgGridAngular)
5854
+ ViewChild(AgGridNg2, { static: true }),
5855
+ __metadata("design:type", AgGridNg2)
5856
5856
  ], DatoGridComponent.prototype, "gridComponent", void 0);
5857
5857
  __decorate([
5858
5858
  ViewChild(DatoGridPaginationComponent, { static: true }),
@@ -5874,7 +5874,7 @@ var DatoGridComponent = /** @class */ (function (_super) {
5874
5874
  changeDetection: ChangeDetectionStrategy.OnPush,
5875
5875
  encapsulation: ViewEncapsulation.None,
5876
5876
  providers: [valueAccessor$2],
5877
- styles: ["@font-face{font-family:agGridClassic;src:url(\"data:application/font-woff;charset=utf-8;base64,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\") format(\"woff\"),url(\"data:application/x-font-ttf;charset=utf-8;base64,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AAAAdAAAADoAAAB1AAAAdQAAAEkAAAB2AAAAdgAAAE4AAAB3AAAAdwAAAD4AAAB4AAAAeAAAAEUAAAB5AAAAeQAAAEsAAAB6AAAAegAAAE0AAPEBAADxAQAAAAEAAPECAADxAgAAAAIAAPEDAADxAwAAAAMAAPEEAADxBAAAAAQAAPEFAADxBQAAAAUAAPEGAADxBgAAAAYAAPEHAADxBwAAAAcAAPEIAADxCAAAAAgAAPEJAADxCQAAAAkAAPEKAADxCgAAAAoAAPELAADxCwAAAAsAAPEMAADxDAAAAAwAAPENAADxDQAAAA0AAPEOAADxDgAAAA4AAPEPAADxDwAAAA8AAPEQAADxEAAAABAAAPERAADxEQAAABEAAPESAADxEgAAABIAAPETAADxEwAAABMAAPEUAADxFAAAABUAAPEVAADxFQAAABYAAPEWAADxFgAAABcAAPEXAADxFwAAABgAAPEYAADxGAAAABkAAPEZAADxGQAAABoAAPEaAADxGgAAABsAAPEbAADxGwAAABwAAPEcAADxHAAAAB0AAPEdAADxHQAAAB4AAPEeAADxHgAAAB8AAPEfAADxHwAAACAAAPEgAADxIAAAACEAAPEhAADxIQAAACIAAPEiAADxIgAAACMAAPEjAADxIwAAACQAAPEkAADxJAAAACUAAPElAADxJQAAACYAAPEmAADxJgAAACcAAPEnAADxJwAAACgAAPEoAADxKAAAACkAAPEpAADxKQAAACoAAPEqAADxKgAAACsAAPErAADxKwAAACwAAPEsAADxLAAAAC0AAPEtAADxLQAAAC4AAPEuAADxLgAAAC8AAPEvAADxLwAAADAAAPEwAADxMAAAADEAAPExAADxMQAAADIAAPEyAADxMgAAADMAAPEzAADxMwAAADEAAPE0AADxNAAAACIAAPE1AADxNQAAAC8AAPE2AADxNgAAADQAAAAAABgAUgBqAIQA0AEUAVQBjAG+AdQCAAJIAmwCjgMUA2YDfgO+BCQEigTmBPwFFgViBaYF+AYQBigG0AcCB1QHcAfCB9AH4ggECFoIeAiUCPYJCgkcCWIJvAnUCf4KDAoaCigKNgpKCtQLXgteC14LXgteC14LXgteC14LXgteC14LXgteC14LXgteC14LXgteC14LXgteC14LXgteAAEAAAAAAzYDawAJ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AHkAIABzAHYAZwAyAHQAdABmACAAZgByAG8AbQAgAEYAbwBuAHQAZQBsAGwAbwAgAHAAcgBvAGoAZQBjAHQALgBoAHQAdABwADoALwAvAGYAbwBuAHQAZQBsAGwAbwAuAGMAbwBtAAAAAgAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABPAQIBAwEEAQUBBgEHAQgBCQEKAQsBDAENAQ4BDwEQAREBEgETARQBFQEWARcBGAEZARoBGwEcAR0BHgEfASABIQEiASMBJAElASYBJwEoASkBKgErASwBLQEuAS8BMAExATIBMwE0ATUBNgE3ATgBOQE6ATsBPAE9AT4BPwFAAUEBQgFDAUQBRQFGAUcBSAFJAUoBSwFMAU0BTgFPAVAAC2FnZ3JlZ2F0aW9uBmFycm93cwNhc2MGY2FuY2VsBWNoYXJ0EGNoZWNrYm94LWNoZWNrZWQWY2hlY2tib3gtaW5kZXRlcm1pbmF0ZRJjaGVja2JveC11bmNoZWNrZWQMY29sb3ItcGlja2VyBmNvbHVtbgdjb2x1bW5zCmNvbnRyYWN0ZWQEY29weQVjcm9zcwNjdXQEZGF0YQRkZXNjCGV4cGFuZGVkCWV5ZS1zbGFzaAtleWUtc2xhc2gtMQNleWUGZmlsdGVyBWZpcnN0BGdyaXAFZ3JvdXANaW5kZXRlcm1pbmF0ZQRsYXN0BGxlZnQGbGlua2VkB2xvYWRpbmcIbWF4aW1pemUEbWVudQhtaW5pbWl6ZQVtaW51cwRuZXh0BG5vbmULbm90LWFsbG93ZWQFcGFzdGUDcGluBXBpdm90BHBsdXMIcHJldmlvdXMQcmFkaW8tYnV0dG9uLW9mZg9yYWRpby1idXR0b24tb24FcmlnaHQEc2F2ZQpzbWFsbC1kb3duCnNtYWxsLWxlZnQLc21hbGwtcmlnaHQIc21hbGwtdXAEdGljawh1bmxpbmtlZAp1bmxpbmtlZC0xAWEBZwFyAWUBdAFpAW8BbgF3AXMBYwFsAWgBawFiAXgBLQFkAW0BdQFwAXkBZgF6AXYAAAA=\") format(\"truetype\");font-weight:400;font-style:normal}dato-grid{display:block;width:100%;height:100%;overflow:hidden}dato-grid.grid-pagination{padding-bottom:0;display:flex;flex-direction:column}dato-grid.grid-pagination ag-grid-angular{margin-bottom:7px;height:calc(100% - 32px)}.ag-dato-core{width:100%;height:100%}.ag-dato-core .da-grid-icon{display:inline-block;line-height:31px;vertical-align:middle}.ag-dato-core .ag-menu .da-grid-icon svg{vertical-align:middle}.ag-dato-core .ag-header-cell-sortable .ag-sort-none-icon{opacity:0;transition:opacity .2s}.ag-dato-core .ag-header-cell-sortable:hover .ag-sort-none-icon{opacity:1}.ag-dato-core .sort-icon svg{width:14px;height:16px}.ag-dato-core .filter-icon svg{width:13px}.ag-dato-core .menu-icon svg{width:4px;height:14px}.ag-dato-core .menu-auto-size-icon svg,.ag-dato-core .menu-group-icon,.ag-dato-core .menu-pin-icon,.ag-dato-core .menu-un-group-icon{width:16px;height:16px}.ag-dato-core .menu-check-icon svg{width:15px;height:18px}.ag-dato-core .group-contracted-icon,.ag-dato-core .group-expanded-icon{width:7px}.ag-dato-core .group-expanded-icon{transform:rotate(90deg)}"]
5877
+ styles: ["dato-grid{display:block;width:100%;height:100%;overflow:hidden}dato-grid.grid-pagination{padding-bottom:0;display:flex;flex-direction:column}dato-grid.grid-pagination ag-grid-angular{margin-bottom:7px;height:calc(100% - 32px)}.ag-dato-core{width:100%;height:100%}.ag-dato-core .da-grid-icon{display:inline-block;line-height:31px;vertical-align:middle}.ag-dato-core .ag-menu .da-grid-icon svg{vertical-align:middle}.ag-dato-core .ag-header-cell-sortable .ag-sort-none-icon{opacity:0;transition:opacity .2s}.ag-dato-core .ag-header-cell-sortable:hover .ag-sort-none-icon{opacity:1}.ag-dato-core .sort-icon svg{width:14px;height:16px}.ag-dato-core .filter-icon svg{width:13px}.ag-dato-core .menu-icon svg{width:4px;height:14px}.ag-dato-core .menu-auto-size-icon svg,.ag-dato-core .menu-group-icon,.ag-dato-core .menu-pin-icon,.ag-dato-core .menu-un-group-icon{width:16px;height:16px}.ag-dato-core .menu-check-icon svg{width:15px;height:18px}.ag-dato-core .group-contracted-icon,.ag-dato-core .group-expanded-icon{width:7px}.ag-dato-core .group-expanded-icon{transform:rotate(90deg)}"]
5878
5878
  }),
5879
5879
  __metadata("design:paramtypes", [DatoGridHelper,
5880
5880
  ElementRef,
@@ -8674,9 +8674,8 @@ var DatoSelectComponent = /** @class */ (function (_super) {
8674
8674
  DatoSelectComponent.prototype.writeValue = function (activeOptions) {
8675
8675
  this._model = activeOptions ? coerceArray$1(activeOptions) : [];
8676
8676
  if (this.options) {
8677
- var overTheLimit = this.limitSelectedTo && this.isMulti && this._model.length >= this.limitSelectedTo;
8678
8677
  this.markAsActive(this._model, { deselectAll: true });
8679
- overTheLimit && this.updateDisabledState();
8678
+ this.limitSelectedTo && this.updateDisabledState();
8680
8679
  }
8681
8680
  /** For later updates */
8682
8681
  this.cdr.markForCheck();
@@ -8804,7 +8803,6 @@ var DatoSelectComponent = /** @class */ (function (_super) {
8804
8803
  };
8805
8804
  DatoSelectComponent.prototype.removeOption = function (option) {
8806
8805
  var _this = this;
8807
- var updateDisabled = this.limitSelectedTo && this._model.length === this.limitSelectedTo;
8808
8806
  this._model = this._model.filter(function (current) { return current[_this.idKey] !== option[_this.idKey]; });
8809
8807
  var optionToRemove = this.options.find(function (datoOption) { return datoOption.option && datoOption.option[_this.idKey] === option[_this.idKey]; });
8810
8808
  /**
@@ -8814,7 +8812,7 @@ var DatoSelectComponent = /** @class */ (function (_super) {
8814
8812
  if (optionToRemove) {
8815
8813
  optionToRemove.active = false;
8816
8814
  }
8817
- updateDisabled && this.updateDisabledState();
8815
+ this.limitSelectedTo && this.updateDisabledState();
8818
8816
  this.onChange(this._model);
8819
8817
  this.cdr.markForCheck();
8820
8818
  this.asyncUpdateDropdownPosition();
@@ -9162,9 +9160,6 @@ var DatoSelectComponent = /** @class */ (function (_super) {
9162
9160
  if (!datoOption) {
9163
9161
  return;
9164
9162
  }
9165
- var modelLength = this._model.length;
9166
- var updateDisabled = this.limitSelectedTo &&
9167
- (modelLength === this.limitSelectedTo || (modelLength === this.limitSelectedTo - 1 && !datoOption.active));
9168
9163
  datoOption.active = !datoOption.active;
9169
9164
  var rawOption = datoOption.option;
9170
9165
  if (datoOption.active) {
@@ -9173,7 +9168,7 @@ var DatoSelectComponent = /** @class */ (function (_super) {
9173
9168
  else {
9174
9169
  this._model = this._model.filter(function (current) { return current[_this.idKey] !== rawOption[_this.idKey]; });
9175
9170
  }
9176
- updateDisabled && this.updateDisabledState();
9171
+ this.limitSelectedTo && this.updateDisabledState();
9177
9172
  this.onChange(this._model);
9178
9173
  this.cdr.markForCheck();
9179
9174
  this.asyncUpdateDropdownPosition();
@@ -11909,7 +11904,7 @@ function toolbarActionToContextAction(params) {
11909
11904
  return contextActions;
11910
11905
  }
11911
11906
 
11912
- var DATO_GRID_STORAGE_API = new InjectionToken('DATO_GRID_STORAGE_API');
11907
+ var DATO_GRID_STORAGE_API = new InjectionToken('DATO_GRID_STORAGE_AP');
11913
11908
 
11914
11909
  var defaultEditableColumnRenderer = function (params) {
11915
11910
  return params && params.value ? "<div class=\"value-wrapper ellipsis\">" + params.value + "</div>" : null;
@@ -13539,7 +13534,7 @@ var DatoGridColumnHeaderComponent = /** @class */ (function () {
13539
13534
  Component({
13540
13535
  selector: 'dato-grid-column-header',
13541
13536
  template: "<div class=\"d-flex align-start-center\" [attr.data-auto-id]=\"field + '-column-header'\" [attr.data-field]=\"field\">\n <ng-container *ngIf=\"customTemplates && customTemplates.customHeader as customHeader\">\n <div class=\"mr-5\" [attr.data-auto-id]=\"field + '-dynamic-section'\">\n <ng-container *ngTemplateOutlet=\"customHeader; context: context\"></ng-container>\n </div>\n </ng-container>\n <div class=\"d-flex d-flex-grow align-start-center min-width-0 items-center\">\n <span class=\"dato-simple-bold primary-400-color ellipsis min-width-0 mr-5\" [datoTooltip]=\"headerTooltip\"\n datoTooltipPosition=\"bottom\">{{headerName}}</span>\n <div>\n <dato-icon class=\"primary-300-color\" *ngIf=\"headerInfo\" [datoTooltip]=\"headerInfo\" datoTooltipPosition=\"bottom\" datoIcon=\"question\"></dato-icon>\n </div>\n </div>\n <div class=\"sort-icon opacity-0\" *ngIf=\"params.enableSorting && (sortingInfo$ | async) as sortingInfo\"\n [class.active]=\"sortingInfo.active\">\n <dato-icon width=\"24px\" height=\"16px\" class=\"primary-300-color\"\n [attr.data-auto-id]=\"field + '-sort'\"\n [icon]=\"sortingInfo.icon\"></dato-icon>\n </div>\n <ng-container *ngIf=\"showFilter\">\n <div class=\"filter relative\" *datoSubscribe=\"filterActive$ as filterActive\">\n <dato-icon-button (click.stop)=\"openFilters(filters)\" datoTooltip=\"core.filters\" datoTooltipPosition=\"bottom\"\n datoType=\"none\" [attr.data-auto-id]=\"field + '-filter'\" class=\"filter-icon opacity-0\"\n [class.active]=\"filtersMenuOpen || filterActive\"\n datoSize=\"md\" icon=\"filter\"\n #filters></dato-icon-button>\n <div [class.opacity-100]=\"filterActive\"\n class=\"opacity-0 filter-active-circle accent-400-background-color absolute\"></div>\n </div>\n </ng-container>\n <dato-icon-button *ngIf=\"showMoreMenu\" (click.stop)=\"openMoreMenu(moreMenu)\" datoTooltip=\"core.more-options\" datoTooltipPosition=\"bottom\"\n datoType=\"none\" [attr.data-auto-id]=\"field + '-more-menu'\" [class.active]=\"moreMenuOpen\"\n datoSize=\"md\" icon=\"more-vertical\" #moreMenu></dato-icon-button>\n</div>\n",
13542
- styles: [":host{width:100%}:host .filter-icon,:host .sort-icon{transition:opacity .25s linear,width .25s ease-in-out;width:0}:host .sort-icon{height:16px}:host .filter-icon.active,:host .sort-icon.active{opacity:1;width:24px}:host:hover .filter-icon,:host:hover .sort-icon{opacity:1;width:24px}:host .filter-active-circle{pointer-events:none;transition:opacity .2s ease-in-out;position:absolute;height:8px;width:8px;top:2px;right:2px;border-radius:4px;border:1px solid #fff}:host ::ng-deep .filter dato-icon-button dato-icon{transition:color .2s ease-in-out}"]
13537
+ styles: [":host .filter-icon,:host .sort-icon{transition:opacity .25s linear,width .25s ease-in-out;width:0}:host .sort-icon{height:16px}:host .filter-icon.active,:host .sort-icon.active{opacity:1;width:24px}:host:hover .filter-icon,:host:hover .sort-icon{opacity:1;width:24px}:host .filter-active-circle{pointer-events:none;transition:opacity .2s ease-in-out;position:absolute;height:8px;width:8px;top:2px;right:2px;border-radius:4px;border:1px solid #fff}:host ::ng-deep .filter dato-icon-button dato-icon{transition:color .2s ease-in-out}"]
13543
13538
  }),
13544
13539
  __metadata("design:paramtypes", [ViewContainerRef,
13545
13540
  CustomHeaderControllerService,
@@ -13551,6 +13546,7 @@ var DatoGridColumnHeaderComponent = /** @class */ (function () {
13551
13546
 
13552
13547
  var _a$3;
13553
13548
  var agRowLevelPrefix = 'ag-row-level-';
13549
+ var emptyFolderClassName = 'ag-empty-folder';
13554
13550
  function getTime$1(val) {
13555
13551
  var time = new Date(val || null).getTime();
13556
13552
  return isNaN(time) ? 0 : time;
@@ -13623,11 +13619,15 @@ function getGridTreeCellRenderer() {
13623
13619
  var displayName = data[colDef['field']];
13624
13620
  var entityClassName = 'entity-display-name';
13625
13621
  var svgRegistry = colDef.gridService.svgRegistry;
13622
+ if (isFolder) {
13623
+ setEmptyFolderClass(item.node);
13624
+ }
13626
13625
  if (icon) {
13627
13626
  return "<span class=\"dato-simple-bold\"> <span class=\"da-grid-icon folder d-flex\">" + svgRegistry.getSvg(icon) + "</span><span class=\"" + entityClassName + "\"></span> " + displayName + "</span>";
13628
13627
  }
13629
13628
  else {
13630
13629
  if (isFolder) {
13630
+ setEmptyFolderClass(item);
13631
13631
  return "<span class=\"" + entityClassName + " dato-simple-bold\">" + displayName + "</span>";
13632
13632
  }
13633
13633
  else {
@@ -13772,9 +13772,6 @@ function onRowDragEnd(_a) {
13772
13772
  var hoveredParentElement = getCellByRowID(potentialParent.id);
13773
13773
  hoveredParentElement && hoveredParentElement.classList.remove(agRowHoverClassName);
13774
13774
  potentialParent = null;
13775
- /** Redraw the folders that has been dragged from and to,
13776
- * to apply their classed through classRules config */
13777
- this.api.redrawRows({ rowNodes: [nodeParent, folderToDropInto] });
13778
13775
  this.api.clearFocusedCell();
13779
13776
  }
13780
13777
  }
@@ -13801,9 +13798,24 @@ function setRowClasses(rows) {
13801
13798
  finally { if (e_1) throw e_1.error; }
13802
13799
  }
13803
13800
  node.classList.add("" + agRowLevelPrefix + row.level);
13801
+ if (row.data.isFolder) {
13802
+ setEmptyFolderClass(row, node);
13803
+ }
13804
13804
  }
13805
13805
  });
13806
13806
  }
13807
+ function setEmptyFolderClass(row, node) {
13808
+ var currentNode = node || document.querySelectorAll("[row-id=\"" + row.id + "\"]")[0];
13809
+ if (!currentNode) {
13810
+ return;
13811
+ }
13812
+ if (size(row.childrenAfterGroup) === 0) {
13813
+ currentNode.classList.add(emptyFolderClassName);
13814
+ }
13815
+ else {
13816
+ currentNode.classList.remove(emptyFolderClassName);
13817
+ }
13818
+ }
13807
13819
  function onRowSelected(params) {
13808
13820
  if (updatingCheckboxesProgrammatically) {
13809
13821
  return;
@@ -13993,9 +14005,8 @@ var DatoGridMultiSelectColumnHeaderComponent = /** @class */ (function () {
13993
14005
  DatoGridMultiSelectColumnHeaderComponent = __decorate([
13994
14006
  Component({
13995
14007
  selector: 'dato-grid-multi-select-column-header',
13996
- template: "<dato-checkbox [formControl]=\"checkboxControl\" [indeterminatelyChecked]=\"indeterminatelyChecked\"></dato-checkbox>",
13997
- changeDetection: ChangeDetectionStrategy.OnPush,
13998
- styles: [":host{height:100%;display:flex;align-items:center}"]
14008
+ template: "<dato-checkbox class=\"mt-5\" [formControl]=\"checkboxControl\" [indeterminatelyChecked]=\"indeterminatelyChecked\"></dato-checkbox>",
14009
+ changeDetection: ChangeDetectionStrategy.OnPush
13999
14010
  }),
14000
14011
  __metadata("design:paramtypes", [GridService, GridQuery, ChangeDetectorRef])
14001
14012
  ], DatoGridMultiSelectColumnHeaderComponent);
@@ -14013,6 +14024,7 @@ var GridService = /** @class */ (function () {
14013
14024
  this.logger = logger;
14014
14025
  this.treeConfig = defaultGridTreeLabel;
14015
14026
  this.pageNumberToReturnAfterRefresh = -1;
14027
+ this.updateGridActionsSubject = new Subject();
14016
14028
  this.CHECKBOX_SELECTION_COL_ID = 'grid-checkbox-selection';
14017
14029
  }
14018
14030
  Object.defineProperty(GridService.prototype, "treeData", {
@@ -14045,6 +14057,12 @@ var GridService = /** @class */ (function () {
14045
14057
  ? context
14046
14058
  : deepmerge(this.gridRef.gridOptions.context || {}, context);
14047
14059
  };
14060
+ GridService.prototype.updateGridActions = function () {
14061
+ this.updateGridActionsSubject.next(true);
14062
+ };
14063
+ GridService.prototype.getUpdateGridActionsStatus = function () {
14064
+ return this.updateGridActionsSubject.asObservable();
14065
+ };
14048
14066
  /**
14049
14067
  * @deprecated use selectRows instead
14050
14068
  * @param row
@@ -14201,15 +14219,8 @@ var GridService = /** @class */ (function () {
14201
14219
  params.gridOptions.saveSettings = saveSettings !== false && !isNil(gridName);
14202
14220
  /** Server Side Pagination for select all option */
14203
14221
  this.initOnRowSelectedForServerSidePagination(params);
14204
- /** Add tree grid specific required settings */
14205
- if (this.isTreeData) {
14206
- var inputRowClassRules = params.gridOptions.rowClassRules;
14207
- params.gridOptions.rowClassRules = __assign(__assign({}, inputRowClassRules), { 'ag-empty-folder': function (params) {
14208
- return params.data.isFolder && size(params.node.childrenAfterGroup) === 0;
14209
- } });
14210
- }
14211
14222
  /** Add pivot specific required settings */
14212
- if (this.isPivotMode) {
14223
+ if (params.gridOptions.pivotMode) {
14213
14224
  this.initPivotSecondaryColsProcess(params);
14214
14225
  params.gridOptions.saveSettings = false;
14215
14226
  }
@@ -14309,9 +14320,8 @@ var GridService = /** @class */ (function () {
14309
14320
  colId: this.CHECKBOX_SELECTION_COL_ID,
14310
14321
  checkboxSelection: true,
14311
14322
  headerComponentFramework: DatoGridMultiSelectColumnHeaderComponent,
14312
- minWidth: 29,
14313
- width: 29,
14314
- maxWidth: 29,
14323
+ width: 30,
14324
+ maxWidth: 30,
14315
14325
  suppressSizeToFit: true,
14316
14326
  cellClass: 'checkbox-selection-cell',
14317
14327
  headerClass: 'header-checkbox-selection-cell',
@@ -14548,7 +14558,8 @@ var GridService = /** @class */ (function () {
14548
14558
  this.updateSettings({ gridAlignment: gridAlignment, columnsSizes: null });
14549
14559
  };
14550
14560
  GridService.prototype.saveSettingsToServer = function (settings) {
14551
- this.storageAPI.set(this.gridName, settings);
14561
+ var isGlobal = this.gridQuery.getGridOptions().isGlobalSettings;
14562
+ this.storageAPI.set(this.gridName, settings, isGlobal);
14552
14563
  };
14553
14564
  /**
14554
14565
  * @internal used to log grid events to the platform's logging service
@@ -14661,7 +14672,7 @@ var GridService = /** @class */ (function () {
14661
14672
  var _b = __read(_a, 1), row = _b[0];
14662
14673
  var rawValue = _this.api.grid.getValue(column.getColId(), row);
14663
14674
  var formatter = column.getColDef().valueFormatter;
14664
- var value = formatter && typeof formatter !== 'string' ? formatter(rawValue) : rawValue;
14675
+ var value = formatter ? formatter(rawValue) : rawValue;
14665
14676
  copyToClipboard(value);
14666
14677
  };
14667
14678
  if (node.isSelected()) {
@@ -15573,12 +15584,9 @@ var DatoGridControllerComponent = /** @class */ (function () {
15573
15584
  this.rowHoverComponent && this.rowHoverComponent.destroy();
15574
15585
  this.rowHoverComponent = null;
15575
15586
  };
15576
- DatoGridControllerComponent.prototype.initializeGrid = function (agGrid, agGridEl) {
15577
- if (!this.contentInit.isStopped) {
15578
- this._initializeGrid(agGrid, agGridEl);
15579
- this.contentInit.next();
15580
- this.contentInit.complete();
15581
- }
15587
+ DatoGridControllerComponent.prototype.ngAfterContentInit = function () {
15588
+ this.contentInit.next();
15589
+ this.contentInit.complete();
15582
15590
  };
15583
15591
  /* @internal */
15584
15592
  DatoGridControllerComponent.prototype._initializeGrid = function (agGrid, agGridEl) {
@@ -15589,7 +15597,10 @@ var DatoGridControllerComponent = /** @class */ (function () {
15589
15597
  .pipe(switchMap(function () {
15590
15598
  _this.gridOptions = _this.normalizeOptions();
15591
15599
  agGrid.gridOptions = _this.gridOptions;
15592
- var settingsLoader = _this.gridOptions.saveSettings === false ? of(null) : _this.storageAPI.get(_this.gridOptions.gridName);
15600
+ var isGlobal = _this.gridOptions.isGlobalSettings;
15601
+ var settingsLoader = _this.gridOptions.saveSettings === false
15602
+ ? of(null)
15603
+ : _this.storageAPI.get(_this.gridOptions.gridName, isGlobal);
15593
15604
  return combineLatest([agGrid.gridReady, settingsLoader]);
15594
15605
  }), untilDestroyed(this))
15595
15606
  .subscribe(function (_a) {
@@ -16040,10 +16051,8 @@ var DatoGridV2Component = /** @class */ (function () {
16040
16051
  }
16041
16052
  Object.defineProperty(DatoGridV2Component.prototype, "grid", {
16042
16053
  set: function (agGrid) {
16043
- if (agGrid) {
16044
- var agGridEl = query('ag-grid-angular', this.host.nativeElement);
16045
- this.controller.initializeGrid(agGrid, agGridEl);
16046
- }
16054
+ var agGridEl = query('ag-grid-angular', this.host.nativeElement);
16055
+ this.controller._initializeGrid(agGrid, agGridEl);
16047
16056
  },
16048
16057
  enumerable: true,
16049
16058
  configurable: true
@@ -16081,9 +16090,9 @@ var DatoGridV2Component = /** @class */ (function () {
16081
16090
  { type: ElementRef }
16082
16091
  ]; };
16083
16092
  __decorate([
16084
- ViewChild(AgGridAngular, { static: false }),
16085
- __metadata("design:type", AgGridAngular),
16086
- __metadata("design:paramtypes", [AgGridAngular])
16093
+ ViewChild(AgGridNg2, { static: true }),
16094
+ __metadata("design:type", AgGridNg2),
16095
+ __metadata("design:paramtypes", [AgGridNg2])
16087
16096
  ], DatoGridV2Component.prototype, "grid", null);
16088
16097
  DatoGridV2Component = __decorate([
16089
16098
  Component({
@@ -16091,7 +16100,7 @@ var DatoGridV2Component = /** @class */ (function () {
16091
16100
  template: "<ag-grid-angular data-auto-id=\"grid\" class=\"dato-grid ag-theme-material\" [class.has-background]=\"enableBackground\" [class.enable-v2_1]=\"enableV2_1\"\n [class.with-multi-selection-col]=\"gridOptions?.showMultiSelectionCheckboxes\" [class.pivot-style]=\"isPivotStyle\">\n</ag-grid-angular>\n<dato-grid-pagination-v2 [class.has-background]=\"enableBackground\"></dato-grid-pagination-v2>\n",
16092
16101
  changeDetection: ChangeDetectionStrategy.OnPush,
16093
16102
  encapsulation: ViewEncapsulation.None,
16094
- styles: ["dato-grid-v2{flex-grow:1;display:flex;flex-direction:column;position:relative}dato-grid-v2 .dato-grid,dato-grid-v2 dato-grid-pagination-v2{position:absolute;left:0;right:0;bottom:0}dato-grid-v2 .dato-grid{top:0;bottom:50px}dato-grid-v2 .grid-hover-actions{position:absolute;z-index:2;transition:opacity .2s ease-in-out}dato-grid-v2 .ag-row-drag{width:initial!important;min-width:auto!important}dato-grid-v2 .da-grid-icon{display:inline-block;line-height:31px;vertical-align:middle;width:initial;height:initial}dato-grid-v2 .da-grid-icon.drag{width:14px;height:14px;margin-right:6px;opacity:0;transition:opacity .3s;transform:translateY(-50%)}dato-grid-v2 .da-grid-icon.folder{width:18px;height:35px;margin:0 8px}dato-grid-v2 .ag-row.ag-row-hover .da-grid-icon.drag{opacity:1}dato-grid-v2 ag-grid-angular.tree .ag-group-contracted,dato-grid-v2 ag-grid-angular.tree .ag-group-expanded{display:inline-block;width:18px;text-align:center}dato-grid-v2 ag-grid-angular.tree .ag-group-checkbox{display:none}dato-grid-v2 ag-grid-angular.tree .ag-row.ag-empty-folder .folder{margin-left:26px}dato-grid-v2 ag-grid-angular.tree .ag-row.ag-row-level-1 .ag-cell-wrapper .ag-row-drag{padding-right:calc(55px * 1)}dato-grid-v2 ag-grid-angular.tree .ag-row .ag-row-group-indent-1{margin-left:0!important;padding-left:0!important}dato-grid-v2 ag-grid-angular.tree .ag-row.ag-row-level-2 .ag-cell-wrapper .ag-row-drag{padding-right:calc(55px * 2)}dato-grid-v2 ag-grid-angular.tree .ag-row .ag-row-group-indent-2{margin-left:0!important;padding-left:0!important}dato-grid-v2 ag-grid-angular.tree .ag-row.ag-row-level-3 .ag-cell-wrapper .ag-row-drag{padding-right:calc(55px * 3)}dato-grid-v2 ag-grid-angular.tree .ag-row .ag-row-group-indent-3{margin-left:0!important;padding-left:0!important}dato-grid-v2 ag-grid-angular.tree .ag-row.ag-row-level-4 .ag-cell-wrapper .ag-row-drag{padding-right:calc(55px * 4)}dato-grid-v2 ag-grid-angular.tree .ag-row .ag-row-group-indent-4{margin-left:0!important;padding-left:0!important}dato-grid-v2 ag-grid-angular.tree .ag-row div[col-id=ag-Grid-AutoColumn]{padding-left:0}dato-grid-v2 ag-grid-angular.tree .ag-row .ag-cell{display:flex;align-items:center}dato-grid-v2 ag-grid-angular.tree .ag-row .ag-cell .ag-group-value>span{display:inline-block;vertical-align:middle}dato-grid-v2 ag-grid-angular.tree .ag-row .ag-cell .initials{border-radius:50%;padding:4px;margin-right:8px;margin-left:20px;width:28px;height:28px;display:inline-block;text-align:center}dato-grid-v2 ag-grid-angular.tree .ag-row-group-leaf-indent{margin-left:0!important}dato-grid-v2 ag-grid-angular.tree .ag-selection-checkbox .ag-icon-checkbox-indeterminate:before{text-align:center;content:'-';display:inline-block;position:absolute;top:0;left:0;right:0;bottom:0;line-height:.5;color:#fff}dato-grid-v2 ag-grid-angular.row-height-35 .ag-cell{line-height:33px}dato-grid-v2 ag-grid-angular.row-height-35 .ag-cell.dato-editable-cell{line-height:29px}dato-grid-v2 ag-grid-angular.row-height-35 .ag-cell.ag-cell-inline-editing{height:35px}dato-grid-v2 ag-grid-angular.row-height-44 .ag-cell{line-height:42px}dato-grid-v2 ag-grid-angular.row-height-44 .ag-cell.dato-editable-cell{line-height:38px}dato-grid-v2 ag-grid-angular.row-height-44 .ag-cell.ag-cell-inline-editing{height:44px}dato-grid-v2 ag-grid-angular.row-height-50 .ag-cell{line-height:48px}dato-grid-v2 ag-grid-angular.row-height-50 .ag-cell.dato-editable-cell{line-height:44px}dato-grid-v2 ag-grid-angular.row-height-50 .ag-cell.ag-cell-inline-editing{height:50px}dato-grid-v2 ag-grid-angular.row-height-59 .ag-cell{line-height:57px}dato-grid-v2 ag-grid-angular.row-height-59 .ag-cell.dato-editable-cell{line-height:53px}dato-grid-v2 ag-grid-angular.row-height-59 .ag-cell.ag-cell-inline-editing{height:59px}dato-grid-v2 ag-grid-angular .ag-cell.checkbox-selection-cell{display:flex;padding-right:0}dato-grid-v2 .ag-menu .da-grid-icon svg{vertical-align:middle}dato-grid-v2 .ag-header-cell-sortable .ag-sort-none-icon{opacity:0;transition:opacity .2s}dato-grid-v2 .ag-header-cell-sortable:hover .ag-sort-none-icon{opacity:1}dato-grid-v2 .group-contracted-icon,dato-grid-v2 .group-expanded-icon{width:7px}dato-grid-v2 .group-expanded-icon{transform:rotate(90deg)}dato-grid-v2 .dato-grid .ag-cell{border-top:0;border-bottom:0}dato-grid-v2 .ag-overlay-wrapper ng-component{display:flex}.ag-dnd-ghost{min-width:100px;border:none;display:flex;justify-content:flex-start;align-content:center;align-items:center;cursor:-webkit-grabbing;cursor:grabbing;z-index:10000000}.ag-dnd-ghost .da-grid-icon.column-move-hide svg{height:18px;width:18px}.ag-dnd-ghost .da-grid-icon.column-move svg,.ag-dnd-ghost .da-grid-icon.column-move-pin svg{height:16px;width:16px}"]
16103
+ styles: ["dato-grid-v2{flex-grow:1;display:flex;flex-direction:column;position:relative}dato-grid-v2 .dato-grid,dato-grid-v2 dato-grid-pagination-v2{position:absolute;left:0;right:0;bottom:0}dato-grid-v2 .dato-grid{top:0;bottom:50px}dato-grid-v2 .grid-hover-actions{position:absolute;z-index:2;transition:opacity .2s ease-in-out}dato-grid-v2 .ag-row-drag{width:initial!important}dato-grid-v2 .da-grid-icon{display:inline-block;line-height:31px;vertical-align:middle;width:initial;height:initial}dato-grid-v2 .da-grid-icon.drag{width:14px;height:14px;margin-right:6px;opacity:0;transition:opacity .3s;transform:translateY(-50%)}dato-grid-v2 .da-grid-icon.folder{width:18px;height:35px;margin:0 8px}dato-grid-v2 .ag-row.ag-row-hover .da-grid-icon.drag{opacity:1}dato-grid-v2 ag-grid-angular.tree .ag-group-contracted,dato-grid-v2 ag-grid-angular.tree .ag-group-expanded{display:inline-block;width:18px;text-align:center}dato-grid-v2 ag-grid-angular.tree .ag-group-checkbox{display:none}dato-grid-v2 ag-grid-angular.tree .ag-row.ag-empty-folder .folder{margin-left:26px}dato-grid-v2 ag-grid-angular.tree .ag-row.ag-row-level-1 .ag-cell-wrapper .ag-row-drag{padding-right:calc(55px * 1)}dato-grid-v2 ag-grid-angular.tree .ag-row .ag-row-group-indent-1{margin-left:0!important;padding-left:0!important}dato-grid-v2 ag-grid-angular.tree .ag-row.ag-row-level-2 .ag-cell-wrapper .ag-row-drag{padding-right:calc(55px * 2)}dato-grid-v2 ag-grid-angular.tree .ag-row .ag-row-group-indent-2{margin-left:0!important;padding-left:0!important}dato-grid-v2 ag-grid-angular.tree .ag-row.ag-row-level-3 .ag-cell-wrapper .ag-row-drag{padding-right:calc(55px * 3)}dato-grid-v2 ag-grid-angular.tree .ag-row .ag-row-group-indent-3{margin-left:0!important;padding-left:0!important}dato-grid-v2 ag-grid-angular.tree .ag-row.ag-row-level-4 .ag-cell-wrapper .ag-row-drag{padding-right:calc(55px * 4)}dato-grid-v2 ag-grid-angular.tree .ag-row .ag-row-group-indent-4{margin-left:0!important;padding-left:0!important}dato-grid-v2 ag-grid-angular.tree .ag-row div[col-id=ag-Grid-AutoColumn]{padding-left:0}dato-grid-v2 ag-grid-angular.tree .ag-row .ag-cell{display:flex;align-items:center}dato-grid-v2 ag-grid-angular.tree .ag-row .ag-cell .ag-group-value>span{display:inline-block;vertical-align:middle}dato-grid-v2 ag-grid-angular.tree .ag-row .ag-cell .initials{border-radius:50%;padding:4px;margin-right:8px;margin-left:20px;width:28px;height:28px;display:inline-block;text-align:center}dato-grid-v2 ag-grid-angular.tree .ag-row-group-leaf-indent{margin-left:0!important}dato-grid-v2 ag-grid-angular.tree .ag-selection-checkbox .ag-icon-checkbox-indeterminate:before{text-align:center;content:'-';display:inline-block;position:absolute;top:0;left:0;right:0;bottom:0;line-height:.5;color:#fff}dato-grid-v2 ag-grid-angular.row-height-35 .ag-cell{line-height:33px}dato-grid-v2 ag-grid-angular.row-height-35 .ag-cell.dato-editable-cell{line-height:29px}dato-grid-v2 ag-grid-angular.row-height-35 .ag-cell.ag-cell-inline-editing{height:35px}dato-grid-v2 ag-grid-angular.row-height-44 .ag-cell{line-height:42px}dato-grid-v2 ag-grid-angular.row-height-44 .ag-cell.dato-editable-cell{line-height:38px}dato-grid-v2 ag-grid-angular.row-height-44 .ag-cell.ag-cell-inline-editing{height:44px}dato-grid-v2 ag-grid-angular.row-height-50 .ag-cell{line-height:48px}dato-grid-v2 ag-grid-angular.row-height-50 .ag-cell.dato-editable-cell{line-height:44px}dato-grid-v2 ag-grid-angular.row-height-50 .ag-cell.ag-cell-inline-editing{height:50px}dato-grid-v2 ag-grid-angular.row-height-59 .ag-cell{line-height:57px}dato-grid-v2 ag-grid-angular.row-height-59 .ag-cell.dato-editable-cell{line-height:53px}dato-grid-v2 ag-grid-angular.row-height-59 .ag-cell.ag-cell-inline-editing{height:59px}dato-grid-v2 ag-grid-angular .ag-cell.checkbox-selection-cell{display:flex}dato-grid-v2 .ag-menu .da-grid-icon svg{vertical-align:middle}dato-grid-v2 .ag-header-cell-sortable .ag-sort-none-icon{opacity:0;transition:opacity .2s}dato-grid-v2 .ag-header-cell-sortable:hover .ag-sort-none-icon{opacity:1}dato-grid-v2 .group-contracted-icon,dato-grid-v2 .group-expanded-icon{width:7px}dato-grid-v2 .group-expanded-icon{transform:rotate(90deg)}dato-grid-v2 .dato-grid .ag-cell{border-top:0;border-bottom:0}dato-grid-v2 .ag-overlay-wrapper ng-component{display:flex}.ag-dnd-ghost{min-width:100px;border:none;display:flex;justify-content:flex-start;align-content:center;align-items:center;cursor:-webkit-grabbing;cursor:grabbing;z-index:10000000}.ag-dnd-ghost .da-grid-icon.column-move-hide svg{height:18px;width:18px}.ag-dnd-ghost .da-grid-icon.column-move svg,.ag-dnd-ghost .da-grid-icon.column-move-pin svg{height:16px;width:16px}"]
16095
16104
  }),
16096
16105
  __metadata("design:paramtypes", [DatoGridControllerComponent, ElementRef])
16097
16106
  ], DatoGridV2Component);
@@ -16462,7 +16471,7 @@ var DatoGridPaginationV2Component = /** @class */ (function () {
16462
16471
  */
16463
16472
  DatoGridPaginationV2Component.prototype.calculateRowsCount = function (totalRows) {
16464
16473
  this.totalPages = totalRows ? Math.ceil(totalRows / this.rowsPerPage) : this.gridApi.paginationGetTotalPages();
16465
- this.rowCount = this.gridApi.getDisplayedRowCount();
16474
+ this.rowCount = this.gridApi.paginationGetRowCount();
16466
16475
  this.setRowsDisplayRange(this.pageNumbersDisplay.currentPage);
16467
16476
  this.cdr.detectChanges();
16468
16477
  };
@@ -16886,6 +16895,19 @@ var DatoGridV2ToolbarComponent = /** @class */ (function () {
16886
16895
  });
16887
16896
  this.registerGroupListeners();
16888
16897
  this.subscribeRowsSelectionData();
16898
+ this.subscribeUpdateGridActions();
16899
+ };
16900
+ DatoGridV2ToolbarComponent.prototype.getCellValueChangeEvent = function () {
16901
+ var _this = this;
16902
+ return this.gridController.gridQuery.waitForGrid(function () {
16903
+ return _this.gridQuery.gridRef.cellValueChanged.pipe(debounceTime(100), untilDestroyed(_this));
16904
+ });
16905
+ };
16906
+ DatoGridV2ToolbarComponent.prototype.getRowDataUpdatedEvent = function () {
16907
+ var _this = this;
16908
+ return this.gridController.gridQuery.waitForGrid(function () {
16909
+ return _this.gridQuery.gridRef.rowDataUpdated.pipe(debounceTime(100), untilDestroyed(_this));
16910
+ });
16889
16911
  };
16890
16912
  DatoGridV2ToolbarComponent.prototype.onActionClick = function (action) {
16891
16913
  if (isFunction(action.onClick)) {
@@ -17141,6 +17163,12 @@ var DatoGridV2ToolbarComponent = /** @class */ (function () {
17141
17163
  _this.cdr.detectChanges();
17142
17164
  });
17143
17165
  };
17166
+ DatoGridV2ToolbarComponent.prototype.subscribeUpdateGridActions = function () {
17167
+ var _this = this;
17168
+ this.gridService.getUpdateGridActionsStatus().subscribe(function () {
17169
+ _this.initGridActions();
17170
+ });
17171
+ };
17144
17172
  DatoGridV2ToolbarComponent.prototype.selectAllPages = function () {
17145
17173
  if (this.gridQuery.isServerSide) {
17146
17174
  this.gridService.setServerSidePagination({ selectAllRowsEnabled: true, excludedFromSelectAll: [] });
@@ -21374,6 +21402,40 @@ var DatoEditableHeaderModule = /** @class */ (function () {
21374
21402
  * found in the LICENSE file at https://github.com/datorama/client-core/blob/master/LICENSE
21375
21403
  */
21376
21404
 
21405
+ var RichTextService = /** @class */ (function () {
21406
+ function RichTextService(http, config) {
21407
+ this.http = http;
21408
+ this.config = config;
21409
+ }
21410
+ RichTextService.prototype.getLib = function (appendScriptFunc, appendStyleFunc) {
21411
+ if (!this.richTextScript$) {
21412
+ this.initLib(appendScriptFunc, appendStyleFunc);
21413
+ }
21414
+ return this.richTextScript$;
21415
+ };
21416
+ RichTextService.prototype.initLib = function (appendScriptFunc, appendStyleFunc) {
21417
+ this.richTextScript$ = combineLatest([
21418
+ this.http
21419
+ .get(this.config.paths.richText + "/index.js", { responseType: 'text' })
21420
+ .pipe(tap(function (lib) { return appendScriptFunc(lib, 'rich-text-editor'); })),
21421
+ this.http
21422
+ .get(this.config.paths.richText + "/plugins/autocomplete/plugin.css", { responseType: 'text' })
21423
+ .pipe(tap(function (style) { return appendStyleFunc(style, 'tinymce-autocomplete'); }))
21424
+ ]).pipe(shareReplay(1));
21425
+ };
21426
+ RichTextService.ctorParameters = function () { return [
21427
+ { type: HttpClient },
21428
+ { type: undefined, decorators: [{ type: Inject, args: [DATO_CORE_CONFIG,] }] }
21429
+ ]; };
21430
+ RichTextService.ɵprov = ɵɵdefineInjectable({ factory: function RichTextService_Factory() { return new RichTextService(ɵɵinject(HttpClient), ɵɵinject(DATO_CORE_CONFIG)); }, token: RichTextService, providedIn: "root" });
21431
+ RichTextService = __decorate([
21432
+ Injectable({ providedIn: 'root' }),
21433
+ __param(1, Inject(DATO_CORE_CONFIG)),
21434
+ __metadata("design:paramtypes", [HttpClient, Object])
21435
+ ], RichTextService);
21436
+ return RichTextService;
21437
+ }());
21438
+
21377
21439
  /**
21378
21440
  * @license
21379
21441
  * Copyright Datorama. All Rights Reserved.
@@ -21387,20 +21449,20 @@ var getTinymce = function () {
21387
21449
  var ɵ0$3 = getTinymce;
21388
21450
  var DatoRichTextDirective = /** @class */ (function (_super) {
21389
21451
  __extends(DatoRichTextDirective, _super);
21390
- function DatoRichTextDirective(ngZone, http, host, config) {
21452
+ function DatoRichTextDirective(ngZone, richTextService, config, host) {
21391
21453
  var _this = _super.call(this) || this;
21392
21454
  _this.ngZone = ngZone;
21393
- _this.http = http;
21394
- _this.host = host;
21455
+ _this.richTextService = richTextService;
21395
21456
  _this.config = config;
21457
+ _this.host = host;
21396
21458
  _this.autocompleteOptions = {};
21397
21459
  _this.forcePlainTextPasting = false;
21398
21460
  _this.format = 'html';
21399
21461
  _this.isOneLine = false;
21400
21462
  _this.initialValue = '';
21401
- _this.defaultPlugins = 'link fullscreen textcolor colorpicker image lists table textpattern autocomplete';
21463
+ _this.defaultPlugins = 'link fullscreen image lists table autocomplete';
21402
21464
  _this.defaultToolbar = [
21403
- 'fontselect fontsizeselect forecolor backcolor bold italic underline link',
21465
+ 'fontfamily fontsize forecolor backcolor bold italic underline link',
21404
21466
  'alignleft aligncenter alignright alignjustify outdent indent | table numlist bullist | image fullscreen'
21405
21467
  ];
21406
21468
  return _this;
@@ -21426,28 +21488,11 @@ var DatoRichTextDirective = /** @class */ (function (_super) {
21426
21488
  base: this.config.paths.richText,
21427
21489
  query: ''
21428
21490
  };
21429
- /**
21430
- * We support only one instance in load time
21431
- */
21432
- if (window.tinymce) {
21433
- this.init.call(this);
21434
- }
21435
- else {
21436
- this.loadLib().subscribe(function (lib) {
21437
- appendScript(lib, 'rich-text-editor');
21438
- _this.init.call(_this);
21439
- _this.loadAutoCompleteStyle();
21440
- });
21441
- }
21442
- };
21443
- DatoRichTextDirective.prototype.loadLib = function () {
21444
- return this.http.get(this.config.paths.richText + "/index.js", { responseType: 'text' });
21445
- };
21446
- DatoRichTextDirective.prototype.loadAutoCompleteStyle = function () {
21447
- this.http
21448
- .get(this.config.paths.richText + "/plugins/autocomplete/plugin.css", { responseType: 'text' })
21449
- .subscribe(function (style) {
21450
- appendStyle(style, 'tinymce-autocomplete');
21491
+ this.richTextService
21492
+ .getLib(appendScript, appendStyle)
21493
+ .pipe(untilDestroyed(this))
21494
+ .subscribe(function () {
21495
+ _this.init.call(_this);
21451
21496
  });
21452
21497
  };
21453
21498
  DatoRichTextDirective.prototype.initEditor = function (_, editor) {
@@ -21471,8 +21516,6 @@ var DatoRichTextDirective = /** @class */ (function (_super) {
21471
21516
  target: this.host.nativeElement,
21472
21517
  width: this.width || 600,
21473
21518
  height: this.height || 300,
21474
- force_br_newlines: true,
21475
- force_p_newlines: false,
21476
21519
  resize: 'both',
21477
21520
  branding: false,
21478
21521
  inline: this.inline,
@@ -21480,10 +21523,12 @@ var DatoRichTextDirective = /** @class */ (function (_super) {
21480
21523
  readonly: this.disabled,
21481
21524
  plugins: this.plugins || this.defaultPlugins,
21482
21525
  toolbar: isNil(this.toolbar) ? this.defaultToolbar : this.toolbar,
21483
- fontsize_formats: '8px 10px 12px 14px 18px 24px 36px',
21526
+ font_size_formats: '8px 10px 12px 14px 18px 24px 36px',
21484
21527
  min_width: 480,
21485
21528
  menubar: false,
21486
21529
  autocomplete: this.autocompleteOptions,
21530
+ suffix: '.min',
21531
+ skin: 'tinymce-5',
21487
21532
  setup: function (editor) {
21488
21533
  _this.editor = editor;
21489
21534
  editor.on('init', function (e) {
@@ -21540,9 +21585,9 @@ var DatoRichTextDirective = /** @class */ (function (_super) {
21540
21585
  var DatoRichTextDirective_1;
21541
21586
  DatoRichTextDirective.ctorParameters = function () { return [
21542
21587
  { type: NgZone },
21543
- { type: HttpClient },
21544
- { type: ElementRef },
21545
- { type: undefined, decorators: [{ type: Inject, args: [DATO_CORE_CONFIG,] }] }
21588
+ { type: RichTextService },
21589
+ { type: undefined, decorators: [{ type: Inject, args: [DATO_CORE_CONFIG,] }] },
21590
+ { type: ElementRef }
21546
21591
  ]; };
21547
21592
  __decorate([
21548
21593
  Input(),
@@ -21608,10 +21653,9 @@ var DatoRichTextDirective = /** @class */ (function (_super) {
21608
21653
  }
21609
21654
  ]
21610
21655
  }),
21611
- __param(3, Inject(DATO_CORE_CONFIG)),
21656
+ __param(2, Inject(DATO_CORE_CONFIG)),
21612
21657
  __metadata("design:paramtypes", [NgZone,
21613
- HttpClient,
21614
- ElementRef, Object])
21658
+ RichTextService, Object, ElementRef])
21615
21659
  ], DatoRichTextDirective);
21616
21660
  return DatoRichTextDirective;
21617
21661
  }(BaseCustomControl));
@@ -24134,7 +24178,9 @@ var DatoBreadcrumbsComponent = /** @class */ (function () {
24134
24178
  };
24135
24179
  DatoBreadcrumbsComponent.prototype.initEditableHeader = function () {
24136
24180
  var _this = this;
24137
- this.headerControl.valueChanges.pipe(debounceTime(300), untilDestroyed(this)).subscribe(function (res) {
24181
+ this.headerControl.valueChanges
24182
+ .pipe(debounceTime(300), untilDestroyed(this))
24183
+ .subscribe(function (res) {
24138
24184
  _this.updateEditableText.emit(res);
24139
24185
  _this.cdr.detectChanges();
24140
24186
  });
@@ -25497,7 +25543,7 @@ function fixNgLeaks() {
25497
25543
  };
25498
25544
  }
25499
25545
 
25500
- window.coreVersion = '22.13.0';
25546
+ window.coreVersion = '22.13.7-rc.';
25501
25547
 
25502
25548
  /**
25503
25549
  * @license
@@ -25511,5 +25557,5 @@ window.coreVersion = '22.13.0';
25511
25557
  * Generated bundle index. Do not edit.
25512
25558
  */
25513
25559
 
25514
- export { APP_TRANSLATE, AceService, BaseCustomControl, COMPARE_RESULT, CUSTOM_RANGE_ID, ColorPalette, ConfirmationType, ContentRef, ContentType, CustomHeaderControllerService, DATE_PICKER_CONFIG, DATE_PICKER_POPOVER_ID, DATO_CORE_LOGGER, DATO_FORM_ERRORS, DATO_GRID_STORAGE_API, DEFAULT_FORMAT, DEFAULT_GRID_SEARCH_DEBOUNCE_TIME, DatePickerConfig, DatePickerMonthComponent, DateType, DatoAccordionComponent, DatoAccordionContentComponent, DatoAccordionGroupComponent, DatoAccordionHeaderComponent, DatoAccordionModule, DatoAceDirective, DatoAceDraggableDirective, DatoAceModule, DatoActionType, DatoAutoCompleteContentDirective, DatoAutoFocusDirective, DatoAutocompleteComponent, DatoAutocompleteDirective, DatoAutocompleteModule, DatoBreadcrumbsComponent, DatoBreadcrumbsModule, DatoButtonComponent, DatoButtonGroupComponent, DatoButtonGroupModule, DatoButtonModule, DatoCamelCasePipe, DatoCarouselComponent, DatoCarouselItemDirective, DatoCarouselItemElement, DatoCarouselModule, DatoCheckboxComponent, DatoCheckboxModule, DatoClipboardDirective, DatoColorDirective, DatoConfirmationDialogComponent, DatoControlErrorComponent, DatoControlErrorContainerDirective, DatoControlErrorsDirective, DatoCoreError, DatoCoreModule, DatoCustomHeaderTemplateComponent, DatoCustomHeaderTemplateDirective, DatoCustomMoreMenuTemplateDirective, DatoDatePickerContainerComponent, DatoDatePickerModule, DatoDatePickerRangeComponent, DatoDatePickerSingleComponent, DatoDialog, DatoDialogCloseDirective, DatoDialogComponent, DatoDialogContentComponent, DatoDialogDismissDirective, DatoDialogFooterComponent, DatoDialogHeaderComponent, DatoDialogModule, DatoDialogRef, DatoDirectivesModule, DatoDisableControlDirective, DatoDraggableDirective, DatoDynamicContentComponent, DatoDynamicContentModule, DatoEditableHeaderComponent, DatoEditableHeaderModule, DatoFileInputComponent, DatoFileInputDefaultComponent, DatoFileInputModule, DatoFilterConditions, DatoFontDirective, DatoFontIconComponent, DatoFontIconModule, DatoFormSubmitDirective, DatoFormValidationModule, DatoGrid, DatoGridAPI, DatoGridAvatarCellComponent, DatoGridColumnDisplayMenuComponent, DatoGridColumnHeaderComponent, DatoGridColumnHeaderMoreMenuComponent, DatoGridColumnTypes, DatoGridComponent, DatoGridControllerComponent, DatoGridDateFilterOptions, DatoGridFilterComponent, DatoGridFilterOptionsMap, DatoGridFilterSections, DatoGridFilterTypes, DatoGridGroupsMenuComponent, DatoGridHeaderComponent, DatoGridHeaderV2Component, DatoGridInitialsCellComponent, DatoGridItemsCellComponent, DatoGridModule, DatoGridMoreMenuActions, DatoGridNumberFilterOptions, DatoGridOnHoverComponent, DatoGridPaginationComponent, DatoGridPaginationV2Component, DatoGridStatusCellComponent, DatoGridStringFilterOptions, DatoGridToolbarComponent, DatoGridToolbarItemDirective, DatoGridToolbarItemElementDirective, DatoGridV2Component, DatoGridV2LoaderComponent, DatoGridV2Module, DatoGridV2NoDataOverlayComponent, DatoGridV2ToolbarButtonComponent, DatoGridV2ToolbarComponent, DatoGroupComponent, DatoHighlightPipe, DatoHotkeys, DatoHotkeysDirective, DatoHotkeysHelpComponent, DatoHotkeysModule, DatoIconButtonComponent, DatoIconButtonModule, DatoIconComponent, DatoIconModule, DatoInfiniteScrollComponent, DatoInfiniteScrollModule, DatoInputComponent, DatoInputModule, DatoInputNumberComponent, DatoInputNumberDirective, DatoInputNumberModule, DatoKebabCasePipe, DatoLinkButtonComponent, DatoLinkButtonModule, DatoListComponent, DatoListModule, DatoListNoDataComponent, DatoListNoResultComponent, DatoListV2Component, DatoListV2Module, DatoLoaderComponent, DatoLoadersModule, DatoMenuComponent, DatoMenuContentDirective, DatoMenuItemDirective, DatoMenuModule, DatoMenuTriggerForDirective, DatoMultiOptionComponent, DatoMultiOptionV2Component, DatoOperatorTogglerComponent, DatoOperatorTogglerModule, DatoOptionComponent, DatoOptionV2Component, DatoOptionsModule, DatoOriginDirective, DatoOverlay, DatoPageLoaderComponent, DatoPanel, DatoPanelComponent, DatoPanelContentComponent, DatoPanelFooterComponent, DatoPanelHeaderComponent, DatoPanelInternalConfig, DatoPanelModule, DatoPanelRef, DatoPillsComponent, DatoPillsModule, DatoPipesModule, DatoPopover, DatoPopoverComponent, DatoPopoverModule, DatoProgressBarComponent, DatoProgressBarModule, DatoRadioComponent, DatoRadioModule, DatoRichTextDirective, DatoRichTextModule, DatoSearchResultsGroupSortPipe, DatoSearchResultsSortPipe, DatoSearchableContainerComponent, DatoSearchableDirective, DatoSearchableHighlightDirective, DatoSearchableModule, DatoSelectActiveDirective, DatoSelectComponent, DatoSelectEmptyComponent, DatoSelectModule, DatoShortNumberPipe, DatoSliderComponent, DatoSliderModule, DatoSnackbar, DatoSnackbarComponent, DatoSnackbarModule, DatoSortableComponent, DatoSortableHandleDirective, DatoSortableModule, DatoStaticImageSrcDirective, DatoStaticImagesSrcModule, DatoSubscribeContext, DatoSubscribeDirective, DatoTab, DatoTabContent, DatoTabTitle, DatoTabsModule, DatoTabset, DatoTemplatePortal, DatoTextModule, DatoThemesModule, DatoToast, DatoToastComponent, DatoToastModule, DatoTogglerComponent, DatoTogglerModule, DatoTooltipDirective, DatoTooltipV2Directive, DatoTrackByPropPipe, DatoTranslateService, DatoTreePipe, DatoTriggerMulti, DatoTriggerSingle, DialogConfig, DialogResultStatus, Dimensions, EventModifiersPlugin, GridActionType, GridMinWidths, GridRowSelectionType, GridStatusColumnTypes, GridToolbarService, ISO_FORMAT, IconRegistry, KeyCodes, KeyboardEventKeys, ListValueTypes, MockService, OperatorTypes, POPPER_BOUNDARY, PaletteDirective, PanelResultCloseTrigger, PillType, PopoverCloseDirective, PopoverContentDirective, PopoverRef, PopoverTrigger, ROOT_NODE_ID, RelativeDateType, RenderMethod, RowSelectionType, RowSelectionTypeV2, SELECT_MAX_HEIGHT, SUPPORTED_LOCALES, SelectType, SnackbarRef, SnackbarType, Store, SvgRegistry, ToolbarActionType, ToolbarArea, ToolbarConfirmation, ToolbarDeleteConfirmation, ToolbarHandler, TranslatePipe, Types, _valueChanges, a, addClass, addJSObjectCompletor, allowedFileTypes, alphabeticalGroupSort, alphabeticalSort, appendChild, appendScript, appendStyle, appendToBody, assertString, camelCase, capitalize, cloneDeep, closest, coerceArray, coerceElement, compareWith, compose, convertFromTreeData, convertToTreeData, copyToClipboard, createComponent, createElement, createGUID, createHTMLCompletor, curry, dateCompare, daysOfTheMonth, debounce, declarations$2 as declarations, deepEqual, deepmerge, defaultActions$1 as defaultActions, defaultConfig, defaultEditableColumnRenderer, defaultGridOptions, defaultGridTreeLabel, defaultOptionsDisplayLimit, defaultTreeOptions, dialogSizePreset, diff, difference, differenceBy, dimensionsChanges, directives, drop, editableCellRendererWithSearchHighlight, escape, escapeRegExp, filter, filterByControlValue, filterByTerm, filterDialogDismissed, filterDialogSuccess, filterGroupByControlValue, filterGroupByTerm, filterKey, find, findIndex, findKey, fixNgLeaks, forEach, formatKeys, generateMonths, get, getAttr, getCustomRange, getDateISOString, getDefaultConfirmationOptions, getDefaultOptions, getDefaultsToastOptions, getElementCoords, getFunctionName, getGridConfiguration, getGridModel, getInitials, getLocalizedFormat, getMultiTemplate, getOptionTemplate, getPopperDefaults, getUTCDate, getVisibleActions, gridTreeFilePathKey, groupBy, groupSortOrder, has, inView, intersection, invert, isArrayValuesEqual, isArrowUpDown, isBoolean, isEmpty, isEmptyString, isEnter, isEqual, isEscape, isFraction, isFunction, isMacintosh, isNil, isNumber, isObject, isRangeCondition, isRangeCustom, isString, isTestEnv, isValidMediaLink, kebabCase, keyBy, keysSymbols, last, map, mapKeys, mapValues, maxFileSize, merge, minBy, mockInDev, mocks, ngContentResolver, noop, normalizeData, omit, omitBy, optionalDebounce, pallete, parseDateString, partial, polling, prependChild, publicApi$1 as publicApi, query, queryAll, random, rawDiff, reject, relativeDateTypes, removeClass, resolveRange, round, searchHighlightCellRenderer, searchResultsGroupSort, searchResultsSort, setAttr, setAttribute, setDimensions, setGridConfiguration, setGridModel, setMaxDimensions, setMinDimensions, setStyle, setStyles, shortNumber, size, sortBy, stubs, supportedLocales, tapLog, tapOnce, throttle, toBoolean, toFormData, toNumber, toResponseBody, toString, toggleClass, toolbarActionToContextAction, tryParsePivotValue, unescape, union, uniq, uniqBy, uploadProgress, validBase64Image, validUrl, validateCondition, validateDate, validateDateCondition, validateFilter, validateNumberCondition, validateRange, validateStringCondition, values, workerMap, zoneStable, ɵ0$2 as ɵ0, ɵ1$2 as ɵ1, ɵ2, DATO_CORE_CONFIG as ɵb, DatoGridHelper as ɵc, Popper as ɵd, GridQuery as ɵe, GridStore as ɵf, GridService as ɵg, DatoDateRangesFilterPipe as ɵh, ListStore as ɵi, DatoListSelectAllComponent as ɵj, DatoGridMultiSelectColumnHeaderComponent as ɵk, DatoGridItemsCountCellComponent as ɵl, DatoGridV2ToolbarMoreMenuComponent as ɵm, DatoGridSearchBarComponent as ɵn };
25560
+ export { APP_TRANSLATE, AceService, BaseCustomControl, COMPARE_RESULT, CUSTOM_RANGE_ID, ColorPalette, ConfirmationType, ContentRef, ContentType, CustomHeaderControllerService, DATE_PICKER_CONFIG, DATE_PICKER_POPOVER_ID, DATO_CORE_LOGGER, DATO_FORM_ERRORS, DATO_GRID_STORAGE_API, DEFAULT_FORMAT, DEFAULT_GRID_SEARCH_DEBOUNCE_TIME, DatePickerConfig, DatePickerMonthComponent, DateType, DatoAccordionComponent, DatoAccordionContentComponent, DatoAccordionGroupComponent, DatoAccordionHeaderComponent, DatoAccordionModule, DatoAceDirective, DatoAceDraggableDirective, DatoAceModule, DatoActionType, DatoAutoCompleteContentDirective, DatoAutoFocusDirective, DatoAutocompleteComponent, DatoAutocompleteDirective, DatoAutocompleteModule, DatoBreadcrumbsComponent, DatoBreadcrumbsModule, DatoButtonComponent, DatoButtonGroupComponent, DatoButtonGroupModule, DatoButtonModule, DatoCamelCasePipe, DatoCarouselComponent, DatoCarouselItemDirective, DatoCarouselItemElement, DatoCarouselModule, DatoCheckboxComponent, DatoCheckboxModule, DatoClipboardDirective, DatoColorDirective, DatoConfirmationDialogComponent, DatoControlErrorComponent, DatoControlErrorContainerDirective, DatoControlErrorsDirective, DatoCoreError, DatoCoreModule, DatoCustomHeaderTemplateComponent, DatoCustomHeaderTemplateDirective, DatoCustomMoreMenuTemplateDirective, DatoDatePickerContainerComponent, DatoDatePickerModule, DatoDatePickerRangeComponent, DatoDatePickerSingleComponent, DatoDialog, DatoDialogCloseDirective, DatoDialogComponent, DatoDialogContentComponent, DatoDialogDismissDirective, DatoDialogFooterComponent, DatoDialogHeaderComponent, DatoDialogModule, DatoDialogRef, DatoDirectivesModule, DatoDisableControlDirective, DatoDraggableDirective, DatoDynamicContentComponent, DatoDynamicContentModule, DatoEditableHeaderComponent, DatoEditableHeaderModule, DatoFileInputComponent, DatoFileInputDefaultComponent, DatoFileInputModule, DatoFilterConditions, DatoFontDirective, DatoFontIconComponent, DatoFontIconModule, DatoFormSubmitDirective, DatoFormValidationModule, DatoGrid, DatoGridAPI, DatoGridAvatarCellComponent, DatoGridColumnDisplayMenuComponent, DatoGridColumnHeaderComponent, DatoGridColumnHeaderMoreMenuComponent, DatoGridColumnTypes, DatoGridComponent, DatoGridControllerComponent, DatoGridDateFilterOptions, DatoGridFilterComponent, DatoGridFilterOptionsMap, DatoGridFilterSections, DatoGridFilterTypes, DatoGridGroupsMenuComponent, DatoGridHeaderComponent, DatoGridHeaderV2Component, DatoGridInitialsCellComponent, DatoGridItemsCellComponent, DatoGridModule, DatoGridMoreMenuActions, DatoGridNumberFilterOptions, DatoGridOnHoverComponent, DatoGridPaginationComponent, DatoGridPaginationV2Component, DatoGridStatusCellComponent, DatoGridStringFilterOptions, DatoGridToolbarComponent, DatoGridToolbarItemDirective, DatoGridToolbarItemElementDirective, DatoGridV2Component, DatoGridV2LoaderComponent, DatoGridV2Module, DatoGridV2NoDataOverlayComponent, DatoGridV2ToolbarButtonComponent, DatoGridV2ToolbarComponent, DatoGroupComponent, DatoHighlightPipe, DatoHotkeys, DatoHotkeysDirective, DatoHotkeysHelpComponent, DatoHotkeysModule, DatoIconButtonComponent, DatoIconButtonModule, DatoIconComponent, DatoIconModule, DatoInfiniteScrollComponent, DatoInfiniteScrollModule, DatoInputComponent, DatoInputModule, DatoInputNumberComponent, DatoInputNumberDirective, DatoInputNumberModule, DatoKebabCasePipe, DatoLinkButtonComponent, DatoLinkButtonModule, DatoListComponent, DatoListModule, DatoListNoDataComponent, DatoListNoResultComponent, DatoListV2Component, DatoListV2Module, DatoLoaderComponent, DatoLoadersModule, DatoMenuComponent, DatoMenuContentDirective, DatoMenuItemDirective, DatoMenuModule, DatoMenuTriggerForDirective, DatoMultiOptionComponent, DatoMultiOptionV2Component, DatoOperatorTogglerComponent, DatoOperatorTogglerModule, DatoOptionComponent, DatoOptionV2Component, DatoOptionsModule, DatoOriginDirective, DatoOverlay, DatoPageLoaderComponent, DatoPanel, DatoPanelComponent, DatoPanelContentComponent, DatoPanelFooterComponent, DatoPanelHeaderComponent, DatoPanelInternalConfig, DatoPanelModule, DatoPanelRef, DatoPillsComponent, DatoPillsModule, DatoPipesModule, DatoPopover, DatoPopoverComponent, DatoPopoverModule, DatoProgressBarComponent, DatoProgressBarModule, DatoRadioComponent, DatoRadioModule, DatoRichTextDirective, DatoRichTextModule, DatoSearchResultsGroupSortPipe, DatoSearchResultsSortPipe, DatoSearchableContainerComponent, DatoSearchableDirective, DatoSearchableHighlightDirective, DatoSearchableModule, DatoSelectActiveDirective, DatoSelectComponent, DatoSelectEmptyComponent, DatoSelectModule, DatoShortNumberPipe, DatoSliderComponent, DatoSliderModule, DatoSnackbar, DatoSnackbarComponent, DatoSnackbarModule, DatoSortableComponent, DatoSortableHandleDirective, DatoSortableModule, DatoStaticImageSrcDirective, DatoStaticImagesSrcModule, DatoSubscribeContext, DatoSubscribeDirective, DatoTab, DatoTabContent, DatoTabTitle, DatoTabsModule, DatoTabset, DatoTemplatePortal, DatoTextModule, DatoThemesModule, DatoToast, DatoToastComponent, DatoToastModule, DatoTogglerComponent, DatoTogglerModule, DatoTooltipDirective, DatoTooltipV2Directive, DatoTrackByPropPipe, DatoTranslateService, DatoTreePipe, DatoTriggerMulti, DatoTriggerSingle, DialogConfig, DialogResultStatus, Dimensions, EventModifiersPlugin, GridActionType, GridMinWidths, GridRowSelectionType, GridStatusColumnTypes, GridToolbarService, ISO_FORMAT, IconRegistry, KeyCodes, KeyboardEventKeys, ListValueTypes, MockService, OperatorTypes, POPPER_BOUNDARY, PaletteDirective, PanelResultCloseTrigger, PillType, PopoverCloseDirective, PopoverContentDirective, PopoverRef, PopoverTrigger, ROOT_NODE_ID, RelativeDateType, RenderMethod, RowSelectionType, RowSelectionTypeV2, SELECT_MAX_HEIGHT, SUPPORTED_LOCALES, SelectType, SnackbarRef, SnackbarType, Store, SvgRegistry, ToolbarActionType, ToolbarArea, ToolbarConfirmation, ToolbarDeleteConfirmation, ToolbarHandler, TranslatePipe, Types, _valueChanges, a, addClass, addJSObjectCompletor, allowedFileTypes, alphabeticalGroupSort, alphabeticalSort, appendChild, appendScript, appendStyle, appendToBody, assertString, camelCase, capitalize, cloneDeep, closest, coerceArray, coerceElement, compareWith, compose, convertFromTreeData, convertToTreeData, copyToClipboard, createComponent, createElement, createGUID, createHTMLCompletor, curry, dateCompare, daysOfTheMonth, debounce, declarations$2 as declarations, deepEqual, deepmerge, defaultActions$1 as defaultActions, defaultConfig, defaultEditableColumnRenderer, defaultGridOptions, defaultGridTreeLabel, defaultOptionsDisplayLimit, defaultTreeOptions, dialogSizePreset, diff, difference, differenceBy, dimensionsChanges, directives, drop, editableCellRendererWithSearchHighlight, escape, escapeRegExp, filter, filterByControlValue, filterByTerm, filterDialogDismissed, filterDialogSuccess, filterGroupByControlValue, filterGroupByTerm, filterKey, find, findIndex, findKey, fixNgLeaks, forEach, formatKeys, generateMonths, get, getAttr, getCustomRange, getDateISOString, getDefaultConfirmationOptions, getDefaultOptions, getDefaultsToastOptions, getElementCoords, getFunctionName, getGridConfiguration, getGridModel, getInitials, getLocalizedFormat, getMultiTemplate, getOptionTemplate, getPopperDefaults, getUTCDate, getVisibleActions, gridTreeFilePathKey, groupBy, groupSortOrder, has, inView, intersection, invert, isArrayValuesEqual, isArrowUpDown, isBoolean, isEmpty, isEmptyString, isEnter, isEqual, isEscape, isFraction, isFunction, isMacintosh, isNil, isNumber, isObject, isRangeCondition, isRangeCustom, isString, isTestEnv, isValidMediaLink, kebabCase, keyBy, keysSymbols, last, map, mapKeys, mapValues, maxFileSize, merge, minBy, mockInDev, mocks, ngContentResolver, noop, normalizeData, omit, omitBy, optionalDebounce, pallete, parseDateString, partial, polling, prependChild, publicApi$1 as publicApi, query, queryAll, random, rawDiff, reject, relativeDateTypes, removeClass, resolveRange, round, searchHighlightCellRenderer, searchResultsGroupSort, searchResultsSort, setAttr, setAttribute, setDimensions, setEmptyFolderClass, setGridConfiguration, setGridModel, setMaxDimensions, setMinDimensions, setStyle, setStyles, shortNumber, size, sortBy, stubs, supportedLocales, tapLog, tapOnce, throttle, toBoolean, toFormData, toNumber, toResponseBody, toString, toggleClass, toolbarActionToContextAction, tryParsePivotValue, unescape, union, uniq, uniqBy, uploadProgress, validBase64Image, validUrl, validateCondition, validateDate, validateDateCondition, validateFilter, validateNumberCondition, validateRange, validateStringCondition, values, workerMap, zoneStable, ɵ0$2 as ɵ0, ɵ1$2 as ɵ1, ɵ2, DATO_CORE_CONFIG as ɵb, DatoGridHelper as ɵc, Popper as ɵd, GridQuery as ɵe, GridStore as ɵf, GridService as ɵg, DatoDateRangesFilterPipe as ɵh, ListStore as ɵi, DatoListSelectAllComponent as ɵj, DatoGridMultiSelectColumnHeaderComponent as ɵk, DatoGridItemsCountCellComponent as ɵl, DatoGridV2ToolbarMoreMenuComponent as ɵm, DatoGridSearchBarComponent as ɵn, RichTextService as ɵo };
25515
25561
  //# sourceMappingURL=datorama-core.js.map