@datorama/core 22.9.10 → 22.10.1-rc.1

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 (52) hide show
  1. package/bundle.scss +137 -131
  2. package/bundles/datorama-core.umd.js +184 -195
  3. package/bundles/datorama-core.umd.js.map +1 -1
  4. package/bundles/datorama-core.umd.min.js +45 -38
  5. package/bundles/datorama-core.umd.min.js.map +1 -1
  6. package/datorama-core.d.ts +0 -1
  7. package/datorama-core.metadata.json +1 -1
  8. package/esm2015/datorama-core.js +1 -2
  9. package/esm2015/lib/breadcrumbs/breadcrumbs.component.js +2 -4
  10. package/esm2015/lib/grid-v2/grid/grid-v2.types.js +1 -9
  11. package/esm2015/lib/grid-v2/grid-column-cell-components/grid-status-cell/grid-status-cell.component.js +12 -19
  12. package/esm2015/lib/grid-v2/grid-controller/grid-controller.component.js +2 -5
  13. package/esm2015/lib/grid-v2/grid-pagination/grid-pagination.component.js +3 -2
  14. package/esm2015/lib/grid-v2/grid-settings.js +2 -2
  15. package/esm2015/lib/grid-v2/grid-store/grid.service.js +29 -3
  16. package/esm2015/lib/grid-v2/grid-toolbar/grid-toolbar.component.js +1 -7
  17. package/esm2015/lib/loaders/page-loader/page-loader.component.js +2 -7
  18. package/esm2015/lib/rich-text/rich-text.directive.js +38 -20
  19. package/esm2015/lib/select/select.component.js +18 -5
  20. package/esm2015/lib/select/trigger-single/trigger-single.component.js +4 -1
  21. package/esm2015/lib/version.js +2 -2
  22. package/esm5/datorama-core.js +1 -2
  23. package/esm5/lib/breadcrumbs/breadcrumbs.component.js +2 -4
  24. package/esm5/lib/grid-v2/grid/grid-v2.types.js +1 -9
  25. package/esm5/lib/grid-v2/grid-column-cell-components/grid-status-cell/grid-status-cell.component.js +12 -20
  26. package/esm5/lib/grid-v2/grid-controller/grid-controller.component.js +2 -5
  27. package/esm5/lib/grid-v2/grid-pagination/grid-pagination.component.js +5 -2
  28. package/esm5/lib/grid-v2/grid-settings.js +2 -2
  29. package/esm5/lib/grid-v2/grid-store/grid.service.js +29 -3
  30. package/esm5/lib/grid-v2/grid-toolbar/grid-toolbar.component.js +1 -13
  31. package/esm5/lib/loaders/page-loader/page-loader.component.js +2 -7
  32. package/esm5/lib/rich-text/rich-text.directive.js +39 -21
  33. package/esm5/lib/select/select.component.js +18 -5
  34. package/esm5/lib/select/trigger-single/trigger-single.component.js +4 -1
  35. package/esm5/lib/version.js +2 -2
  36. package/fesm2015/datorama-core.js +165 -169
  37. package/fesm2015/datorama-core.js.map +1 -1
  38. package/fesm5/datorama-core.js +185 -195
  39. package/fesm5/datorama-core.js.map +1 -1
  40. package/lib/grid-v2/grid/grid-v2.types.d.ts +3 -12
  41. package/lib/grid-v2/grid-column-cell-components/grid-status-cell/grid-status-cell.component.d.ts +5 -3
  42. package/lib/grid-v2/grid-settings.d.ts +2 -2
  43. package/lib/grid-v2/grid-store/grid.service.d.ts +1 -0
  44. package/lib/grid-v2/grid-toolbar/grid-toolbar.component.d.ts +0 -2
  45. package/lib/loaders/page-loader/page-loader.component.d.ts +0 -1
  46. package/lib/rich-text/rich-text.directive.d.ts +6 -4
  47. package/lib/select/select.component.d.ts +2 -0
  48. package/lib/select/trigger-single/trigger-single.component.d.ts +1 -0
  49. package/package.json +2 -2
  50. package/esm2015/lib/rich-text/rich-text.service.js +0 -50
  51. package/esm5/lib/rich-text/rich-text.service.js +0 -51
  52. package/lib/rich-text/rich-text.service.d.ts +0 -10
@@ -7362,6 +7362,74 @@ function isTestEnv() {
7362
7362
  return !!window.Cypress;
7363
7363
  }
7364
7364
 
