Sha256: 2be113eef800c0259fe684a30c9585f5a196902640e7cb6ae07f40b48b59a20c
Contents?: true
Size: 1.19 KB
Versions: 3
Compression:
Stored size: 1.19 KB
Contents
import React from 'react'; import ReactDOM from 'react-dom'; import whenDomReady from 'when-dom-ready'; import { delay } from 'lodash' import { AppContainer } from 'react-hot-loader'; import { withAsyncComponents } from 'react-async-component'; import Config from './config'; const Workspace = require('lanes/workspace').default; let Root; let App; function renderer(Body) { withAsyncComponents(<AppContainer><Body /></AppContainer>) .then((result) => { App = result.appWithAsyncComponents; ReactDOM.render(App, Root); }); } if (module.hot) { module.hot.accept('lanes/workspace', () => { const WSNext = require('lanes/workspace').default; renderer(WSNext); }); } whenDomReady().then(() => { if (Root) return; /* global document: true */ Root = document.getElementById('lanes-root'); Config.bootstrap(JSON.parse(document.getElementById('bootstrap-data').innerHTML)); /* global document: false */ renderer(Workspace); const loading = document.querySelector('.loading'); if (loading) { loading.classList.add('complete'); delay(() => loading.parentNode.removeChild(loading), 400); } });
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
lanes-0.8.2 | client/lanes/boot.jsx |
lanes-0.8.1 | client/lanes/boot.jsx |
lanes-0.8.0 | client/lanes/boot.jsx |