12 lines
617 B
JavaScript
12 lines
617 B
JavaScript
'use strict';
|
|
const isStream = require('is-stream');
|
|
|
|
// RxJS@6 symbol (https://github.com/sindresorhus/is-observable/issues/1#issuecomment-387843191)
|
|
const symbolObservable = typeof Symbol === 'function' && Symbol.observable || '@@observable'; // eslint-disable-line no-mixed-operators
|
|
|
|
const isObservable = obj => Boolean(obj && obj[symbolObservable] && obj === obj[symbolObservable]()) || require('is-observable')(obj);
|
|
|
|
exports.isListr = obj => Boolean(obj && obj.setRenderer && obj.add && obj.run);
|
|
exports.isObservable = obj => isObservable(obj);
|
|
exports.isStream = obj => isStream(obj) && !isObservable(obj);
|