7365
+ /**
7366
+ * @license
7367
+ * Copyright Datorama. All Rights Reserved.
7368
+ *
7369
+ * Use of this source code is governed by an Apache License 2.0 license that can be
7370
+ * found in the LICENSE file at https://github.com/datorama/client-core/blob/master/LICENSE
7371
+ */
7372
+ let DatoTriggerSingle = class DatoTriggerSingle {
7373
+ constructor(cdr) {
7374
+ this.cdr = cdr;
7375
+ this._placeholder = '';
7376
+ }
7377
+ set placeholder(value) {
7378
+ this._placeholder = value;
7379
+ this.cdr.detectChanges();
7380
+ }
7381
+ set context(value) {
7382
+ this._model = { $implicit: value };
7383
+ this.cdr.detectChanges();
7384
+ }
7385
+ get hidePlaceholder() {
7386
+ return !this._model || !this._model.$implicit;
7387
+ }
7388
+ ngOnInit() {
7389
+ this.cdr.detach();
7390
+ }
7391
+ get getLabel() {
7392
+ return this._model && this._model.$implicit && this._model.$implicit[this.labelKey];
7393
+ }
7394
+ triggerChangeDetection() {
7395
+ this.cdr.detectChanges();
7396
+ }
7397
+ };
7398
+ DatoTriggerSingle.ctorParameters = () => [
7399
+ { type: ChangeDetectorRef }
7400
+ ];
7401
+ __decorate([
7402
+ Input(),
7403
+ __metadata("design:type", TemplateRef)
7404
+ ], DatoTriggerSingle.prototype, "loadingTemplate", void 0);
7405
+ __decorate([
7406
+ Input(),
7407
+ __metadata("design:type", DatoSelectActiveDirective)
7408
+ ], DatoTriggerSingle.prototype, "active", void 0);
7409
+ __decorate([
7410
+ Input(),
7411
+ __metadata("design:type", Object),
7412
+ __metadata("design:paramtypes", [Object])
7413
+ ], DatoTriggerSingle.prototype, "placeholder", null);
7414
+ __decorate([
7415
+ Input(),
7416
+ __metadata("design:type", String)
7417
+ ], DatoTriggerSingle.prototype, "labelKey", void 0);
7418
+ __decorate([
7419
+ Input(),
7420
+ __metadata("design:type", Object),
7421
+ __metadata("design:paramtypes", [Object])
7422
+ ], DatoTriggerSingle.prototype, "context", null);
7423
+ DatoTriggerSingle = __decorate([
7424
+ Component({
7425
+ selector: 'dato-trigger-single',
7426
+ template: "<ng-template *ngIf=\"loadingTemplate\" [ngTemplateOutlet]=\"loadingTemplate\"></ng-template>\n<ng-container\n *ngIf=\"active && !hidePlaceholder\"\n [ngTemplateOutlet]=\"active.tpl\"\n [ngTemplateOutletContext]=\"_model\">\n</ng-container>\n<ng-container *ngIf=\"!active\">{{getLabel | translate}}</ng-container>\n<span class=\"dato-select__placeholder\" *ngIf=\"hidePlaceholder\">{{_placeholder}}</span>\n<dato-icon datoIcon=\"arrow-down\" datoSize=\"sm\" class=\"dato-select__single__arrow\"></dato-icon>\n",
7427
+ changeDetection: ChangeDetectionStrategy.OnPush,
7428
+ styles: [":host{display:block;position:relative;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host dato-icon{position:absolute;top:50%;transform:translateY(-50%);right:10px}"]
7429
+ }),
7430
+ __metadata("design:paramtypes", [ChangeDetectorRef])
7431
+ ], DatoTriggerSingle);
7432
+
7365
7433
  /**
7366
7434
  * @license
7367
7435
  * Copyright Datorama. All Rights Reserved.
@@ -7604,8 +7672,9 @@ let DatoSelectComponent = class DatoSelectComponent extends BaseCustomControl {
7604
7672
  writeValue(activeOptions) {
7605
7673
  this._model = activeOptions ? coerceArray$1(activeOptions) : [];
7606
7674
  if (this.options) {
7675
+ const overTheLimit = this.limitSelectedTo && this.isMulti && this._model.length >= this.limitSelectedTo;
7607
7676
  this.markAsActive(this._model, { deselectAll: true });
7608
- this.limitSelectedTo && this.updateDisabledState();
7677
+ overTheLimit && this.updateDisabledState();
7609
7678
  }
7610
7679
  /** For later updates */
7611
7680
  this.cdr.markForCheck();
@@ -7710,6 +7779,7 @@ let DatoSelectComponent = class DatoSelectComponent extends BaseCustomControl {
7710
7779
  this.onChange(this._model);
7711
7780
  }
