2018-05-23 04:06:37 +02:00
"use strict" ;
Object . defineProperty ( exports , "__esModule" , {
value : true
} ) ;
exports . default = void 0 ;
var _react = _interopRequireDefault ( require ( "react" ) ) ;
var _reactRouterDom = require ( "react-router-dom" ) ;
var _NavBarChannelOptionsDropdown = _interopRequireDefault ( require ( "@components/NavBarChannelOptionsDropdown" ) ) ;
function _interopRequireDefault ( obj ) { return obj && obj . _ _esModule ? obj : { default : obj } ; }
function _typeof ( obj ) { if ( typeof Symbol === "function" && typeof Symbol . iterator === "symbol" ) { _typeof = function _typeof ( obj ) { return typeof obj ; } ; } else { _typeof = function _typeof ( obj ) { return obj && typeof Symbol === "function" && obj . constructor === Symbol && obj !== Symbol . prototype ? "symbol" : typeof obj ; } ; } return _typeof ( obj ) ; }
function _classCallCheck ( instance , Constructor ) { if ( ! ( instance instanceof Constructor ) ) { throw new TypeError ( "Cannot call a class as a function" ) ; } }
function _inherits ( subClass , superClass ) { if ( typeof superClass !== "function" && superClass !== null ) { throw new TypeError ( "Super expression must either be null or a function" ) ; } _setPrototypeOf ( subClass . prototype , superClass && superClass . prototype ) ; if ( superClass ) _setPrototypeOf ( subClass , superClass ) ; }
function _setPrototypeOf ( o , p ) { _setPrototypeOf = Object . setPrototypeOf || function _setPrototypeOf ( o , p ) { o . _ _proto _ _ = p ; return o ; } ; return _setPrototypeOf ( o , p ) ; }
function _defineProperties ( target , props ) { for ( var i = 0 ; i < props . length ; i ++ ) { var descriptor = props [ i ] ; descriptor . enumerable = descriptor . enumerable || false ; descriptor . configurable = true ; if ( "value" in descriptor ) descriptor . writable = true ; Object . defineProperty ( target , descriptor . key , descriptor ) ; } }
function _createClass ( Constructor , protoProps , staticProps ) { if ( protoProps ) _defineProperties ( Constructor . prototype , protoProps ) ; if ( staticProps ) _defineProperties ( Constructor , staticProps ) ; return Constructor ; }
function _possibleConstructorReturn ( self , call ) { if ( call && ( _typeof ( call ) === "object" || typeof call === "function" ) ) { return call ; } return _assertThisInitialized ( self ) ; }
function _getPrototypeOf ( o ) { _getPrototypeOf = Object . getPrototypeOf || function _getPrototypeOf ( o ) { return o . _ _proto _ _ ; } ; return _getPrototypeOf ( o ) ; }
function _assertThisInitialized ( self ) { if ( self === void 0 ) { throw new ReferenceError ( "this hasn't been initialised - super() hasn't been called" ) ; } return self ; }
var VIEW = 'VIEW' ;
var LOGOUT = 'LOGOUT' ;
2018-06-03 05:58:54 +02:00
var NavigationLinks =
2018-05-23 04:06:37 +02:00
/*#__PURE__*/
function ( _React$Component ) {
2018-06-03 05:58:54 +02:00
function NavigationLinks ( props ) {
2018-05-23 04:06:37 +02:00
var _this ;
2018-06-03 05:58:54 +02:00
_classCallCheck ( this , NavigationLinks ) ;
2018-05-23 04:06:37 +02:00
2018-06-03 05:58:54 +02:00
_this = _possibleConstructorReturn ( this , _getPrototypeOf ( NavigationLinks ) . call ( this , props ) ) ;
2018-05-23 04:06:37 +02:00
_this . handleSelection = _this . handleSelection . bind ( _assertThisInitialized ( _assertThisInitialized ( _this ) ) ) ;
return _this ;
}
2018-06-03 05:58:54 +02:00
_createClass ( NavigationLinks , [ {
2018-05-23 04:06:37 +02:00
key : "componentDidMount" ,
value : function componentDidMount ( ) {
this . props . checkForLoggedInChannel ( ) ;
}
} , {
key : "handleSelection" ,
value : function handleSelection ( event ) {
var value = event . target . selectedOptions [ 0 ] . value ;
switch ( value ) {
case LOGOUT :
this . props . logOutChannel ( ) ;
break ;
case VIEW :
// redirect to channel page
this . props . history . push ( "/" . concat ( this . props . channelName , ":" ) . concat ( this . props . channelLongId ) ) ;
break ;
default :
break ;
}
}
} , {
key : "render" ,
value : function render ( ) {
return _react . default . createElement ( "div" , {
2018-06-03 05:58:54 +02:00
className : "navigation-links"
2018-05-23 04:06:37 +02:00
} , _react . default . createElement ( _reactRouterDom . NavLink , {
className : "nav-bar-link link--nav" ,
activeClassName : "link--nav-active" ,
to : "/" ,
exact : true
} , "Publish" ) , _react . default . createElement ( _reactRouterDom . NavLink , {
className : "nav-bar-link link--nav" ,
activeClassName : "link--nav-active" ,
to : "/about"
} , "About" ) , this . props . channelName ? _react . default . createElement ( _NavBarChannelOptionsDropdown . default , {
channelName : this . props . channelName ,
handleSelection : this . handleSelection ,
defaultSelection : this . props . channelName ,
VIEW : VIEW ,
LOGOUT : LOGOUT
} ) : _react . default . createElement ( _reactRouterDom . NavLink , {
id : "nav-bar-login-link" ,
className : "nav-bar-link link--nav" ,
activeClassName : "link--nav-active" ,
to : "/login"
2018-06-03 05:58:54 +02:00
} , "Channel" ) ) ;
2018-05-23 04:06:37 +02:00
}
} ] ) ;
2018-06-03 05:58:54 +02:00
_inherits ( NavigationLinks , _React$Component ) ;
2018-05-23 04:06:37 +02:00
2018-06-03 05:58:54 +02:00
return NavigationLinks ;
2018-05-23 04:06:37 +02:00
} ( _react . default . Component ) ;
2018-06-03 05:58:54 +02:00
var _default = ( 0 , _reactRouterDom . withRouter ) ( NavigationLinks ) ;
2018-05-23 04:06:37 +02:00
exports . default = _default ;