UNPKG

ucsc-xena-client

Version:

UCSC Xena Client. Functional genomics visualizations.

65 lines (46 loc) 1.9 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _ApplicationContainer = require('./ApplicationContainer'); var _ApplicationContainer2 = _interopRequireDefault(_ApplicationContainer); var _hubPage = require('../hubPage'); var _hubPage2 = _interopRequireDefault(_hubPage); var _Datapages = require('../Datapages'); var _Datapages2 = _interopRequireDefault(_Datapages); var _TranscriptPage = require('../transcript_views/TranscriptPage'); var _TranscriptPage2 = _interopRequireDefault(_TranscriptPage); var _reactHotLoader = require('react-hot-loader'); var _reactToolbox = require('react-toolbox'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } // react hot loader messes up class checks in react-toolbox. Override // the class checker in dev. function defaultChecker(classType, reactElement) { if (process.env.NODE_ENV !== 'production') { // https://github.com/gaearon/react-hot-loader/blob/v3.0.0-beta.7/docs/Known%20Limitations.md#checking-element-types classType = _react2.default.createElement(classType).type; // eslint-disable-line no-param-reassign } return reactElement && reactElement.type === classType; } (0, _reactToolbox.overrideComponentTypeChecker)(defaultChecker); var pages = { 'hub': _hubPage2.default, 'heatmap': _ApplicationContainer2.default, 'datapages': _Datapages2.default, 'transcripts': _TranscriptPage2.default }; var notFound = function notFound() { return _react2.default.createElement( 'p', null, 'Oops... can\'t find this page' ); }; var PageContainer = function PageContainer(props) { var page = props.state.page; var Page = pages[page] || notFound; return _react2.default.createElement(Page, props); }; exports.default = (0, _reactHotLoader.hot)(module)(PageContainer);