You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

32 lines
886 B

import * as React from "react";
import * as ReactDOM from "react-dom";
import { AppContainer } from "react-hot-loader";
import App from "./components/App";
import { MqttApiClient } from "./mqtt";
import { Message, UiStore } from "./ui";
const client = new MqttApiClient();
client.start();
const device = client.getDevice("grinklers");
const uiStore = new UiStore();
uiStore.addMessage(new Message("asdf", "boo!", Message.Type.Error));
const rootElem = document.getElementById("app");
const doRender = (Component: typeof App) => {
ReactDOM.render((
<AppContainer>
<Component device={device} uiStore={uiStore} />
</AppContainer>
), rootElem);
};
doRender(App);
if (module.hot) {
module.hot.accept("./components/App", () => {
const NextApp = require<any>("./components/App").default as typeof App;
doRender(NextApp);
});
}