@datorama/core 22.11.1 → 22.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -46,6 +46,9 @@ var DatoTriggerSingle = /** @class */ (function () {
46
46
  enumerable: true,
47
47
  configurable: true
48
48
  });
49
+ DatoTriggerSingle.prototype.triggerChangeDetection = function () {
50
+ this.cdr.detectChanges();
51
+ };
49
52
  DatoTriggerSingle.ctorParameters = function () { return [
50
53
  { type: ChangeDetectorRef }
51
54
  ]; };
@@ -83,4 +86,4 @@ var DatoTriggerSingle = /** @class */ (function () {
83
86
  return DatoTriggerSingle;
84
87
  }());
85
88
  export { DatoTriggerSingle };
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJpZ2dlci1zaW5nbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGRhdG9yYW1hL2NvcmUvIiwic291cmNlcyI6WyJsaWIvc2VsZWN0L3RyaWdnZXItc2luZ2xlL3RyaWdnZXItc2luZ2xlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7O0FBRUgsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsSCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQVF2RTtJQTJCRSwyQkFBb0IsR0FBc0I7UUFBdEIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFIMUMsaUJBQVksR0FBRyxFQUFFLENBQUM7SUFHMkIsQ0FBQztJQXBCOUMsc0JBQUksMENBQVc7YUFBZixVQUFnQixLQUFLO1lBQ25CLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1lBQzFCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDM0IsQ0FBQzs7O09BQUE7SUFLRCxzQkFBSSxzQ0FBTzthQUFYLFVBQVksS0FBSztZQUNmLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFDbkMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMzQixDQUFDOzs7T0FBQTtJQUVELHNCQUFJLDhDQUFlO2FBQW5CO1lBQ0UsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQztRQUNoRCxDQUFDOzs7T0FBQTtJQU9ELG9DQUFRLEdBQVI7UUFDRSxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxzQkFBSSx1Q0FBUTthQUFaO1lBQ0UsT0FBTyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN0RixDQUFDOzs7T0FBQTs7Z0JBUndCLGlCQUFpQjs7SUF6QjFDO1FBREMsS0FBSyxFQUFFO2tDQUNTLFdBQVc7OERBQU07SUFFekI7UUFBUixLQUFLLEVBQUU7a0NBQVMseUJBQXlCO3FEQUFDO0lBRzNDO1FBREMsS0FBSyxFQUFFOzs7d0RBSVA7SUFFUTtRQUFSLEtBQUssRUFBRTs7dURBQWtCO0lBRzFCO1FBREMsS0FBSyxFQUFFOzs7b0RBSVA7SUFsQlUsaUJBQWlCO1FBTjdCLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxxQkFBcUI7WUFDL0IsNmhCQUE4QztZQUM5QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7U0FFaEQsQ0FBQzt5Q0E0QnlCLGlCQUFpQjtPQTNCL0IsaUJBQWlCLENBb0M3QjtJQUFELHdCQUFDO0NBQUEsQUFwQ0QsSUFvQ0M7U0FwQ1ksaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IERhdG9yYW1hLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIEFwYWNoZSBMaWNlbnNlIDIuMCBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS9kYXRvcmFtYS9jbGllbnQtY29yZS9ibG9iL21hc3Rlci9MSUNFTlNFXG4gKi9cblxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRvU2VsZWN0QWN0aXZlRGlyZWN0aXZlIH0gZnJvbSAnLi4vc2VsZWN0LWFjdGl2ZS5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkYXRvLXRyaWdnZXItc2luZ2xlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RyaWdnZXItc2luZ2xlLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0eWxlVXJsczogW2AuL3RyaWdnZXItc2luZ2xlLmNvbXBvbmVudC5zY3NzYF1cbn0pXG5leHBvcnQgY2xhc3MgRGF0b1RyaWdnZXJTaW5nbGUgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKVxuICBsb2FkaW5nVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQElucHV0KCkgYWN0aXZlOiBEYXRvU2VsZWN0QWN0aXZlRGlyZWN0aXZlO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBwbGFjZWhvbGRlcih2YWx1ZSkge1xuICAgIHRoaXMuX3BsYWNlaG9sZGVyID0gdmFsdWU7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgQElucHV0KCkgbGFiZWxLZXk6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBzZXQgY29udGV4dCh2YWx1ZSkge1xuICAgIHRoaXMuX21vZGVsID0geyAkaW1wbGljaXQ6IHZhbHVlIH07XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgZ2V0IGhpZGVQbGFjZWhvbGRlcigpIHtcbiAgICByZXR1cm4gIXRoaXMuX21vZGVsIHx8ICF0aGlzLl9tb2RlbC4kaW1wbGljaXQ7XG4gIH1cblxuICBfcGxhY2Vob2xkZXIgPSAnJztcbiAgX21vZGVsOiB7ICRpbXBsaWNpdD86IGFueSB9O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmNkci5kZXRhY2goKTtcbiAgfVxuXG4gIGdldCBnZXRMYWJlbCgpIHtcbiAgICByZXR1cm4gdGhpcy5fbW9kZWwgJiYgdGhpcy5fbW9kZWwuJGltcGxpY2l0ICYmIHRoaXMuX21vZGVsLiRpbXBsaWNpdFt0aGlzLmxhYmVsS2V5XTtcbiAgfVxufVxuIl19
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJpZ2dlci1zaW5nbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGRhdG9yYW1hL2NvcmUvIiwic291cmNlcyI6WyJsaWIvc2VsZWN0L3RyaWdnZXItc2luZ2xlL3RyaWdnZXItc2luZ2xlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7O0FBRUgsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsSCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQVF2RTtJQTJCRSwyQkFBb0IsR0FBc0I7UUFBdEIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFIMUMsaUJBQVksR0FBRyxFQUFFLENBQUM7SUFHMkIsQ0FBQztJQXBCOUMsc0JBQUksMENBQVc7YUFBZixVQUFnQixLQUFLO1lBQ25CLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1lBQzFCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDM0IsQ0FBQzs7O09BQUE7SUFLRCxzQkFBSSxzQ0FBTzthQUFYLFVBQVksS0FBSztZQUNmLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFDbkMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMzQixDQUFDOzs7T0FBQTtJQUVELHNCQUFJLDhDQUFlO2FBQW5CO1lBQ0UsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQztRQUNoRCxDQUFDOzs7T0FBQTtJQU9ELG9DQUFRLEdBQVI7UUFDRSxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxzQkFBSSx1Q0FBUTthQUFaO1lBQ0UsT0FBTyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN0RixDQUFDOzs7T0FBQTtJQUVNLGtEQUFzQixHQUE3QjtRQUNFLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7Z0JBWndCLGlCQUFpQjs7SUF6QjFDO1FBREMsS0FBSyxFQUFFO2tDQUNTLFdBQVc7OERBQU07SUFFekI7UUFBUixLQUFLLEVBQUU7a0NBQVMseUJBQXlCO3FEQUFDO0lBRzNDO1FBREMsS0FBSyxFQUFFOzs7d0RBSVA7SUFFUTtRQUFSLEtBQUssRUFBRTs7dURBQWtCO0lBRzFCO1FBREMsS0FBSyxFQUFFOzs7b0RBSVA7SUFsQlUsaUJBQWlCO1FBTjdCLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxxQkFBcUI7WUFDL0IsNmhCQUE4QztZQUM5QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7U0FFaEQsQ0FBQzt5Q0E0QnlCLGlCQUFpQjtPQTNCL0IsaUJBQWlCLENBd0M3QjtJQUFELHdCQUFDO0NBQUEsQUF4Q0QsSUF3Q0M7U0F4Q1ksaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IERhdG9yYW1hLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIEFwYWNoZSBMaWNlbnNlIDIuMCBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS9kYXRvcmFtYS9jbGllbnQtY29yZS9ibG9iL21hc3Rlci9MSUNFTlNFXG4gKi9cblxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRvU2VsZWN0QWN0aXZlRGlyZWN0aXZlIH0gZnJvbSAnLi4vc2VsZWN0LWFjdGl2ZS5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkYXRvLXRyaWdnZXItc2luZ2xlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RyaWdnZXItc2luZ2xlLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0eWxlVXJsczogW2AuL3RyaWdnZXItc2luZ2xlLmNvbXBvbmVudC5zY3NzYF1cbn0pXG5leHBvcnQgY2xhc3MgRGF0b1RyaWdnZXJTaW5nbGUgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKVxuICBsb2FkaW5nVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQElucHV0KCkgYWN0aXZlOiBEYXRvU2VsZWN0QWN0aXZlRGlyZWN0aXZlO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBwbGFjZWhvbGRlcih2YWx1ZSkge1xuICAgIHRoaXMuX3BsYWNlaG9sZGVyID0gdmFsdWU7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgQElucHV0KCkgbGFiZWxLZXk6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBzZXQgY29udGV4dCh2YWx1ZSkge1xuICAgIHRoaXMuX21vZGVsID0geyAkaW1wbGljaXQ6IHZhbHVlIH07XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgZ2V0IGhpZGVQbGFjZWhvbGRlcigpIHtcbiAgICByZXR1cm4gIXRoaXMuX21vZGVsIHx8ICF0aGlzLl9tb2RlbC4kaW1wbGljaXQ7XG4gIH1cblxuICBfcGxhY2Vob2xkZXIgPSAnJztcbiAgX21vZGVsOiB7ICRpbXBsaWNpdD86IGFueSB9O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmNkci5kZXRhY2goKTtcbiAgfVxuXG4gIGdldCBnZXRMYWJlbCgpIHtcbiAgICByZXR1cm4gdGhpcy5fbW9kZWwgJiYgdGhpcy5fbW9kZWwuJGltcGxpY2l0ICYmIHRoaXMuX21vZGVsLiRpbXBsaWNpdFt0aGlzLmxhYmVsS2V5XTtcbiAgfVxuXG4gIHB1YmxpYyB0cmlnZ2VyQ2hhbmdlRGV0ZWN0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxufVxuIl19
@@ -1,2 +1,2 @@
1
- window.coreVersion = '22.11.1';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BkYXRvcmFtYS9jb3JlLyIsInNvdXJjZXMiOlsibGliL3ZlcnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUMsTUFBYyxDQUFDLFdBQVcsR0FBRyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIod2luZG93IGFzIGFueSkuY29yZVZlcnNpb24gPSAnMjIuMTEuMSc7XG4iXX0=
1
+ window.coreVersion = '22.12.0';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BkYXRvcmFtYS9jb3JlLyIsInNvdXJjZXMiOlsibGliL3ZlcnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUMsTUFBYyxDQUFDLFdBQVcsR0FBRyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIod2luZG93IGFzIGFueSkuY29yZVZlcnNpb24gPSAnMjIuMTIuMCc7XG4iXX0=
@@ -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.
@@ -8057,6 +8125,9 @@ let DatoSelectComponent = class DatoSelectComponent extends BaseCustomControl {
8057
8125
  setTimeout(() => this.datoOverlay.scheduleUpdate(), 0);
8058
8126
  }
