@lifaon/rx-js-light
Version:
Blazing fast Observables
8 lines (7 loc) • 511 B
JavaScript
import {toTypedEventTarget} from "../../../../../../misc/event-listener/functions/to-typed-event-target.mjs";
import {mapObservable} from "../../../../../pipes/built-in/without-notifications/observer-pipe-related/map/map-observable.mjs";
import {fromEventTarget} from "../from-event-target/from-event-target.mjs";
export function fromMatchMedia(query) {
const mediaQueryList = matchMedia(query);
return mapObservable(fromEventTarget(toTypedEventTarget(mediaQueryList), 'change'), event => event.matches);
}