aboutsummaryrefslogtreecommitdiff
path: root/plugins/base/search-component/src/main/js/search/app.js
blob: bceffa48251ad5bb766e648170fac16e03afb63a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import React from 'react';
import {render} from 'react-dom';
import RedBox from 'redbox-react';

import {AppRoot} from './app-root';
import './app.css';

const appEl = document.getElementById('searchBar');
const rootEl = document.createElement('div');

let renderApp = () => {
  render(
    <AppRoot/>,
    rootEl
  );
};

if (module.hot) {
  const renderAppHot = renderApp;
  const renderError = error => {
    render(
      <RedBox error={error}/>,
      rootEl
    );
  };

  renderApp = () => {
    try {
      renderAppHot();
    } catch (error) {
      renderError(error);
    }
  };

  module.hot.accept('./app-root', () => {
    setTimeout(renderApp);
  });
}

renderApp();
appEl.appendChild(rootEl);