8059
8127
  }
8128
+ triggerChangeDetectionInDatoSingle() {
8129
+ this.datoTriggerSingle.triggerChangeDetection();
8130
+ }
8060
8131
  };
8061
8132
  DatoSelectComponent.ctorParameters = () => [
8062
8133
  { type: ChangeDetectorRef },
@@ -8067,6 +8138,10 @@ DatoSelectComponent.ctorParameters = () => [
8067
8138
  { type: undefined, decorators: [{ type: Attribute, args: ['datoSize',] }] },
8068
8139
  { type: String, decorators: [{ type: Attribute, args: ['width',] }] }
8069
8140
  ];
8141
+ __decorate([
8142
+ ViewChild('datoTriggerSingle'),
8143
+ __metadata("design:type", DatoTriggerSingle)
8144
+ ], DatoSelectComponent.prototype, "datoTriggerSingle", void 0);
8070
8145
  __decorate([
8071
8146
  ViewChild('dropdown'),
8072
8147
  __metadata("design:type", TemplateRef)
@@ -8233,7 +8308,7 @@ __decorate([
8233
8308
  DatoSelectComponent = __decorate([
8234
8309
  Component({
8235
8310
  selector: 'dato-select',
8236
- 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",
8237
8312
  preserveWhitespaces: false,
8238
8313
  providers: [valueAccessor$3, DatoOverlay],
8239
8314
  encapsulation: ViewEncapsulation.None,
@@ -8249,71 +8324,6 @@ DatoSelectComponent = __decorate([
8249
8324
  DatoOverlay, Object, Object, String])
8250
8325
  ], DatoSelectComponent);
8251
8326
 
8252
- /**
8253
- * @license
8254
- * Copyright Datorama. All Rights Reserved.
8255
- *
8256
- * Use of this source code is governed by an Apache License 2.0 license that can be
8257
- * found in the LICENSE file at https://github.com/datorama/client-core/blob/master/LICENSE
8258
- */
8259
- let DatoTriggerSingle = class DatoTriggerSingle {
8260
- constructor(cdr) {
8261
- this.cdr = cdr;
8262
- this._placeholder = '';
8263
- }
8264
- set placeholder(value) {
8265
- this._placeholder = value;
8266
- this.cdr.detectChanges();
8267
- }
8268
- set context(value) {
8269
- this._model = { $implicit: value };
8270
- this.cdr.detectChanges();
8271
- }
8272
- get hidePlaceholder() {
8273
- return !this._model || !this._model.$implicit;
8274
- }
8275
- ngOnInit() {
8276
- this.cdr.detach();
8277
- }
8278
- get getLabel() {
8279
- return this._model && this._model.$implicit && this._model.$implicit[this.labelKey];
8280
- }
8281
- };
8282
- DatoTriggerSingle.ctorParameters = () => [
8283
- { type: ChangeDetectorRef }
8284
- ];
8285
- __decorate([
8286
- Input(),
8287
- __metadata("design:type", TemplateRef)
8288
- ], DatoTriggerSingle.prototype, "loadingTemplate", void 0);
8289
- __decorate([
8290
- Input(),
8291
- __metadata("design:type", DatoSelectActiveDirective)
8292
- ], DatoTriggerSingle.prototype, "active", void 0);
8293
- __decorate([
8294
- Input(),
8295
- __metadata("design:type", Object),
8296
- __metadata("design:paramtypes", [Object])
8297
- ], DatoTriggerSingle.prototype, "placeholder", null);
8298
- __decorate([
8299
- Input(),
8300
- __metadata("design:type", String)
8301
- ], DatoTriggerSingle.prototype, "labelKey", void 0);
8302
- __decorate([
8303
- Input(),
8304
- __metadata("design:type", Object),
8305
- __metadata("design:paramtypes", [Object])
8306
- ], DatoTriggerSingle.prototype, "context", null);
8307
- DatoTriggerSingle = __decorate([
8308
- Component({
8309
- selector: 'dato-trigger-single',
8310
- 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",
8311
- changeDetection: ChangeDetectionStrategy.OnPush,
8312
- 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}"]
8313
- }),
8314
- __metadata("design:paramtypes", [ChangeDetectorRef])
8315
- ], DatoTriggerSingle);
8316
-
8317
8327
  /**
8318
8328
  * @license
8319
8329
  * Copyright Datorama. All Rights Reserved.
@@ -10054,6 +10064,8 @@ let GridQuery = class GridQuery extends Query {
10054
10064
  //@internal
10055
10065
  this._serverDataLoaded = new Subject();
10056
10066
  this.serverDataLoaded$ = this._serverDataLoaded.asObservable();
10067
+ this._rowActionVisibilityChanged = new Subject();
10068
+ this.rowActionVisibilityChanged$ = this._rowActionVisibilityChanged.asObservable();
10057
10069
  this.rowDataChanged$ = this.waitForGrid(() => merge$1(this.gridRef.rowDataChanged, this.gridRef.rowDataUpdated, this.gridRef.filterChanged, this.serverDataLoaded$));
10058
10070
  this.selectedRowsChange$ = this.waitForGrid(() => fromEvent(this.api.grid, Events.EVENT_SELECTION_CHANGED).pipe(map$1(({ api }) => api.getSelectedRows())));
10059
10071
  this.rowsSelectionData$ = this.waitForGrid(() => {
@@ -13334,6 +13346,9 @@ let GridService = class GridService {
13334
13346
  this.setServerSidePagination({ selectAllRowsEnabled: false, excludedFromSelectAll: [] });
13335
13347
  }
13336
13348
  }
13349
+ resolveRowActionsVisibility() {
13350
+ this.gridQuery._rowActionVisibilityChanged.next();
13351
+ }
13337
13352
  /**
13338
13353
  * When pivoting,
13339
13354
  * we add the field name to the column header class in order to access it through the auto generated pivot column.
@@ -14957,7 +14972,7 @@ let DatoGridV2ToolbarComponent = class DatoGridV2ToolbarComponent {
14957
14972
  return this.gridController.gridQuery.api;
14958
14973
  }
14959
14974
  ngOnInit() {
14960
- const dataChanges = this.gridController.gridQuery.waitForGrid(() => merge$1(this.gridQuery.gridRef.cellValueChanged, this.gridQuery.gridRef.rowDataUpdated).pipe(debounceTime(100), untilDestroyed(this)));
14975
+ const dataChanges = this.gridController.gridQuery.waitForGrid(() => merge$1(this.gridQuery.gridRef.cellValueChanged, this.gridQuery.gridRef.rowDataUpdated, this.gridQuery.rowActionVisibilityChanged$).pipe(debounceTime(100), untilDestroyed(this)));
14961
14976
  const gridInit = this.gridQuery.gridReady$.pipe(take(1));
14962
14977
  gridInit.pipe(untilDestroyed(this)).subscribe(() => {
14963
14978
  this.groupsAllowed = !this.hideGrouping && !this.gridQuery.getValue().serverSidePagination.enabled;
@@ -22836,7 +22851,7 @@ function fixNgLeaks() {
22836
22851
  };
22837
22852
  }
22838
22853
 
22839
- window.coreVersion = '22.11.1';
22854
+ window.coreVersion = '22.12.0';
22840
22855
 
22841
22856
  /**
22842
22857
  * @license