UNPKG

@neurosity/sdk

Version:
16 lines (15 loc) 672 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.whileOnline = void 0; const rxjs_1 = require("rxjs"); const operators_1 = require("rxjs/operators"); function whileOnline({ status$, allowWhileOnSleepMode }) { return (0, rxjs_1.pipe)((0, operators_1.withLatestFrom)(status$), (0, operators_1.mergeMap)(([value, status]) => shouldAllowMetrics(status, allowWhileOnSleepMode) ? (0, rxjs_1.of)(value) : rxjs_1.EMPTY)); } exports.whileOnline = whileOnline; function shouldAllowMetrics(status, allowWhileOnSleepMode) { return (status.state === "online" && (allowWhileOnSleepMode ? true : !status.sleepMode)); }