UNPKG

@hxui/angular

Version:

An Angular library based on the [HXUI design system](https://hxui.io).

20 lines 2.83 kB
import { Injectable } from '@angular/core'; import { fromEvent, merge } from 'rxjs'; import { map } from "rxjs/operators"; import * as i0 from "@angular/core"; export class OnlineStatusService { constructor() { this.online$ = fromEvent(window, 'online'); this.offline$ = fromEvent(window, 'offline'); this.isOnline$ = merge(this.online$, this.offline$).pipe(map(ev => ev.type === 'online')); } } OnlineStatusService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: OnlineStatusService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); OnlineStatusService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: OnlineStatusService, providedIn: 'root' }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: OnlineStatusService, decorators: [{ type: Injectable, args: [{ providedIn: 'root' }] }], ctorParameters: function () { return []; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25saW5lLXN0YXR1cy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaHgtdWkvc3JjL2xpYi91dGlscy9zZXJ2aWNlcy9vbmxpbmUtc3RhdHVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWEsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNsRCxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7O0FBS25DLE1BQU0sT0FBTyxtQkFBbUI7SUFNOUI7UUFKTyxZQUFPLEdBQXNCLFNBQVMsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDekQsYUFBUSxHQUFzQixTQUFTLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQzNELGNBQVMsR0FBd0IsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFFakcsQ0FBQzs7aUhBTk4sbUJBQW1CO3FIQUFuQixtQkFBbUIsY0FGbEIsTUFBTTs0RkFFUCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge09ic2VydmFibGUsIGZyb21FdmVudCwgbWVyZ2V9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge21hcH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBPbmxpbmVTdGF0dXNTZXJ2aWNlIHtcclxuXHJcbiAgcHVibGljIG9ubGluZSQ6IE9ic2VydmFibGU8RXZlbnQ+ID0gZnJvbUV2ZW50KHdpbmRvdywgJ29ubGluZScpO1xyXG4gIHB1YmxpYyBvZmZsaW5lJDogT2JzZXJ2YWJsZTxFdmVudD4gPSBmcm9tRXZlbnQod2luZG93LCAnb2ZmbGluZScpO1xyXG4gIHB1YmxpYyBpc09ubGluZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSBtZXJnZSh0aGlzLm9ubGluZSQsIHRoaXMub2ZmbGluZSQpLnBpcGUobWFwKGV2ID0+IGV2LnR5cGUgPT09ICdvbmxpbmUnKSk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcbn1cclxuIl19