import React from 'react'; import PropTypes from 'prop-types'; import Stream from '../tabs/stream/containers/Stream'; import Configure from '../tabs/configure/containers/Configure'; import Slot from 'coral-framework/components/Slot'; import { can } from 'coral-framework/services/perms'; import t from 'coral-framework/services/i18n'; import AutomaticAssetClosure from '../containers/AutomaticAssetClosure'; import ExtendableTabPanel from '../containers/ExtendableTabPanel'; import { Tab, TabPane } from 'coral-ui'; import Profile from '../tabs/profile/containers/Profile'; import Popup from 'coral-framework/components/Popup'; import IfSlotIsNotEmpty from 'coral-framework/components/IfSlotIsNotEmpty'; import cn from 'classnames'; export default class Embed extends React.Component { getTabs() { const tabs = [ {t('embed_comments_tab')} , {t('framework.my_profile')} , ]; if (can(this.props.currentUser, 'UPDATE_ASSET_CONFIG')) { tabs.push( {t('framework.configure_stream')} ); } return tabs; } render() { const { activeTab, setActiveTab, commentId, root, root: { asset }, data, showSignInDialog, signInDialogFocus, blurSignInDialog, focusSignInDialog, hideSignInDialog, parentUrl, } = this.props; const hasHighlightedComment = !!commentId; const popupUrl = `login?parentUrl=${encodeURIComponent(parentUrl)}`; const slotPassthrough = { root }; return (
, , , ]} />
); } } Embed.propTypes = { setActiveTab: PropTypes.func, currentUser: PropTypes.object, showSignInDialog: PropTypes.bool, signInDialogFocus: PropTypes.bool, blurSignInDialog: PropTypes.func, focusSignInDialog: PropTypes.func, hideSignInDialog: PropTypes.func, parentUrl: PropTypes.string, commentId: PropTypes.string, root: PropTypes.object, activeTab: PropTypes.string, data: PropTypes.object.isRequired, };