@platform/react
Version:
React refs and helpers.
9 lines (8 loc) • 469 B
JavaScript
import { fromEvent as rxFromEvent, Subject } from 'rxjs';
import { share } from 'rxjs/operators';
import { is } from '@platform/util.is';
export const fromEvent = (source, event) => {
return source ? rxFromEvent(source, event).pipe(share()) : new Subject().pipe(share());
};
export const fromDocumentEvent = (event) => fromEvent(is.browser ? document : undefined, event);
export const fromWindowEvent = (event) => fromEvent(is.browser ? window : undefined, event);