7712
7781
  removeOption(option) {
7782
+ const updateDisabled = this.limitSelectedTo && this._model.length === this.limitSelectedTo;
7713
7783
  this._model = this._model.filter(current => current[this.idKey] !== option[this.idKey]);
7714
7784
  const optionToRemove = this.options.find(datoOption => datoOption.option && datoOption.option[this.idKey] === option[this.idKey]);
7715
7785
  /**
@@ -7719,7 +7789,7 @@ let DatoSelectComponent = class DatoSelectComponent extends BaseCustomControl {
7719
7789
  if (optionToRemove) {
7720
7790
  optionToRemove.active = false;
7721
7791
  }
7722
- this.limitSelectedTo && this.updateDisabledState();
7792
+ updateDisabled && this.updateDisabledState();
7723
7793
  this.onChange(this._model);
7724
7794
  this.cdr.markForCheck();
7725
7795
  this.asyncUpdateDropdownPosition();
@@ -7993,6 +8063,9 @@ let DatoSelectComponent = class DatoSelectComponent extends BaseCustomControl {
7993
8063
  if (!datoOption) {
7994
8064
  return;
7995
8065
  }
8066
+ const modelLength = this._model.length;
8067
+ const updateDisabled = this.limitSelectedTo &&
8068
+ (modelLength === this.limitSelectedTo || (modelLength === this.limitSelectedTo - 1 && !datoOption.active));
7996
8069
  datoOption.active = !datoOption.active;
7997
8070
  const rawOption = datoOption.option;
7998
8071
  if (datoOption.active) {
@@ -8001,7 +8074,7 @@ let DatoSelectComponent = class DatoSelectComponent extends BaseCustomControl {
8001
8074
  else {
8002
8075
  this._model = this._model.filter(current => current[this.idKey] !== rawOption[this.idKey]);
8003
8076
  }
8004
- this.limitSelectedTo && this.updateDisabledState();
8077
+ updateDisabled && this.updateDisabledState();
8005
8078
  this.onChange(this._model);
8006
8079
  this.cdr.markForCheck();
8007
8080
  this.asyncUpdateDropdownPosition();
@@ -8052,6 +8125,9 @@ let DatoSelectComponent = class DatoSelectComponent extends BaseCustomControl {
8052
8125
  setTimeout(() => this.datoOverlay.scheduleUpdate(), 0);
8053
8126
  }
8054
8127
  }
8128
+ triggerChangeDetectionInDatoSingle() {
8129
+ this.datoTriggerSingle.triggerChangeDetection();
8130
+ }
8055
8131
  };
8056
8132
  DatoSelectComponent.ctorParameters = () => [
8057
8133
  { type: ChangeDetectorRef },
@@ -8062,6 +8138,10 @@ DatoSelectComponent.ctorParameters = () => [
8062
8138
  { type: undefined, decorators: [{ type: Attribute, args: ['datoSize',] }] },
8063
8139
  { type: String, decorators: [{ type: Attribute, args: ['width',] }] }
8064
8140
  ];
8141
+ __decorate([
8142
+ ViewChild('datoTriggerSingle'),
8143
+ __metadata("design:type", DatoTriggerSingle)
8144
+ ], DatoSelectComponent.prototype, "datoTriggerSingle", void 0);
8065
8145
  __decorate([
8066
8146
  ViewChild('dropdown'),
8067
8147
  __metadata("design:type", TemplateRef)
@@ -8228,7 +8308,7 @@ __decorate([
8228
8308
  DatoSelectComponent = __decorate([
8229
8309
  Component({
8230
8310
  selector: 'dato-select',
8231
- template: "<section class=\"dato-select__trigger\" [class.dato-select--naked]=\"_naked\" [class.dato-select--disabled]=\"_disabled\">\n\n <div class=\"dato-select__single\" *ngIf=\"isSingle\" [ngClass]=\"_dropdownClass\">\n <dato-input [class.force-hide]=\"(!open && isCombo) || !isCombo\" [placeholder]=\"searchPlaceholder | translate\"\n (keyup)=\"keyup($event)\" [isFocused]=\"_focus\" [isLoading]=\"isLoading\" [formControl]=\"searchControl\" type=\"search\">\n </dato-input>\n\n <dato-trigger-single [loadingTemplate]=\"loadingTemplate\" [active]=\"active\" datoErrorValidationBorderAnchor tabindex=\"0\" [labelKey]=\"labelKey\"\n [context]=\"_model[0]\" [class.force-hide]=\"open && isCombo\" [placeholder]=\"placeholder | translate\"\n class=\"ontop-overlay\" (keydown)=\"preventBodyScroll($event)\" (keyup)=\"keyup($event)\" (click)=\"openDropdown()\">\n </dato-trigger-single>\n </div>\n\n <dato-trigger-multi [loadingTemplate]=\"loadingTemplate\" [options]=\"_model\" datoErrorValidationBorderAnchor [control]=\"searchControl\"\n [placeholder]=\"placeholder | translate\" [labelKey]=\"labelKey\" [idKey]=\"idKey\" (keyup)=\"keyup($event)\"\n [isLoading]=\"isLoading\" [keepFocus]=\"keepFocus\" [limitTo]=\"limitTo\" [clickOutside]=\"_clickOutside\" [isSortable]=\"isSortable\"\n [selectAllChipTxt]=\"selectAllChipTxt\"\n [showSelectAllChip]=\"selectAllChipTxt && showSelectAllChip\"\n (unselectAll)=\"checkAll(false)\"\n (removeOption)=\"removeOption($event)\" (reorderOptions)=\"reorderOptions($event)\" *ngIf=\"isMulti\"\n (click)=\"openDropdown($event)\"></dato-trigger-multi>\n\n</section>\n\n<ng-template #dropdown>\n <section class=\"dato-select__dropdown-container\" tabindex=\"0\" (keyup)=\"keyup($event)\">\n\n <!-- HEADER -->\n\n <header class=\"dato-select__header dato-select__option dato-select__option--simple\" data-is-floating\n *ngIf=\"isMulti && allowSelectAll\" [class.force-hide]=\"_showEmptyResults\" [class.ml-10]=\"containsGroups\">\n <dato-checkbox [checked]=\"_isAllChecked\" (check)=\"checkAll($event)\"\n [indeterminatelyChecked]=\"_isIndeterminatelyChecked\">\n {{'core.select-all' | translate}}<span class=\"primary-300-color note-italic ml-5\">{{_count}}</span>\n </dato-checkbox>\n </header>\n\n <!-- END HEADER -->\n\n <!-- DROPDOWN -->\n\n <div class=\"dato-select__dropdown\">\n\n <ng-content></ng-content>\n\n <dato-select-empty [show]=\"_showEmptyResults\">{{_noItemsLabel}}</dato-select-empty>\n <div class=\"dato-select__option dato-select-infinite-spinner\" data-is-floating *ngIf=\"infiniteScrollLoading\">\n <span class=\"dato-input__spinner\"></span>\n </div>\n\n </div>\n\n <!-- END DROPDOWN -->\n\n\n <!-- FOOTER -->\n\n <footer class=\"dato-select__footer d-flex\" [class.with-actions]=\"_withActions\">\n\n <ng-content select=\"[datoSelectFooter]\"></ng-content>\n\n <ng-container *ngIf=\"_withActions\">\n <dato-link class=\"mr-20\" datoType=\"secondary\" (click)=\"close()\">Cancel</dato-link>\n <dato-button datoSize=\"sm\" (click)=\"save.emit(); close();\">Save</dato-button>\n </ng-container>\n\n </footer>\n\n <!-- END FOOTER -->\n\n </section>\n\n</ng-template>\n",
8311
+ template: "<section class=\"dato-select__trigger\" [class.dato-select--naked]=\"_naked\" [class.dato-select--disabled]=\"_disabled\">\n\n <div class=\"dato-select__single\" *ngIf=\"isSingle\" [ngClass]=\"_dropdownClass\">\n <dato-input [class.force-hide]=\"(!open && isCombo) || !isCombo\" [placeholder]=\"searchPlaceholder | translate\"\n (keyup)=\"keyup($event)\" [isFocused]=\"_focus\" [isLoading]=\"isLoading\" [formControl]=\"searchControl\" type=\"search\">\n </dato-input>\n\n <dato-trigger-single #datoTriggerSingle [loadingTemplate]=\"loadingTemplate\" [active]=\"active\" datoErrorValidationBorderAnchor tabindex=\"0\" [labelKey]=\"labelKey\"\n [context]=\"_model[0]\" [class.force-hide]=\"open && isCombo\" [placeholder]=\"placeholder | translate\"\n class=\"ontop-overlay\" (keydown)=\"preventBodyScroll($event)\" (keyup)=\"keyup($event)\" (click)=\"openDropdown()\">\n </dato-trigger-single>\n </div>\n\n <dato-trigger-multi [loadingTemplate]=\"loadingTemplate\" [options]=\"_model\" datoErrorValidationBorderAnchor [control]=\"searchControl\"\n [placeholder]=\"placeholder | translate\" [labelKey]=\"labelKey\" [idKey]=\"idKey\" (keyup)=\"keyup($event)\"\n [isLoading]=\"isLoading\" [keepFocus]=\"keepFocus\" [limitTo]=\"limitTo\" [clickOutside]=\"_clickOutside\" [isSortable]=\"isSortable\"\n [selectAllChipTxt]=\"selectAllChipTxt\"\n [showSelectAllChip]=\"selectAllChipTxt && showSelectAllChip\"\n (unselectAll)=\"checkAll(false)\"\n (removeOption)=\"removeOption($event)\" (reorderOptions)=\"reorderOptions($event)\" *ngIf=\"isMulti\"\n (click)=\"openDropdown($event)\"></dato-trigger-multi>\n\n</section>\n\n<ng-template #dropdown>\n <section class=\"dato-select__dropdown-container\" tabindex=\"0\" (keyup)=\"keyup($event)\">\n\n <!-- HEADER -->\n\n <header class=\"dato-select__header dato-select__option dato-select__option--simple\" data-is-floating\n *ngIf=\"isMulti && allowSelectAll\" [class.force-hide]=\"_showEmptyResults\" [class.ml-10]=\"containsGroups\">\n <dato-checkbox [checked]=\"_isAllChecked\" (check)=\"checkAll($event)\"\n [indeterminatelyChecked]=\"_isIndeterminatelyChecked\">\n {{'core.select-all' | translate}}<span class=\"primary-300-color note-italic ml-5\">{{_count}}</span>\n </dato-checkbox>\n </header>\n\n <!-- END HEADER -->\n\n <!-- DROPDOWN -->\n\n <div class=\"dato-select__dropdown\">\n\n <ng-content></ng-content>\n\n <dato-select-empty [show]=\"_showEmptyResults\">{{_noItemsLabel}}</dato-select-empty>\n <div class=\"dato-select__option dato-select-infinite-spinner\" data-is-floating *ngIf=\"infiniteScrollLoading\">\n <span class=\"dato-input__spinner\"></span>\n </div>\n\n </div>\n\n <!-- END DROPDOWN -->\n\n\n <!-- FOOTER -->\n\n <footer class=\"dato-select__footer d-flex\" [class.with-actions]=\"_withActions\">\n\n <ng-content select=\"[datoSelectFooter]\"></ng-content>\n\n <ng-container *ngIf=\"_withActions\">\n <dato-link class=\"mr-20\" datoType=\"secondary\" (click)=\"close()\">Cancel</dato-link>\n <dato-button datoSize=\"sm\" (click)=\"save.emit(); close();\">Save</dato-button>\n </ng-container>\n\n </footer>\n\n <!-- END FOOTER -->\n\n </section>\n\n</ng-template>\n",
8232
8312
  preserveWhitespaces: false,
8233
8313
  providers: [valueAccessor$3, DatoOverlay],
8234
8314
  encapsulation: ViewEncapsulation.None,
@@ -8244,71 +8324,6 @@ DatoSelectComponent = __decorate([
8244
8324
  DatoOverlay, Object, Object, String])
8245
8325
  ], DatoSelectComponent);
8246
8326
 
8247
- /**
8248
- * @license
8249
- * Copyright Datorama. All Rights Reserved.
8250
- *
8251
- * Use of this source code is governed by an Apache License 2.0 license that can be
8252
- * found in the LICENSE file at https://github.com/datorama/client-core/blob/master/LICENSE
8253
- */
8254
- let DatoTriggerSingle = class DatoTriggerSingle {
8255
- constructor(cdr) {
8256
- this.cdr = cdr;
8257
- this._placeholder = '';
8258
- }
8259
- set placeholder(value) {
8260
- this._placeholder = value;
8261
- this.cdr.detectChanges();
8262
- }
8263
- set context(value) {
8264
- this._model = { $implicit: value };
8265
- this.cdr.detectChanges();
8266
- }
8267
- get hidePlaceholder() {
8268
- return !this._model || !this._model.$implicit;
8269
- }
8270
- ngOnInit() {
8271
- this.cdr.detach();
8272
- }
8273
- get getLabel() {
8274
- return this._model && this._model.$implicit && this._model.$implicit[this.labelKey];
8275
- }
8276
- };
8277
- DatoTriggerSingle.ctorParameters = () => [
8278
- { type: ChangeDetectorRef }
8279
- ];
8280
- __decorate([
8281
- Input(),
8282
- __metadata("design:type", TemplateRef)
8283
- ], DatoTriggerSingle.prototype, "loadingTemplate", void 0);
8284
- __decorate([
8285
- Input(),
8286
- __metadata("design:type", DatoSelectActiveDirective)
8287
- ], DatoTriggerSingle.prototype, "active", void 0);
8288
- __decorate([
8289
- Input(),
8290
- __metadata("design:type", Object),
8291
- __metadata("design:paramtypes", [Object])
8292
- ], DatoTriggerSingle.prototype, "placeholder", null);
8293
- __decorate([
8294
- Input(),
8295
- __metadata("design:type", String)
8296
- ], DatoTriggerSingle.prototype, "labelKey", void 0);
8297
- __decorate([
8298
- Input(),
8299
- __metadata("design:type", Object),
8300
- __metadata("design:paramtypes", [Object])
8301
- ], DatoTriggerSingle.prototype, "context", null);
8302
- DatoTriggerSingle = __decorate([
8303
- Component({
8304
- selector: 'dato-trigger-single',
8305
- template: "<ng-template *ngIf=\"loadingTemplate\" [ngTemplateOutlet]=\"loadingTemplate\"></ng-template>\n<ng-container\n *ngIf=\"active && !hidePlaceholder\"\n [ngTemplateOutlet]=\"active.tpl\"\n [ngTemplateOutletContext]=\"_model\">\n</ng-container>\n<ng-container *ngIf=\"!active\">{{getLabel | translate}}</ng-container>\n<span class=\"dato-select__placeholder\" *ngIf=\"hidePlaceholder\">{{_placeholder}}</span>\n<dato-icon datoIcon=\"arrow-down\" datoSize=\"sm\" class=\"dato-select__single__arrow\"></dato-icon>\n",
8306
- changeDetection: ChangeDetectionStrategy.OnPush,
8307
- styles: [":host{display:block;position:relative;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host dato-icon{position:absolute;top:50%;transform:translateY(-50%);right:10px}"]
8308
- }),
8309
- __metadata("design:paramtypes", [ChangeDetectorRef])
8310
- ], DatoTriggerSingle);
8311
-
8312
8327
  /**
8313
8328
  * @license
8314
8329
  * Copyright Datorama. All Rights Reserved.
@@ -10513,7 +10528,7 @@ function toolbarActionToContextAction(params) {
10513
10528
  return contextActions;
10514
10529
  }
10515
10530
 
10516
- const DATO_GRID_STORAGE_API = new InjectionToken('DATO_GRID_STORAGE_AP');
10531
+ const DATO_GRID_STORAGE_API = new InjectionToken('DATO_GRID_STORAGE_API');
10517
10532
 
10518
10533
  const defaultEditableColumnRenderer = params => params && params.value ? `<div class="value-wrapper ellipsis">${params.value}</div>` : null;
10519
10534
  const editableCellRendererWithSearchHighlight = (params, searchTerm) => {
@@ -10550,14 +10565,6 @@ var GridRowSelectionType;
10550
10565
  GridRowSelectionType["SINGLE"] = "single";
10551
10566
  GridRowSelectionType["MULTIPLE"] = "multiple";
10552
10567
  })(GridRowSelectionType || (GridRowSelectionType = {}));
10553
- var GridStatusColumnTypes;
10554
- (function (GridStatusColumnTypes) {
10555
- GridStatusColumnTypes["SUCCESS"] = "SUCCESS";
10556
- GridStatusColumnTypes["FAILURE"] = "FAILURE";
10557
- GridStatusColumnTypes["IN_PROGRESS"] = "IN_PROGRESS";
10558
- GridStatusColumnTypes["PENDING"] = "PENDING";
10559
- GridStatusColumnTypes["WAITING"] = "WAITING";
10560
- })(GridStatusColumnTypes || (GridStatusColumnTypes = {}));
10561
10568
 
10562
10569
  /**
10563
10570
  * @license
@@ -12608,9 +12615,36 @@ let GridService = class GridService {
12608
12615
  this.initPivotSecondaryColsProcess(params);
12609
12616
  params.gridOptions.enableV2_1 = true;
12610
12617
  params.gridOptions.saveSettings = false;
12618
+ params.gridOptions.defaultColDef.cellClass = this.getPivotCellClass.bind(this);
12619
+ params.gridOptions.autoGroupColumnDef.cellClass = this.getPivotCellClass.bind(this);
12611
12620
  }
12612
12621
  return params.gridOptions;
12613
12622
  }
12623
+ getPivotCellClass(params) {
12624
+ const { leafGroup, childIndex, rowGroupIndex } = params.node;
12625
+ const gridQuery = params.colDef.headerComponentParams.gridQuery;
12626
+ let cellClass = ``;
12627
+ if (gridQuery && gridQuery.api) {
12628
+ const { columns } = gridQuery.api;
12629
+ const allDisplayedColumns = columns.getAllDisplayedColumns();
12630
+ const col = allDisplayedColumns.find(column => {
12631
+ return column.getColId() === params.colDef.colId;
12632
+ });
12633
+ const colIndex = allDisplayedColumns.indexOf(col);
12634
+ if (rowGroupIndex <= colIndex) {
12635
+ if (leafGroup) {
12636
+ if (childIndex % 2 === 0) {
12637
+ /** If row is even */
12638
+ cellClass += ' primary-100-background-color';
12639
+ }
12640
+ }
12641
+ else {
12642
+ cellClass += 'primary-0-background-color pointer dato-simple-bold';
12643
+ }
12644
+ }
12645
+ }
12646
+ return cellClass;
12647
+ }
12614
12648
  normalizeColumns(colDefs, gridOptions = null) {
12615
12649
  if (!gridOptions) {
12616
12650
  gridOptions = this.gridQuery.getGridOptions();
@@ -12877,8 +12911,7 @@ let GridService = class GridService {
12877
12911
  this.updateSettings({ gridAlignment, columnsSizes: null });
12878
12912
  }
12879
12913
  saveSettingsToServer(settings) {
12880
- const isGlobal = this.gridQuery.getGridOptions().isGlobalSettings;
12881
- this.storageAPI.set(this.gridName, settings, isGlobal);
12914
+ this.storageAPI.set(this.gridName, settings);
12882
12915
  }
12883
12916
  /**
12884
12917
  * @internal used to log grid events to the platform's logging service
@@ -13787,10 +13820,7 @@ let DatoGridControllerComponent = class DatoGridControllerComponent {
13787
13820
  .pipe(switchMap(() => {
13788
13821
  this.gridOptions = this.normalizeOptions();
13789
13822
  agGrid.gridOptions = this.gridOptions;
13790
- const isGlobal = this.gridOptions.isGlobalSettings;
13791
- const settingsLoader = this.gridOptions.saveSettings === false
13792
- ? of(null)
13793
- : this.storageAPI.get(this.gridOptions.gridName, isGlobal);
13823
+ const settingsLoader = this.gridOptions.saveSettings === false ? of(null) : this.storageAPI.get(this.gridOptions.gridName);
13794
13824
  return combineLatest([agGrid.gridReady, settingsLoader]);
13795
13825
  }), untilDestroyed(this))
13796
13826
  .subscribe(([{ api, columnApi }, savedSettings = {}]) => {
@@ -14531,7 +14561,7 @@ let DatoGridPaginationV2Component = class DatoGridPaginationV2Component {
14531
14561
  }
14532
14562
  ngOnInit() {
14533
14563
  this.gridQuery
14534
- .waitForGrid(() => this.gridQuery.gridRef.filterChanged)
14564
+ .waitForGrid(() => merge$1(this.gridQuery.gridRef.filterChanged, this.gridQuery.gridRef.rowGroupOpened, this.gridQuery.gridRef.expandOrCollapseAll))
14535
14565
  .pipe(untilDestroyed(this))
14536
14566
  .subscribe(() => {
14537
14567
  this.gridApi.paginationGoToPage(0);
@@ -14929,12 +14959,6 @@ let DatoGridV2ToolbarComponent = class DatoGridV2ToolbarComponent {
14929
14959
  this.registerGroupListeners();
14930
14960
  this.subscribeRowsSelectionData();
14931
14961
  }
14932
- getCellValueChangeEvent() {
14933
- return this.gridController.gridQuery.waitForGrid(() => this.gridQuery.gridRef.cellValueChanged.pipe(debounceTime(100), untilDestroyed(this)));
14934
- }
14935
- getRowDataUpdatedEvent() {
14936
- return this.gridController.gridQuery.waitForGrid(() => this.gridQuery.gridRef.rowDataUpdated.pipe(debounceTime(100), untilDestroyed(this)));
14937
- }
14938
14962
  onActionClick(action) {
14939
14963
  if (isFunction(action.onClick)) {
14940
14964
  const selectedRowsCount = this.gridController.gridQuery.getSelectedRowsCount();
@@ -17305,7 +17329,6 @@ let DatoPageLoaderComponent = class DatoPageLoaderComponent {
17305
17329
  constructor() {
17306
17330
  this.msg = '';
17307
17331
  this.salesforce = false;
17308
- this.size = 'medium';
17309
17332
  this.circleIds = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'];
17310
17333
  }
17311
17334
  };
@@ -17317,14 +17340,10 @@ __decorate([
17317
17340
  Input(),
17318
17341
  __metadata("design:type", Object)
17319
17342
  ], DatoPageLoaderComponent.prototype, "salesforce", void 0);
17320
- __decorate([
17321
- Input(),
17322
- __metadata("design:type", String)
17323
- ], DatoPageLoaderComponent.prototype, "size", void 0);
17324
17343
  DatoPageLoaderComponent = __decorate([
17325
17344
  Component({
17326
17345
  selector: 'dato-page-loader',
17327
- template: "<div class=\"d-flex-column align-center\">\n <ng-container *ngIf=\"salesforce; else datoramaPageLoader\">\n <div class=\"slds-spinner_container\">\n <div role=\"status\" class=\"slds-spinner slds-spinner_brand\" [ngClass]=\"'slds-spinner_' + size\">\n <div class=\"slds-spinner__dot-a\"></div>\n <div class=\"slds-spinner__dot-b\"></div>\n </div>\n </div>\n </ng-container>\n <ng-template #datoramaPageLoader>\n <div class=\"animation-container d-flex align-center d-flex-wrap\">\n <div class=\"circle d-flex align-center\" *ngFor=\"let id of circleIds\" [ngClass]=\"'circle-' + id\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\">\n <circle cx=\"6\" cy=\"6\" r=\"5\" />\n </svg>\n </div>\n </div>\n </ng-template>\n <span class=\"loading-message simple-bold\">{{msg | translate}}</span>\n</div>\n",
17346
+ template: "<div class=\"d-flex-column align-center\">\n <ng-container *ngIf=\"salesforce; else datoramaPageLoader\">\n <div class=\"slds-spinner_container\">\n <div role=\"status\" class=\"slds-spinner slds-spinner_medium slds-spinner_brand\">\n <div class=\"slds-spinner__dot-a\"></div>\n <div class=\"slds-spinner__dot-b\"></div>\n </div>\n </div>\n </ng-container>\n <ng-template #datoramaPageLoader>\n <div class=\"animation-container d-flex align-center d-flex-wrap\">\n <div class=\"circle d-flex align-center\" *ngFor=\"let id of circleIds\" [ngClass]=\"'circle-' + id\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\">\n <circle cx=\"6\" cy=\"6\" r=\"5\" />\n </svg>\n </div>\n </div>\n </ng-template>\n <span class=\"loading-message simple-bold\">{{msg | translate}}</span>\n</div>",
17328
17347
  changeDetection: ChangeDetectionStrategy.OnPush
17329
17348
  })
17330
17349
  ], DatoPageLoaderComponent);
@@ -18212,13 +18231,7 @@ DatoGridV2ToolbarMoreMenuComponent = __decorate([
18212
18231
  let DatoGridStatusCellComponent = class DatoGridStatusCellComponent {
18213
18232
  constructor(cdr) {
18214
18233
  this.cdr = cdr;
18215
- this.defaultConfigByStatus = {
18216
- [GridStatusColumnTypes.SUCCESS]: { icon: 'success-line', iconCssClass: 'green-400-color' },
18217
- [GridStatusColumnTypes.FAILURE]: { icon: 'failed-line', iconCssClass: 'red-400-color' },
18218
- [GridStatusColumnTypes.PENDING]: { icon: 'time', iconCssClass: 'yellow-400-color' },
18219
- [GridStatusColumnTypes.WAITING]: { icon: 'info-line', iconCssClass: 'orange-400-color' },
18220
- [GridStatusColumnTypes.IN_PROGRESS]: { showSpinner: true }
18221
- };
18234
+ this.DEFAULT_MIN_WIDTH = 100;
18222
18235
  }
18223
18236
  agInit(params) {
18224
18237
  const { value, valueFormatted, node } = params;
@@ -18233,14 +18246,15 @@ let DatoGridStatusCellComponent = class DatoGridStatusCellComponent {
18233
18246
  const mainCustomCellConfig = customCellConfig || {};
18234
18247
  const valueCustomCellConfig = valueToCustomCellConfig ? valueToCustomCellConfig[params.value] || {} : {};
18235
18248
  const config = Object.assign(Object.assign({}, mainCustomCellConfig), valueCustomCellConfig);
18236
- const { textCssClass, icon, iconCssClass, showSpinner, getAdditionalText, additionalTextCssClass, getIsVisible, status } = config;
18237
- const defaultConfig = this.defaultConfigByStatus[status] || {};
18249
+ const { color, icon, cssClass, iconCssClass, minWidth, showSpinner, getAdditionalText, getIsVisible } = config;
18238
18250
  this.isVisible = !getIsVisible || getIsVisible(params.data);
18239
- this.icon = icon || defaultConfig.icon;
18240
- this.iconCssClass = iconCssClass || defaultConfig.iconCssClass || '';
18241
- this.textCssClass = textCssClass || '';
18242
- this.additionalTextCssClass = additionalTextCssClass || '';
18243
- this.showSpinner = !!showSpinner || !!defaultConfig.showSpinner;
18251
+ this.color = color || 'primary';
18252
+ this.backgroundClass = `${this.color}-${this.color === 'accent' ? '100' : '200'}-background-color`;
18253
+ this.icon = icon;
18254
+ this.minWidth = minWidth || this.DEFAULT_MIN_WIDTH;
18255
+ this.cssClass = cssClass || '';
18256
+ this.iconCssClass = iconCssClass || '';
18257
+ this.showSpinner = showSpinner;
18244
18258
  this.additionalText = getAdditionalText ? getAdditionalText(params.data) : null;
18245
18259
  }
18246
18260
  refresh(params) {
@@ -18255,9 +18269,8 @@ DatoGridStatusCellComponent.ctorParameters = () => [
18255
18269
  DatoGridStatusCellComponent = __decorate([
18256
18270
  Component({
18257
18271
  selector: 'dato-grid-status-cell',
18258
- template: "<div *ngIf=\"!isGroup && isVisible\" class=\"height-100 d-flex items-center\">\n <dato-icon *ngIf=\"icon\" class=\"mr-6 {{iconCssClass}}\" [icon]=\"icon\" datoSize=\"sm\"></dato-icon>\n <dato-page-loader *ngIf=\"showSpinner\" [salesforce]=\"true\" size=\"x-small\" class=\"mr-10 mt-15\"></dato-page-loader>\n <div class=\"dato-simple status line-height-18 {{textCssClass}}\" [class.ellipsis]=\"!additionalText\"\n [datoTooltipV2]=\"status\" [showOnlyOnTextOverflow]=\"true\" [tooltipCheckInView]=\"false\">\n {{status}}\n </div>\n <div *ngIf=\"additionalText\" class=\"dato-simple ml-3 ellipsis line-height-18 {{additionalTextCssClass}}\"\n [datoTooltipV2]=\"status + ' ' + additionalText\" [showOnlyOnTextOverflow]=\"true\" [tooltipCheckInView]=\"false\">\n {{additionalText}}\n </div>\n</div>\n<span *ngIf=\"isGroup\">{{status}}</span>\n",
18259
- changeDetection: ChangeDetectionStrategy.OnPush,
18260
- styles: [".line-height-18{line-height:18px}"]
18272
+ template: "<div *ngIf=\"!isGroup && isVisible\" class=\"height-100 d-flex items-center\">\n <div *ngIf=\"status\" class=\"d-flex justify-center items-center px-15 py-5 {{backgroundClass}} {{cssClass}}\" [style.min-width.px]=\"minWidth\">\n <dato-icon *ngIf=\"icon\" class=\"mr-5 {{iconCssClass}}\" [icon]=\"icon\" datoSize=\"sm\"></dato-icon>\n <div class=\"dato-note {{color}}-800-color\" [class.ellipsis]=\"!additionalText\"\n [datoTooltipV2]=\"status\" [showOnlyOnTextOverflow]=\"true\" [tooltipCheckInView]=\"false\" [datoTooltipDisabled]=\"!!additionalText\">\n {{status}}\n </div>\n <div *ngIf=\"additionalText\" class=\"dato-note {{color}}-800-color ml-3 ellipsis\"\n [datoTooltipV2]=\"status + ' ' + additionalText\" [showOnlyOnTextOverflow]=\"true\" [tooltipCheckInView]=\"false\">\n {{additionalText}}\n </div>\n <span *ngIf=\"showSpinner\" class=\"dato-spinner-loader ml-5\"></span>\n </div>\n</div>\n<span *ngIf=\"isGroup\">{{status}}</span>\n",
18273
+ changeDetection: ChangeDetectionStrategy.OnPush
18261
18274
  }),
18262
18275
  __metadata("design:paramtypes", [ChangeDetectorRef])
18263
18276
  ], DatoGridStatusCellComponent);
@@ -19013,39 +19026,6 @@ DatoEditableHeaderModule = __decorate([
19013
19026
  * found in the LICENSE file at https://github.com/datorama/client-core/blob/master/LICENSE
19014
19027
  */
19015
19028
 
19016
- let RichTextService = class RichTextService {
19017
- constructor(http, config) {
19018
- this.http = http;
19019
- this.config = config;
19020
- }
19021
- getLib(appendScriptFunc, appendStyleFunc) {
19022
- if (!this.richTextScript$) {
19023
- this.initLib(appendScriptFunc, appendStyleFunc);
19024
- }
19025
- return this.richTextScript$;
19026
- }
19027
- initLib(appendScriptFunc, appendStyleFunc) {
19028
- this.richTextScript$ = combineLatest([
19029
- this.http
19030
- .get(`${this.config.paths.richText}/index.js`, { responseType: 'text' })
19031
- .pipe(tap(lib => appendScriptFunc(lib, 'rich-text-editor'))),
19032
- this.http
19033
- .get(`${this.config.paths.richText}/plugins/autocomplete/plugin.css`, { responseType: 'text' })
19034
- .pipe(tap(style => appendStyleFunc(style, 'tinymce-autocomplete')))
19035
- ]).pipe(shareReplay(1));
19036
- }
19037
- };
19038
- RichTextService.ctorParameters = () => [
19039
- { type: HttpClient },
19040
- { type: undefined, decorators: [{ type: Inject, args: [DATO_CORE_CONFIG,] }] }
19041
- ];
19042
- RichTextService.ɵprov = ɵɵdefineInjectable({ factory: function RichTextService_Factory() { return new RichTextService(ɵɵinject(HttpClient), ɵɵinject(DATO_CORE_CONFIG)); }, token: RichTextService, providedIn: "root" });
19043
- RichTextService = __decorate([
19044
- Injectable({ providedIn: 'root' }),
19045
- __param(1, Inject(DATO_CORE_CONFIG)),
19046
- __metadata("design:paramtypes", [HttpClient, Object])
19047
- ], RichTextService);
19048
-
19049
19029
  /**
19050
19030
  * @license
19051
19031
  * Copyright Datorama. All Rights Reserved.
@@ -19059,20 +19039,20 @@ const getTinymce = () => {
19059
19039
  };
19060
19040
  const ɵ0$3 = getTinymce;
19061
19041
  let DatoRichTextDirective = DatoRichTextDirective_1 = class DatoRichTextDirective extends BaseCustomControl {
19062
- constructor(ngZone, richTextService, config, host) {
19042
+ constructor(ngZone, http, host, config) {
19063
19043
  super();
19064
19044
  this.ngZone = ngZone;
19065
- this.richTextService = richTextService;
19066
- this.config = config;
19045
+ this.http = http;
19067
19046
  this.host = host;
19047
+ this.config = config;
19068
19048
  this.autocompleteOptions = {};
19069
19049
  this.forcePlainTextPasting = false;
19070
19050
  this.format = 'html';
19071
19051
  this.isOneLine = false;
19072
19052
  this.initialValue = '';
19073
- this.defaultPlugins = 'link fullscreen image lists table autocomplete';
19053
+ this.defaultPlugins = 'link fullscreen textcolor colorpicker image lists table textpattern autocomplete';
19074
19054
  this.defaultToolbar = [
19075
- 'fontfamily fontsize forecolor backcolor bold italic underline link',
19055
+ 'fontselect fontsizeselect forecolor backcolor bold italic underline link',
19076
19056
  'alignleft aligncenter alignright alignjustify outdent indent | table numlist bullist | image fullscreen'
19077
19057
  ];
19078
19058
  }
@@ -19091,11 +19071,28 @@ let DatoRichTextDirective = DatoRichTextDirective_1 = class DatoRichTextDirectiv
19091
19071
  base: this.config.paths.richText,
19092
19072
  query: ''
19093
19073
  };
19094
- this.richTextService
19095
- .getLib(appendScript, appendStyle)
19096
- .pipe(untilDestroyed(this))
19097
- .subscribe(() => {
19074
+ /**
19075
+ * We support only one instance in load time
19076
+ */
19077
+ if (window.tinymce) {
19098
19078
  this.init.call(this);
19079
+ }
19080
+ else {
19081
+ this.loadLib().subscribe(lib => {
19082
+ appendScript(lib, 'rich-text-editor');
19083
+ this.init.call(this);
19084
+ this.loadAutoCompleteStyle();
19085
+ });
19086
+ }
19087
+ }
19088
+ loadLib() {
19089
+ return this.http.get(`${this.config.paths.richText}/index.js`, { responseType: 'text' });
19090
+ }
19091
+ loadAutoCompleteStyle() {
19092
+ this.http
19093
+ .get(`${this.config.paths.richText}/plugins/autocomplete/plugin.css`, { responseType: 'text' })
19094
+ .subscribe(style => {
19095
+ appendStyle(style, 'tinymce-autocomplete');
19099
19096
  });
19100
19097
  }
19101
19098
  initEditor(_, editor) {
@@ -19116,6 +19113,8 @@ let DatoRichTextDirective = DatoRichTextDirective_1 = class DatoRichTextDirectiv
19116
19113
  target: this.host.nativeElement,
19117
19114
  width: this.width || 600,
19118
19115
  height: this.height || 300,
19116
+ force_br_newlines: true,
19117
+ force_p_newlines: false,
19119
19118
  resize: 'both',
19120
19119
  branding: false,
19121
19120
  inline: this.inline,
@@ -19123,12 +19122,10 @@ let DatoRichTextDirective = DatoRichTextDirective_1 = class DatoRichTextDirectiv
19123
19122
  readonly: this.disabled,
19124
19123
  plugins: this.plugins || this.defaultPlugins,
19125
19124
  toolbar: isNil(this.toolbar) ? this.defaultToolbar : this.toolbar,
19126
- font_size_formats: '8px 10px 12px 14px 18px 24px 36px',
19125
+ fontsize_formats: '8px 10px 12px 14px 18px 24px 36px',
19127
19126
  min_width: 480,
19128
19127
  menubar: false,
19129
19128
  autocomplete: this.autocompleteOptions,
19130
- suffix: '.min',
19131
- skin: 'tinymce-5',
19132
19129
  setup: editor => {
19133
19130
  this.editor = editor;
19134
19131
  editor.on('init', (e) => {
@@ -19196,9 +19193,9 @@ let DatoRichTextDirective = DatoRichTextDirective_1 = class DatoRichTextDirectiv
19196
19193
  };
19197
19194
  DatoRichTextDirective.ctorParameters = () => [
19198
19195
  { type: NgZone },
19199
- { type: RichTextService },
19200
- { type: undefined, decorators: [{ type: Inject, args: [DATO_CORE_CONFIG,] }] },
19201
- { type: ElementRef }
19196
+ { type: HttpClient },
19197
+ { type: ElementRef },
19198
+ { type: undefined, decorators: [{ type: Inject, args: [DATO_CORE_CONFIG,] }] }
19202
19199
  ];
19203
19200
  __decorate([
19204
19201
  Input(),
@@ -19264,9 +19261,10 @@ DatoRichTextDirective = DatoRichTextDirective_1 = __decorate([
19264
19261
  }
19265
19262
  ]
19266
19263
  }),
19267
- __param(2, Inject(DATO_CORE_CONFIG)),
19264
+ __param(3, Inject(DATO_CORE_CONFIG)),
19268
19265
  __metadata("design:paramtypes", [NgZone,
19269
- RichTextService, Object, ElementRef])
19266
+ HttpClient,
19267
+ ElementRef, Object])
19270
19268
  ], DatoRichTextDirective);
