Sha256: 00bb59cf9002ae98bdbfa6ad03107dcd2d9abd816bc32a3f80873442322317f0

Contents?: true

Size: 1.08 KB

Versions: 1

Compression:

Stored size: 1.08 KB

Contents

import React        from 'react'; // eslint-disable-line no-unused-vars
import ReactDOM     from 'react-dom';
import whenDomReady from 'when-dom-ready';
import { delay } from 'lodash';
import { AppContainer } from 'react-hot-loader';
import { onBoot } from './models/pub_sub';
import './extensions/hippo';

const Workspace = require('hippo/workspace').default;

let Root;

function renderer(Body) {
    ReactDOM.render(<AppContainer><Body /></AppContainer>, Root);
}

if (module.hot) {
    module.hot.accept('hippo/workspace', () => {
        const WSNext = require('hippo/workspace').default; // eslint-disable-line global-require
        renderer(WSNext);
    });
}

whenDomReady().then(() => {
    if (Root) return;
    /* global document: true  */
    Root = document.getElementById('hippo-root');
    /* global document: false */
    renderer(Workspace);
    const loading = document.querySelector('.loading');
    if (loading) {
        loading.classList.add('complete');
        delay(() => {
            onBoot();
            loading.parentNode.removeChild(loading);

        }, 400);

    }
});

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
hippo-fw-0.9.5 client/hippo/boot.jsx