UNPKG

opentok-react-incode

Version:
70 lines (54 loc) 1.83 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = OTStreams; var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _propTypes = require('prop-types'); var _propTypes2 = _interopRequireDefault(_propTypes); var _OTSubscriberContext = require('./OTSubscriberContext'); var _OTSubscriberContext2 = _interopRequireDefault(_OTSubscriberContext); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function OTStreams(props, context) { var session = props.session || context.session || null; var streams = props.streams || context.streams || null; if (!session) { return null; } var child = _react.Children.only(props.children); console.log(props.loading, 'uwu'); var childrenWithContextWrapper = Array.isArray(streams) && streams.length > 0 ? streams.map(function (stream) { return _react2.default.createElement( _OTSubscriberContext2.default, { stream: stream, key: stream.id }, (0, _react.cloneElement)(child) ); }) : props.loading; return _react2.default.createElement( _react.Fragment, null, childrenWithContextWrapper ); } OTStreams.propTypes = { children: _propTypes2.default.element.isRequired, session: _propTypes2.default.shape({ publish: _propTypes2.default.func, subscribe: _propTypes2.default.func }), streams: _propTypes2.default.arrayOf(_propTypes2.default.object) }; OTStreams.defaultProps = { session: null, streams: null, loading: null }; OTStreams.contextTypes = { session: _propTypes2.default.shape({ publish: _propTypes2.default.func, subscribe: _propTypes2.default.func }), streams: _propTypes2.default.arrayOf(_propTypes2.default.object), loading: _propTypes2.default.element };