19271
19269
 
19272
19270
  /**
@@ -21547,9 +21545,7 @@ let DatoBreadcrumbsComponent = class DatoBreadcrumbsComponent {
21547
21545
  this._breadcrumbs = [...start, ...dots, ...end];
21548
21546
  }
21549
21547
  initEditableHeader() {
21550
- this.headerControl.valueChanges
21551
- .pipe(debounceTime(300), untilDestroyed(this))
21552
- .subscribe((res) => {
21548
+ this.headerControl.valueChanges.pipe(debounceTime(300), untilDestroyed(this)).subscribe((res) => {
21553
21549
  this.updateEditableText.emit(res);
21554
21550
  this.cdr.detectChanges();
21555
21551
  });
@@ -22814,7 +22810,7 @@ function fixNgLeaks() {
22814
22810
  };
22815
22811
  }
22816
22812
 
22817
- window.coreVersion = '22.10.7-rc.';
22813
+ window.coreVersion = '22.10.0';
22818
22814
 
22819
22815
  /**
22820
22816
  * @license
@@ -22828,5 +22824,5 @@ window.coreVersion = '22.10.7-rc.';
22828
22824
  * Generated bundle index. Do not edit.
22829
22825
  */
22830
22826
 
22831
- 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, 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, 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 };
22827
+ 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, 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, 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, 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 };
22832
22828
  //# sourceMappingURL=datorama-core.js.map