UNPKG

ucsc-xena-client

Version:

UCSC Xena Client. Functional genomics visualizations.

110 lines (74 loc) 3.89 kB
'use strict'; var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; //var Application = require('./containers/ApplicationContainer'); //import tiesController from './controllers/ties'; require('./base'); var _underscore_ext = require('./underscore_ext'); var _underscore_ext2 = _interopRequireDefault(_underscore_ext); require('./plotDenseMatrix'); require('./plotMutationVector'); require('./plotSegmented'); require('./plotSamples'); require('./refGeneExons'); require('./ChromPosition'); require('./models/denseMatrix'); require('./models/mutationVector'); require('./models/segmented'); require('bootstrap/dist/css/bootstrap.css'); var _ui = require('./controllers/ui'); var _ui2 = _interopRequireDefault(_ui); var _server = require('./controllers/server'); var _server2 = _interopRequireDefault(_server); var _hub = require('./controllers/hub'); var _hub2 = _interopRequireDefault(_hub); var _transcripts = require('./controllers/transcripts'); var _transcripts2 = _interopRequireDefault(_transcripts); var _PageContainer = require('./containers/PageContainer'); var _PageContainer2 = _interopRequireDefault(_PageContainer); var _appSelector = require('./appSelector'); var _appSelector2 = _interopRequireDefault(_appSelector); var _utils = require('./controllers/utils'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var connector = require('./connector'); var createStore = require('./store'); // Hot load controllers. Note that hot loading won't work if one of the methods // is captured in a closure or variable which we can't access. References to // the controller methods should only happen by dereferencing the module. That's // currently true of the controllers/compose method, so we are able to hot // load by overwritting the methods, here. However it's not true of devtools. // If we had a single controller (i.e. no call to compose), passing a single // controller to devtools would defeat the hot loading. Sol'n would be to // update devtools to always dereference the controller, rather than keeping // methods in closures. // Rx streams in components are also a problem. if (module.hot) { module.hot.accept('./controllers/ui', function () { var newModule = require('./controllers/ui'); _underscore_ext2.default.extend(_ui2.default, newModule); }); module.hot.accept('./controllers/server', function () { var newModule = require('./controllers/server'); _underscore_ext2.default.extend(_server2.default, newModule); }); module.hot.accept('./controllers/hub', function () { var newModule = require('./controllers/hub'); _underscore_ext2.default.extend(_hub2.default, newModule); }); module.hot.accept('./controllers/transcripts', function () { var newModule = require('./controllers/transcripts'); _underscore_ext2.default.extend(_transcripts2.default /*, tiesController*/, newModule); }); // module.hot.accept('./controllers/ties', () => { // let newModule = require('./controllers/ties'); // _.extend(tiesController, newModule); // }); // XXX Note that hot-loading these won't cause a re-render. module.hot.accept('./models/mutationVector', function () {}); module.hot.accept('./models/denseMatrix', function () {}); module.hot.accept('./models/segmented', function () {}); } var store = createStore(); var main = window.document.getElementById('main'); // XXX reducer var controller = (0, _utils.compose)(_server2.default, _ui2.default, _hub2.default, _transcripts2.default); connector(_extends({}, store, { controller: controller, main: main, selector: _appSelector2.default, Page: _PageContainer2.default, persist: true, history: false }));