UNPKG

@progress/kendo-angular-grid

Version:

Kendo UI Grid for Angular - high performance data grid with paging, filtering, virtualization, CRUD, and more.

31 lines (30 loc) 1.52 kB
/**----------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the project root for more information *-------------------------------------------------------------------------------------------*/ import { EventEmitter, NgZone, Injectable } from '@angular/core'; import { take } from 'rxjs/operators'; import * as i0 from "@angular/core"; /** * @hidden */ export class ChangeNotificationService { ngZone; changes = new EventEmitter(); subscription; constructor(ngZone) { this.ngZone = ngZone; } notify() { if (!this.subscription || this.subscription.closed) { this.subscription = this.ngZone.onStable .asObservable().pipe(take(1)) .subscribe(() => this.changes.emit()); } } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChangeNotificationService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable }); static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChangeNotificationService }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChangeNotificationService, decorators: [{ type: Injectable }], ctorParameters: function () { return [{ type: i0.NgZone }]; } });